• 06-01-2010, 02:18:39
    #1
    merhaba, önceden kategorilerim /klasor/ alinde idi ben kategorileri /kategori.html olarak değiştirdim suanda sayfalamalarda urller

    http://www.site.com/oyun-kategori/16...ri.html/2.html

    şeklinde cıkıyor ve bir diğer sayfaya gecince hata veriyor.

    kategorilerin self url kodu :

    function categoryurl($categoryId,$categoryname) {
        global $siteurl, $sefriendly;
        if ($sefriendly == '1') {
            $categoryname = str_replace(" ","-",$categoryname);
            $categoryname = str_replace("(","-",$categoryname);
            $categoryname = str_replace(")","-",$categoryname);
            $categoryname = str_replace("'","_",$categoryname);
            $categoryname = str_replace("","a",$categoryname);
            $categoryname = str_replace("ö","o",$categoryname);
            $categoryname = str_replace("ü","u",$categoryname);
            $categoryname = str_replace("ı","i",$categoryname);
            $categoryname = str_replace("İ","i",$categoryname);
            $categoryname = str_replace("","o",$categoryname);
            $categoryname = str_replace("ç","c",$categoryname);
            $categoryname = str_replace("ğ","g",$categoryname);
            $categoryname = str_replace("ş","s",$categoryname);
            $categoryname = str_replace("Ç","c",$categoryname);
            $categoryname = str_replace("I","i",$categoryname);
            $categoryname = str_replace("İ","i",$categoryname);
            $categoryname = str_replace("Ö","o",$categoryname);
            $categoryname = str_replace("ğ","g",$categoryname);
            $categoryname = str_replace("Ş","s",$categoryname);
            $categoryname = str_replace("Ü","u",$categoryname);
            $categoryname = str_replace("'","-",$categoryname);
            $categoryname = str_replace(".","-",$categoryname);
            $categoryname = str_replace("=","-",$categoryname);
            $categoryname = str_replace("?","-",$categoryname);
            $categoryname = str_replace(",","-",$categoryname);
            $categoryname = str_replace("|","-",$categoryname);
                                          $categoryname = str_replace("","i",$categoryname);
            $categoryurl = $siteurl."/oyun-kategori/".$categoryId."/".$categoryname.".html";
        } else {
            $categoryurl = $siteurl."/browse.php?c=".$categoryId;
        }
        return $categoryurl;
    .htaccess dosyamdaki kod:
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+).html index.php?action=browse&cid=$1 [L]
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+)/([0-9]+).html index.php?action=browse&cid=$1&page=$3 [L]
    kategori sayfasındaki sayfalama kodları:

    if ($page > 1) {
                $pagen = $page - '1';
                if ($sefriendly == '1') {
                    $prev = "<a href=\"".categoryurl($cid,$categoryname)."/".$pagen.".html\">< Önceki Sayfa</a>";
                } else {
                    $prev = "<a href=\"".categoryurl($cid,$categoryname)."&page=".$pagen."\">< Önceki Sayfa</a>";
                }
            } else {
                $prev  = "";
            }
            if ($page < $pagescount) {
                $pagen = $page + '1';
                if ($sefriendly == '1') {
                    $next = "&nbsp;<a href=\"".categoryurl($cid,$categoryname)."/".$pagen.">Sonraki Sayfa ></a>";
                } else {
                    $next = "&nbsp;<a href=\"".categoryurl($cid,$categoryname)."&page=".$pagen.">Sonraki sayfa ></a>";
                }
            } else {
                $next = "";
            }
    ilgilenen arkadaşlara şimdiden teşekkürler.
  • 06-01-2010, 13:17:02
    #2
    arkadaşlar bi el atabilecek yokmu ?
  • 06-01-2010, 13:45:42
    #3
    Üyeliği durduruldu
    Merhaba,
    str_replace fonksiyonunu kullanırken boş değerleri neden i harfine cevirdiğini merak eder oldum
    İstersen sayfalama kod blogunu yazarsan bizde yöntem sunalım derim
  • 06-01-2010, 14:09:12
    #4
    sayfalama kod bloğu yukarda hocam. ben tekrar bu mesajıoma ekliyim hemen

    $pagen = $page - '1';
                if ($sefriendly == '1') {
                    $prev = "<a href=\"".categoryurl($cid,$categoryname)."/".$pagen.".html\">< Önceki Sayfa</a>";
                } else {
                    $prev = "<a href=\"".categoryurl($cid,$categoryname)."&page=".$pagen."\">< Önceki Sayfa</a>";
                }
            } else {
                $prev  = "";
            }
            if ($page < $pagescount) {
                $pagen = $page + '1';
                if ($sefriendly == '1') {
                    $next = "&nbsp;<a href=\"".categoryurl($cid,$categoryname)."/".$pagen.">Sonraki Sayfa ></a>";
                } else {
                    $next = "&nbsp;<a href=\"".categoryurl($cid,$categoryname)."&page=".$pagen.">Sonraki sayfa ></a>";
                }
            } else {
                $next = "";
            }
  • 06-01-2010, 15:51:34
    #5
    hala yardım bekliyorum.
  • 06-01-2010, 17:09:32
    #6
    Merhaba
    Sorun büyük ihtimalle rewrite rule sırasından kaynaklanıyor.
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+).html index.php?action=browse&cid=$1 [L]
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+)/([0-9]+).html index.php?action=browse&cid=$1&page=$3 [L]
    buradaki sırayı aşağıdaki gibi değiştir.
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+)/([0-9]+).html index.php?action=browse&cid=$1&page=$3 [L]  
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+).html index.php?action=browse&cid=$1 [L]
  • 06-01-2010, 18:59:51
    #7
    MadDriver adlı üyeden alıntı: mesajı görüntüle
    Merhaba
    Sorun büyük ihtimalle rewrite rule sırasından kaynaklanıyor.
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+).html index.php?action=browse&cid=$1 [L]
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+)/([0-9]+).html index.php?action=browse&cid=$1&page=$3 [L]
    buradaki sırayı aşağıdaki gibi değiştir.
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+)/([0-9]+).html index.php?action=browse&cid=$1&page=$3 [L]  
    RewriteRule ^oyun-kategori/([0-9]+)/([_A-Za-z0-9-]+).html index.php?action=browse&cid=$1 [L]
    dedğiniz şekilde internal server error hatası alıyorum.
    Alıntı
    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, webmaster@oyunforumu.net and inform them of the time the error occurred, and anything you might have done that may have caused the error.
    More information about this error may be available in the server error log.

    Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
    Apache/1.3.41 Server at oyunforumu.net Port 80
  • 06-01-2010, 22:13:24
    #8
    sorunu hallettim ilgilenen herkese teşekkürler