• 08-08-2016, 09:40:21
    #1
    Üyeliği durduruldu
    Merhabalar,

    Arkadaşlar, web sitemde ki link yapısı detay-1-yazi-basligi.html şeklinde yaptım.fakat ben bunu direk yazi-basligi.html yapmak istiyorum. detay ve id numarası da gözükmesin istiyorum. bunu nasıl yaparım acaba?

    Gerekirse ücretli şekilde yardım edebilirsiniz.
  • 08-08-2016, 09:43:32
    #2
    RewriteRule ^([0-9a-zA-Z-_]+)(/?).html$ sayfa.php?id=$1 [L,NC]

    kardeşim ben bunu kendim kullanıyorum. Sende kendine göre uyarlayabilirsen sorunu çözebilirsin.
  • 08-08-2016, 09:45:34
    #3
    Üyeliği durduruldu
    hocam peki sayfada linki nasıl yapıyorsunuz? yani a href src="index.php?id=1" şekilindemi?
  • 08-08-2016, 09:57:27
    #4
    Ben şu şekilde yapıyorum.

    Vertiabanım da bir alan oluşturuyorum. Eklediğim yazını başlığını sef link yapısına uyduruyorum. Yani atıyorum başlık kısmına haber başlığı yazdı isem; ben bunu veritabanı eklerken haber-basligi şeklinde ekletiyorum ve aşağıdaki şekilde çekiyorum.

    <a href=\"haber/".$haber["baslik"].".html\"></a>
  • 08-08-2016, 10:23:14
    #5
    Üyeliği durduruldu
    ercnakar adlı üyeden alıntı: mesajı görüntüle
    Ben şu şekilde yapıyorum.

    Vertiabanım da bir alan oluşturuyorum. Eklediğim yazını başlığını sef link yapısına uyduruyorum. Yani atıyorum başlık kısmına haber başlığı yazdı isem; ben bunu veritabanı eklerken haber-basligi şeklinde ekletiyorum ve aşağıdaki şekilde çekiyorum.

    <a href=\"haber/".$haber["baslik"].".html\"></a>
    anladım. ama benim sistem bu şekilde değil. 78 tane içerik var tek tek düzeltilmez. başka yolu varmı acaba mevcut sisteme göre. gerekirse ücretli olarak destekde verebilirsiniz.
  • 08-08-2016, 11:03:22
    #6
    ücretli olarak yardımcı olabilirim. gün içinde yapılacak bir işse
  • 08-08-2016, 11:19:28
    #7
    teknoif adlı üyeden alıntı: mesajı görüntüle
    anladım. ama benim sistem bu şekilde değil. 78 tane içerik var tek tek düzeltilmez. başka yolu varmı acaba mevcut sisteme göre. gerekirse ücretli olarak destekde verebilirsiniz.
    Panelden düzenle sayfanız yokmu? Varsa ise her düzenlemede başlığı istediğiniz yapıya göre değiştirmesini sağlayabilirsiniz. 78 kere tıklama olacak sadece

    Skype ercn.akar eklersen yardımcı olmaya çalışayım.
  • 08-08-2016, 13:14:38
    #8
    <?php
    function seflink($url) {
                $url = trim($url);
                $find = array('<b>', '</b>');
                $url = str_replace ($find, '', $url);
                $url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url);
                $find = array(' ', '&quot;', '&amp;', '&', '\r\n', '\n', '/', '\\', '+', '<', '>');
                $url = str_replace ($find, '-', $url);
                $find = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê');
                $url = str_replace ($find, 'e', $url);
                $find = array('í', 'ì', 'î', 'ï', 'I', 'Í', 'Ì', 'Î', 'Ï', 'İ', 'ı');
                $url = str_replace ($find, 'i', $url);
                $find = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô');
                $url = str_replace ($find, 'o', $url);
                $find = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â');
                $url = str_replace ($find, 'a', $url);
                $find = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û');
                $url = str_replace ($find, 'u', $url);
                $find = array('Ş','ş');
                $url = str_replace ($find, 's', $url);
                $find = array('ç', 'Ç');
                $url = str_replace ($find, 'c', $url);
                $find = array('Ğ', 'ğ');
                $url = str_replace ($find, 'g', $url);
                $find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
                $repl = array('', '-', '');
                $url = strtolower($url);
                $url = preg_replace ($find, $repl, $url);
                $url = str_replace ('---', '-', $url);
                $url = str_replace ('--', '-', $url);
                return $url;
            }
    bu kullanacağınız fonksiyon. aşağıdaki işlemleri yapmadan önce tablonuzda "seflink" isimli bir alan açın (böyle bir alan varsa gerek yok, aşağıdaki kodları düzenlersiniz). aşağıdaki kodu, seflinklerinizi düzenlemek için sadece 1 kez kullanacaksınız. bu, 78 kez tıklama yapmak yerine hızlı çözümdür.

    $sql = mysql_query("SELECT id, baslik FROM {tablo adı}");
    while($data = mysql_fetch_assoc($sql)) {
       mysql_query("UPDATE {tablo adı} SET seflink = '".seflink($data['baslik'])."' WHERE id = '".$data['id']."'");
    }
    ayrıca, admin kaynak kodlarınızda içerik ekleme sayfasında seflink adlı tablo alanına seflink($_POST['baslik']) ile veri girmeyi unutmayın.

    url'yi şu şekilde verirsiniz:
    <a href="<?=$data['seflink']?>">.html"><?=$data['baslik']?></a>
    .htaccess şu şekilde olmalı:
     RewriteRule ^([0-9a-zA-Z-_]+)(/?).html$ {sayfa adı}.php?seflink=$1 [L,NC]
    haberi şu şekilde çekersiniz:
    $sql = mysql_query("SELECT * FROM {tablo adı} WHERE seflink = '".seflink($_GET['seflink'])."' LIMIT 1");
    umarım yardımcı olur size bu
  • 09-08-2016, 20:23:23
    #9
    Üyeliği durduruldu
    sewakldawk adlı üyeden alıntı: mesajı görüntüle
    <?php
    function seflink($url) {
                $url = trim($url);
                $find = array('<b>', '</b>');
                $url = str_replace ($find, '', $url);
                $url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url);
                $find = array(' ', '&quot;', '&amp;', '&', '\r\n', '\n', '/', '\\', '+', '<', '>');
                $url = str_replace ($find, '-', $url);
                $find = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê');
                $url = str_replace ($find, 'e', $url);
                $find = array('í', 'ì', 'î', 'ï', 'I', 'Í', 'Ì', 'Î', 'Ï', 'İ', 'ı');
                $url = str_replace ($find, 'i', $url);
                $find = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô');
                $url = str_replace ($find, 'o', $url);
                $find = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â');
                $url = str_replace ($find, 'a', $url);
                $find = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û');
                $url = str_replace ($find, 'u', $url);
                $find = array('Ş','ş');
                $url = str_replace ($find, 's', $url);
                $find = array('ç', 'Ç');
                $url = str_replace ($find, 'c', $url);
                $find = array('Ğ', 'ğ');
                $url = str_replace ($find, 'g', $url);
                $find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
                $repl = array('', '-', '');
                $url = strtolower($url);
                $url = preg_replace ($find, $repl, $url);
                $url = str_replace ('---', '-', $url);
                $url = str_replace ('--', '-', $url);
                return $url;
            }
    bu kullanacağınız fonksiyon. aşağıdaki işlemleri yapmadan önce tablonuzda "seflink" isimli bir alan açın (böyle bir alan varsa gerek yok, aşağıdaki kodları düzenlersiniz). aşağıdaki kodu, seflinklerinizi düzenlemek için sadece 1 kez kullanacaksınız. bu, 78 kez tıklama yapmak yerine hızlı çözümdür.

    $sql = mysql_query("SELECT id, baslik FROM {tablo adı}");
    while($data = mysql_fetch_assoc($sql)) {
       mysql_query("UPDATE {tablo adı} SET seflink = '".seflink($data['baslik'])."' WHERE id = '".$data['id']."'");
    }
    ayrıca, admin kaynak kodlarınızda içerik ekleme sayfasında seflink adlı tablo alanına seflink($_POST['baslik']) ile veri girmeyi unutmayın.

    url'yi şu şekilde verirsiniz:
    <a href="<?=$data['seflink']?>">.html"><?=$data['baslik']?></a>
    .htaccess şu şekilde olmalı:
     RewriteRule ^([0-9a-zA-Z-_]+)(/?).html$ {sayfa adı}.php?seflink=$1 [L,NC]
    haberi şu şekilde çekersiniz:
    $sql = mysql_query("SELECT * FROM {tablo adı} WHERE seflink = '".seflink($_GET['seflink'])."' LIMIT 1");
    umarım yardımcı olur size bu

    Çok Teşekkürler hocam. yardımınız işime yaradı.