$_GET['id'] Url 'den gizlemek istiyorum
Arkadaşlar Merhabalar, ödevim için basit bir blog sayfası yapıyorum.
Sayfaya veriler çekiliyor detay sayfasında da veriler geliyor, detay sayfasını açtığım zaman url şu şekilde geliyor.
http://localhost/mezuniyetodevi/deneme-13
ama ben ID olmadan gelmesini istiyorum yani;
http://localhost/mezuniyetodevi/deneme
Bu şekilde mümkün müdür? Biraz araştırdım ama pek bir şey bulamadım.
Bunun için senin kontrollerin önemli. Diyelim ki normalde eriştiğin linkin şöyle olsun
siteadi.com/blog.php?id=1&url=test-url
Ve sen .htacccess
ile bunu şu hale getirdin
RewriteEngine On
RewriteRule ^([0-9]+)-([0-9a-zA-Z-_]+)$ blog.php?id=$1&url=$2 [QSA]
Artık bu linke şöyle erişiyor olabilmen lazım
siteadi.com/1-test-url
ve blog.php
dosyanda ise id
ve url
i $_GET
ile alıp ona göre kontrol yapıyor olman lazım.
// blog.php
$id = $_GET['id'];
$url = $_GET['url'];
// db işlemleri...
Şimdi sen bu mantıkta hem id'yi hem url'i kontrol ediyorsun. Ancak yapmak istediğin id'yi ortadan kaldırmak ise öncelikle link yapın şöyle olmalı.
siteadi.com/blog.php?url=test-url
buna görede .htaccess
dosyanı şöyle düzenlemelisin
RewriteEngine On
RewriteRule ^([0-9a-zA-Z-_]+)$ blog.php?url=$2 [QSA]
Ve artık şöyle erişiyor olabilmen lazım.
siteadi.com/test-url
Bu mantıktada blog.php
dosyan şöyle olmalı
// blog.php
$url = $_GET['url'];
// db işlemleri -> sadece urle göre konrol edip konu bilgilerini çek