chat ege.net sohbet

rewrite .html .htm sorun ?

desoLate

Profesyonel
Katılım
14 Haz 2006
Mesajlar
220
Kod:
RewriteRule ^(.*)_(.*).html$ /sayfa1.php?id=$2&konu=$1
RewriteRule ^(.*)_(.*).htm$ /sayfa2.php?id=$2&konu=$1
Yukardaki kod'da problem yok gayet güzel çalışıyor. Fakat sayfa2.php kuralında .html olarak rewrite yaptığım zaman, sayfa1.php'deki id'ye sahip olan sayfayı getiriyor. Umarım anlatabildim. Bunu nasıl çözebilirim ?

Teşekkürler.
 

iyinet

Administratör
Katılım
2 Eyl 2002
Mesajlar
5,021
Konum
Gaziantep
Kod:
RewriteRule ^(.*)_(.*).html$ /sayfa1.php?id=$2&konu=$1
RewriteRule ^(.*)_(.*).htm$ /sayfa2.php?id=$2&konu=$1
Yukardaki kod'da problem yok gayet güzel çalışıyor. Fakat sayfa2.php kuralında .html olarak rewrite yaptığım zaman, sayfa1.php'deki id'ye sahip olan sayfayı getiriyor. Umarım anlatabildim. Bunu nasıl çözebilirim ?

Teşekkürler.
Bu kurala gore html ler sayfa 2 ye gitmez ,sadece sayfa 1 e gider.
Sayfa 2 ye htm ler gider.
RewriteRule ^(.*)_(.*).htm$ /sayfa2.php?id=$2&konu=$1
 
B

Baria

birşey daha belirmen gerek sayfaları tanımlaman için
örnek:

RewriteRule ^(.*)_(.*)_(.*).html$ /sayfa$1.php?id=$3&konu=$2
 

desoLate

Profesyonel
Katılım
14 Haz 2006
Mesajlar
220
Bu kurala gore html ler sayfa 2 ye gitmez ,sadece sayfa 1 e gider.
Sayfa 2 ye htm ler gider.
RewriteRule ^(.*)_(.*).htm$ /sayfa2.php?id=$2&konu=$1
İşte 2sini de .html olarak ayarlayamaz mıyım ? satırların sonuna [L] [NC] falan yazılıyor. Fakat onların da tam anlamını bilmiyorum. Denedim, ama yine sayfa1'e gidiyor. Ben istiyorum ki sayfa2.php kuralında da .htm yerine .html olsun.
 

desoLate

Profesyonel
Katılım
14 Haz 2006
Mesajlar
220
Bu konuda aynı sıkıntıyı yaşayanlar/yaşayabilme ihtimali olanlar için yazıyorum.
Çoğu yerde araştırdım fakat böyle birşey mümkün gözükmüyor sanırım. Ana domainden yukardaki gibi 2 tane .html link verilmiyor. Peki ne yapılabilir ?
Alternatifler:
1- birini .html diğerini .htm yapabilirsiniz. Yukarda gözüktüğü gibi.
2- başlarına klasör atayarak olabilir.
Kod:
RewriteRule ^Klasorbir/(.*)_(.*).html$ /sayfa1.php?id=$2&konu=$1
RewriteRule ^Klasoriki/(.*)_(.*).html$ /sayfa2.php?id=$2&konu=$1
3- Rakam atayarak olabilir.
Kod:
RewriteRule ^1-(.*)_(.*).html$ /sayfa1.php?id=$2&konu=$1
RewriteRule ^2-(.*)_(.*).html$ /sayfa2.php?id=$2&konu=$1
Şimdilik tek çözüm yolu bu olarak gözüküyor.
Okuyup, öneri yazan herkese teşekkürler.
 

FileZilla

Profesyonel
Katılım
16 Ara 2006
Mesajlar
204
RewriteRule ^(.*)_(.*)\.(.+)$ /sayfa.php?id=$2&konu=$1&tip=$3

deyip tip değişkenine göre de sayfa bastırabilirdik gibi geliyor.
 

iyinet

Administratör
Katılım
2 Eyl 2002
Mesajlar
5,021
Konum
Gaziantep
Ben senin ne yapmaya calistigini anlamadim?
Amac nedir? Orneklerle aciklarmisin.
 

desoLate

Profesyonel
Katılım
14 Haz 2006
Mesajlar
220
Şimdi, öncelikle 2 tane .php uzantılı sayfamız var bunlar site.com/sayfa1.php ve site.com/sayfa2.php . Ve bunlardan sayfa1.php?id=1&konu=rewrite , sayfa.php2?id=1&konu=hayat diye linkler gidiyor. 2 sayfada farklı tablolardan bilgi alıyor. Ve ben bunların ikisininde .html uzantılı hale gelmesini istiyorum. Yani üstteki iki linkte şöyle olacak : rewrite_1.html ve hayat_1.html . ikisinin kuralını da .html olarak yaptığımızda, hayat_1.html'e tıklanınca rewrite_1.html bilgilerini getiriyor. İkisi de .html uzantılı olmuyor yani.

Umarım bu sefer anlatabilmişimdir :)
 
Katılım
25 Şub 2005
Mesajlar
3,824
Konum
hawaii. ama sanal tur.
filezillanınkini açıyım biraz.

sayfa.php?tablo=web&id=1&konu=rewrite -> /web/rewrite-1.html
sayfa.php?tablo=hayattan&id=2&konu=asknedir -> /hayattan/asknedir-2.html

RewriteRule ^(.*)/(.*)-(.*).html /sayfa.php?tablo=$1&konu=$2&id=$3


sayfa.php

mysql_query("select * from ".$_GET[tablo]." where id=".$_GET[id]."");
 

FileZilla

Profesyonel
Katılım
16 Ara 2006
Mesajlar
204
filezillanınkini açıyım biraz.

sayfa.php?tablo=web&id=1&konu=rewrite -> /web/rewrite-1.html
sayfa.php?tablo=hayattan&id=2&konu=asknedir -> /hayattan/asknedir-2.html

RewriteRule ^(.*)/(.*)-(.*).html /sayfa.php?tablo=$1&konu=$2&id=$3


sayfa.php

mysql_query("select * from ".$_GET[tablo]." where id=".$_GET[id]."");

Bende biraz açıyım :D

RewriteRule ^(.*)_(.*)\.(.+)$ /sayfasecici.php?id=$2&konu=$1&tip=$3

deyip tip değişkenine göre de sayfa bastırabilirdik gibi geliyor.


PHP:
if($_GET[tip] == "htm") {
include "sayfa1.php"; } else if($_GET[tip] == "html") {
include "sayfa2.php"; } else {
include "nereye_gulum.php"; }
hepsi bu :)

neden ? çünkü, zaten değişkenler get olarak gelmekte include edilen sayfanın işlenişini etkileyecek herhangi bir ek bulunmamakta :D
 
Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur. iyinet.com sayfalarında yer alan yazı, görsel ve linklerle ilgili hukuki şikayetleriniz için Buradan iletişime geçmeniz durumunda, ilgili kanunlar ve yönetmelikler çerçevesinde en geç 7 gün içerisinde iyinet yönetimince tarafınıza dönüş sağlanacaktır.
Üst