v2.5.2
Giriş yap

PHP Seo link sorunu

d0nz
1,162 defa görüntülendi

Merhabalar. SEO link ile ilgili bir sorunum var. Yapmak istediğim olay duzenle.php?mId=1 yerine duzenle/1 olarak göstermek istiyorum, bir türlü yapamadım. Yardımcı olabilir misiniz ? Cevaplarınız için şimdiden teşekkür ederim.

htaccess içeriği:

RewriteEngine On
RewriteRule ^duzenle/([0-9]+)$  duzenle.php?mId=$1&id=$2 [L,QSA]
RewriteRule ^sil/([0-9]+)$  sil.php?mId=$1&id=$2 [L,QSA]

seo.php içeriği:

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('/&.+?;/', '', $s); 
	$s = preg_replace('/\s+/', '-', $s); 
	$s = preg_replace('|-+|', '-', $s); $s = preg_replace('/#/', '', $s); 
	$s = str_replace('.', '', $s); $s = trim($s, '-'); return $s; 
}

index.php içeriği:

<tbody>
	<?
	    include 'seo.php';
		$query = $db->query("SELECT * FROM musteri", PDO::FETCH_ASSOC);
		if ( $query->rowCount() ){
		foreach( $query as $row ){
		$mId	= $row["id"];
		$mAd	= $row["Ad"];
		$mSoyad = $row["Soyad"];
	?>
	<tr>
		<th scope="row"><?="#".$mId;?></th>
		<td><?=$mAd;?></td>
		<td><?=$mSoyad;?></td>
		<td>
			<a href="duzenle/<?=seo($mId);?>">düzenle</a>
			<a href="sil/<?=seo($mId);?>">sil</a>
		</td>
	</tr>
	<? }} ?>
</tbody>

duzenle.php içeriği:

$mId = $_GET["mId"];
echo $mId;
d0nz
1371 gün önce

Zaten duzenle.php yi göstermek istiyorum

Dediklerin gibi yaptım:

.htaccess:
RewriteRule ^duzenle/([^/]*)$ duzenle.php?id=$1 [L]

link yapısı
<a href="edit/<?=seo(id);?>">düzenle</a>

düzenle dediğim zaman http://local/www/duzenle/1 olarak çıkıyor ama
sayfanın verdiği hata ise
"The requested URL /www/duzenle/1.php was not found on this server."

Burada çıkan 1 normalde müşterinin id ' si
ama sayfa olarak algılıyor. o yüzden 1.php dosyası yok diyor.