• 09-09-2010, 12:02:14
    #1
    function clean_seo_text( $text, $slash=true ) {
        $entities_match        = array(' ','--','&quot;','!','@','#','%','^','&','*','_','(',')','+','{','}','|',':','"','<','>','?','[',']','\\',';',"'",',','.','/','*','+','~','`','=');
        $entities_replace   = array('-','-','','','','','','','','','','','','','','','','','','','','','','','','');
    $clean_text             = str_replace($entities_match, $entities_replace, $text);
    //        $clean_text         = preg_replace('/[^a-zA-Z0-9\-]/', '', $clean_text);
        if ( $clean_text != '' )
            $slash              = ( $slash ) ? '/' : NULL;
        
        return $slash . $clean_text;
    }
    orjinali bu şekilde ben
    function clean_seo_text( $text, $slash=true ) {
        $entities_match        = array(' ','--','&quot;','!','@','#','%','^','&','*','_','(',')','+','{','}','|',':','"','<','>','?','[',']','\\',';',"'",',','.','/','*','+','~','`','=');
        $entities_replace   = array('-','-','','','','','','','','','','','','','','','','','','','','','','','','');
        $string  = strtr($string, "ŞsÜüÖöĞğıÇç", "ssuuooggicc"); 
    $clean_text             = str_replace($entities_match, $entities_replace, $text, $string);
    //        $clean_text         = preg_replace('/[^a-zA-Z0-9\-]/', '', $clean_text);
        if ( $clean_text != '' )
            $slash              = ( $slash ) ? '/' : NULL;
        
        return $slash . $clean_text;
    }
    bu şekilde değiştirdim fakat çözülmedi yardımcı olabilecek var mı?
  • 09-09-2010, 12:10:38
    #2
    hhy89 Arkadas r10 kutuphanesınde vermıs belkı ısıne yarar

    function karaktertemizle($deger) {
        $gecerliler=",q,w,e,r,t,y,u,i,o,p,a,s,d,f,g,h,j,k,l,z,x,c,v,b,n,m,0,1,2,3,4,5,6,7,8,9,_,";
        if (!empty($deger)) {
            $deger=trim(strtolower ($deger));
    
    // turkish characters
            $deger=ereg_replace(" ","_",$deger);
            $deger=ereg_replace("ğ","g",$deger);
            $deger=ereg_replace("ü","u",$deger);
            $deger=ereg_replace("ş","s",$deger);
            $deger=ereg_replace("ı","i",$deger);
            $deger=ereg_replace("ç","c",$deger);
            $deger=ereg_replace("ö","o",$deger);
            $deger=ereg_replace("Ğ","g",$deger);
            $deger=ereg_replace("Ü","u",$deger);
            $deger=ereg_replace("Ş","s",$deger);
            $deger=ereg_replace("Ç","c",$deger);
            $deger=ereg_replace("Ö","o",$deger);
            $deger=ereg_replace("İ","i",$deger);
            $deger=ereg_replace("305","i",$deger);
            $deger=ereg_replace("214","o",$deger);
            $deger=ereg_replace("246","o",$deger);
            $deger=ereg_replace("252","u",$deger);
            $deger=ereg_replace("231","c",$deger);
            $deger=ereg_replace("199","c",$deger);
            $deger=ereg_replace("220","u",$deger);
            $deger=ereg_replace("304","i",$deger);
            $deger=ereg_replace("287","g",$deger);
            $deger=ereg_replace("351","s",$deger);
            $deger=ereg_replace("286","g",$deger);
            $deger=ereg_replace("350","s",$deger);
            $deger=ereg_replace("8217","",$deger);
            $deger=ereg_replace("8216","",$deger);
            $deger=ereg_replace("amp","",$deger);
            $deger=ereg_replace("ynt","",$deger);
    
    // utf 8 turkish
            $deger=ereg_replace("İ","i",$deger);
            $deger=ereg_replace("Ö","o",$deger);
            $deger=ereg_replace("ö","o",$deger);
            $deger=ereg_replace("Ü","u",$deger);
            $deger=ereg_replace("Ç","c",$deger);
            $deger=ereg_replace("ç","c",$deger);
            $deger=ereg_replace("ü","u",$deger);
            $deger=ereg_replace("ı","i",$deger);
            $deger=ereg_replace("ÄŸ","g",$deger);
            $deger=ereg_replace("ÅŸ","s",$deger);
            $deger=ereg_replace("Äž","g",$deger);
            $deger=ereg_replace("Åž","s",$deger);
    /*
    // windows sunucular icin
            $deger=ereg_replace("%c4%b1","i",$deger);
            $deger=ereg_replace("%c3%b6","o",$deger);
            $deger=ereg_replace("%c3%96","o",$deger);
            $deger=ereg_replace("%c3%bc","u",$deger);
            $deger=ereg_replace("%c3%a7","c",$deger);
            $deger=ereg_replace("%c3%87","c",$deger);
            $deger=ereg_replace("%c3%9c","u",$deger);
            $deger=ereg_replace("%c4%b0","i",$deger);
            $deger=ereg_replace("%c4%9f","g",$deger);
            $deger=ereg_replace("%c5%9f","s",$deger);
            $deger=ereg_replace("%c4%9e","g",$deger);
            $deger=ereg_replace("%c5%9e","s",$deger);
    */
    
            $yeni="";
            for ($i=1; $i<=strlen($deger); $i++) {
                if (strpos($gecerliler,"," . substr($deger,$i-1,1) . ",")>0) { 
                    $yeni=$yeni . substr($deger,$i-1,1); 
                    }
            }
            $deger=$yeni;
        
            return $deger;
            
        }else {
            
            return ereg_replace("__","_",$deger);
        }
    }
  • 09-09-2010, 12:50:23
    #3
    şu verdiğim orjinal üzerinde düzenleme yapıp verebilir misiniz?
  • 09-09-2010, 13:06:08
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    function clean_seo_text( $text, $slash=true ) {
        $text  = strtr($text, "ŞsÜüÖöĞğıÇç", "ssuuooggicc"); 
        $entities_match        = array(' ','--','&quot;','!','@','#','%','^','&','*','_','(',')','+','{','}','|',':','"','<','>','?','[',']','\\',';',"'",',','.','/','*','+','~','`','=');
        $entities_replace   = array('-','-','','','','','','','','','','','','','','','','','','','','','','','','');
    $clean_text             = str_replace($entities_match, $entities_replace, $text, $string);
    //        $clean_text         = preg_replace('/[^a-zA-Z0-9\-]/', '', $clean_text);
        if ( $clean_text != '' )
            $slash              = ( $slash ) ? '/' : NULL;
        
        return $slash . $clean_text;
    }
    böyle dener misiniz hocam birde ? umarım dalgınlığıma gelmemiştir.
  • 09-09-2010, 13:25:29
    #5
    olmadı ne değişiklik yaparsam yapayım scritpe hiç birşey uygulanmıyor gibi sanki bi problem var ama anlayamadım acaba htaccess düzenlemesi de mi lazım
  • 09-09-2010, 17:54:24
    #6
    gkaradagan adlı üyeden alıntı: mesajı görüntüle
    hhy89 Arkadas r10 kutuphanesınde vermıs belkı ısıne yarar

    function karaktertemizle($deger) {
        $gecerliler=",q,w,e,r,t,y,u,i,o,p,a,s,d,f,g,h,j,k,l,z,x,c,v,b,n,m,0,1,2,3,4,5,6,7,8,9,_,";
        if (!empty($deger)) {
            $deger=trim(strtolower ($deger));
    
    // turkish characters
            $deger=ereg_replace(" ","_",$deger);
            $deger=ereg_replace("ğ","g",$deger);
            $deger=ereg_replace("ü","u",$deger);
            $deger=ereg_replace("ş","s",$deger);
            $deger=ereg_replace("ı","i",$deger);
            $deger=ereg_replace("ç","c",$deger);
            $deger=ereg_replace("ö","o",$deger);
            $deger=ereg_replace("Ğ","g",$deger);
            $deger=ereg_replace("Ü","u",$deger);
            $deger=ereg_replace("Ş","s",$deger);
            $deger=ereg_replace("Ç","c",$deger);
            $deger=ereg_replace("Ö","o",$deger);
            $deger=ereg_replace("İ","i",$deger);
            $deger=ereg_replace("305","i",$deger);
            $deger=ereg_replace("214","o",$deger);
            $deger=ereg_replace("246","o",$deger);
            $deger=ereg_replace("252","u",$deger);
            $deger=ereg_replace("231","c",$deger);
            $deger=ereg_replace("199","c",$deger);
            $deger=ereg_replace("220","u",$deger);
            $deger=ereg_replace("304","i",$deger);
            $deger=ereg_replace("287","g",$deger);
            $deger=ereg_replace("351","s",$deger);
            $deger=ereg_replace("286","g",$deger);
            $deger=ereg_replace("350","s",$deger);
            $deger=ereg_replace("8217","",$deger);
            $deger=ereg_replace("8216","",$deger);
            $deger=ereg_replace("amp","",$deger);
            $deger=ereg_replace("ynt","",$deger);
    
    // utf 8 turkish
            $deger=ereg_replace("İ","i",$deger);
            $deger=ereg_replace("Ö","o",$deger);
            $deger=ereg_replace("ö","o",$deger);
            $deger=ereg_replace("Ü","u",$deger);
            $deger=ereg_replace("Ç","c",$deger);
            $deger=ereg_replace("ç","c",$deger);
            $deger=ereg_replace("ü","u",$deger);
            $deger=ereg_replace("ı","i",$deger);
            $deger=ereg_replace("ÄŸ","g",$deger);
            $deger=ereg_replace("ÅŸ","s",$deger);
            $deger=ereg_replace("Äž","g",$deger);
            $deger=ereg_replace("Åž","s",$deger);
    /*
    // windows sunucular icin
            $deger=ereg_replace("%c4%b1","i",$deger);
            $deger=ereg_replace("%c3%b6","o",$deger);
            $deger=ereg_replace("%c3%96","o",$deger);
            $deger=ereg_replace("%c3%bc","u",$deger);
            $deger=ereg_replace("%c3%a7","c",$deger);
            $deger=ereg_replace("%c3%87","c",$deger);
            $deger=ereg_replace("%c3%9c","u",$deger);
            $deger=ereg_replace("%c4%b0","i",$deger);
            $deger=ereg_replace("%c4%9f","g",$deger);
            $deger=ereg_replace("%c5%9f","s",$deger);
            $deger=ereg_replace("%c4%9e","g",$deger);
            $deger=ereg_replace("%c5%9e","s",$deger);
    */
    
            $yeni="";
            for ($i=1; $i<=strlen($deger); $i++) {
                if (strpos($gecerliler,"," . substr($deger,$i-1,1) . ",")>0) { 
                    $yeni=$yeni . substr($deger,$i-1,1); 
                    }
            }
            $deger=$yeni;
        
            return $deger;
            
        }else {
            
            return ereg_replace("__","_",$deger);
        }
    }
    örneğin mysql dan çekeceğimiz bir başlığı self link yapmak istiyoruz mesela
    $mysqlverisi << bu değişken ile başlığı çektik seo fonksiyonundan da $yenigelenveri değişkeni olarak almak istiyoruz nasıl uyarlarız bu koda?