• 29-01-2023, 14:52:07
    #1
    Merhaba,

    forumda da stackoverflowda da araştırdım ama denediğim yöntemler çalışmadı.


    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    RewriteRule ^hava-durumu/anlik/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+)$ now.php?locationId=$1 [L, QSA]
    Yapmak istediğim şey şu;

    hava-durumu/anlik/malatya/as8d4a9s8d
    hava-durumu/anlik/izmir/as4d65asd4

    Bold olarak belirttiklerim lokasyon idleri. Şehir ismi önemli değil ama url de olacak.
    Yardım ederseniz sevinirim.
  • 29-01-2023, 14:56:59
    #2
    .htaccss dosyası;

    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond $1 !^(css|js|images|inc|lang)
    //Sabit sayfalar için oluşturmamız gereken yapı aşağıdaki gibidir.(anasayfa yazdığımızda index.php sayfasını çağır)
    RewriteRule ^anasayfa/? index.php [NC,L]
    RewriteRule ^hakkimizda/? hakkimizda.php [NC,L]
    // Dinamik sayfalar için  0-9 ve a-z arasındaki karakterler için ([0-9a-zA-Z-_]+) bu yapıyı ve id=1 icin  0-9 arası rakamlardan oluşan karakterler seçilmeli ([0-9]+) bu şekilde oluşturup hizmetlerimiz.php?id= sayfasını çağırmalıyız.
    RewriteRule ^hizmetlerimiz/([0-9a-zA-Z-_]+)/([0-9]+)? hizmetlerimiz.php?id=$2 [L,QSA]

    Sayfanın başına veya bir fonksiyon dosyası oluşturup projeye include edin.
    <?php function seo($s) {     $tr = array('ş','Ş','ı','I','İ','ğ','Ğ','ü','Ü','ö','Ö','Ç','ç','(',')','/',' ',',','?');     $eng = array('s','s','i','i','i','g','g','u','u','o','o','c','c','','','-','-','','');     $s = str_replace($tr,$eng,$s);     $s = strtolower($s);     $s = preg_replace('/&amp;amp;amp;amp;amp;amp;amp;amp;amp;.+?;/', '', $s);     $s = preg_replace('/\s+/', '-', $s);     $s = preg_replace('|-+|', '-', $s);     $s = preg_replace('/#/', '', $s);     $s = str_replace('.', '', $s);     $s = trim($s, '-');     return $s; }  ?>

    Veri çektiğinizi düşünmek gerekirse
    <?php $hizmetsor=mysqli_query($baglan,"select * from hizmet"); while ($hizmetcek=mysqli_fetch_assoc($hizmetcek)) {?>
    <a href="hizmetlerimiz/<?=seo($hizmetcek["baslik"]).'/'.$hizmetcek["hizmet_id"]?>">Hizmet Başlık</a><?php } ?>
  • 29-01-2023, 15:10:24
    #3
    bekadan adlı üyeden alıntı: mesajı görüntüle
    Merhaba,

    forumda da stackoverflowda da araştırdım ama denediğim yöntemler çalışmadı.


    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    RewriteRule ^hava-durumu/anlik/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+)$ now.php?locationId=$1 [L, QSA]
    Yapmak istediğim şey şu;

    hava-durumu/anlik/malatya/as8d4a9s8d
    hava-durumu/anlik/izmir/as4d65asd4

    Bold olarak belirttiklerim lokasyon idleri. Şehir ismi önemli değil ama url de olacak.
    Yardım ederseniz sevinirim.

    RewriteRule ^hava-durumu/anlik/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+)$ now.php?locationId=$2 [L, QSA]


    $1 ve $2 RewriteRule tarafından kabul edilen URL'deki her bir kısımın değerini tutan değişkenlerdir.
    RewriteRule kuralında belirtilen düzenli ifade parantezleri içindeki kısımlar, $1, $2, ... gibi değişkenlere atanır. $1 ilk parantez içindeki kısmı, $2 ise ikinci parantez içindeki kısmı temsil eder.
    Örneğin, ^hava-durumu/anlik/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+)$ düzenli ifadesi içinde, $1 şehir adını, $2 ise lokasyon ID'sini temsil eder.
    • bekadan
    bekadan bunu beğendi.
    1 kişi bunu beğendi.
  • 29-01-2023, 19:55:01
    #4
    Misafir adlı üyeden alıntı: mesajı görüntüle
    RewriteRule ^hava-durumu/anlik/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+)$ now.php?locationId=$2 [L, QSA]
    $1 ve $2 RewriteRule tarafından kabul edilen URL'deki her bir kısımın değerini tutan değişkenlerdir.
    RewriteRule kuralında belirtilen düzenli ifade parantezleri içindeki kısımlar, $1, $2, ... gibi değişkenlere atanır. $1 ilk parantez içindeki kısmı, $2 ise ikinci parantez içindeki kısmı temsil eder.
    Örneğin, ^hava-durumu/anlik/([0-9a-zA-Z-]+)/([0-9a-zA-Z-]+)$ düzenli ifadesi içinde, $1 şehir adını, $2 ise lokasyon ID'sini temsil eder.
    Çalıştı hocam çok teşekkür ederim.
  • 29-01-2023, 20:09:11
    #5
    bekadan adlı üyeden alıntı: mesajı görüntüle
    Çalıştı hocam çok teşekkür ederim.
    rica ederim. iyi çalışmalar