İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Seo Link ve RewriteRule Problemi

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Angelo aynı

Özel mesajdan gönderiyorum server ipi dosyaların .txt halinide koyucam. birde ssh açayım mı ? :)
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Yok maalesef sana ve Loi 'ye özel mesajdan ip adresinide gönderdim ve şu an dosya içinde senin kodun duruyor.

Sizlerde çalışıyormu bu kodlar sorunsuz ? Bu kod harici başka bir yerde sorun var dicem ama doğru kısmının çalışıpta yanlış kısmının çalışmaması ilginç gerçekten
 

Loi

0
İyinet Üyesi
Katılım
13 Kasım 2006
Mesajlar
6,192
Reaction score
44
Konum
localhost
Hallettim, birden fazla tablo olusturmussun icerik icin şimdi detayları verecegim test ettim calisiyor.
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Şu an için veriyi karşılaştırdığım yer sadece sayfalar tablosu.
 

Loi

0
İyinet Üyesi
Katılım
13 Kasım 2006
Mesajlar
6,192
Reaction score
44
Konum
localhost
Farketmez sonuc olarak çözdük ben dolu hangi tablo var diye baktım ve yazilar tablosunda calistim

yazi_seo sutununu kontrol ettirerek basarili aldigim cikti asagidaki gibi
Nerdeyim : /home/xxxxx/public_html/content/index.php
S Dosya : content
S Trim 2 : rrrrrrrrrrr-zxdfsadf
S Trim 3 :
Bu 2 kategorisine uyan bir sayfadir

Başlık: rrrrrrrrrrr zxdfsadf 555 675671111
İçerik: rrrrrrrrrrrr 4353451111111

Data yoksa asagidakini veriyor
Nerdeyim : /home/xxxx/public_html/content/index.php
S Dosya : content
S Trim 2 : rrrrrrrrrrr-zxdfs
S Trim 3 :
Sistemde boyle bir sayfa yok

Nasıl yaptım?
PHP:
$sorgu = mysql_query("SELECT * from yazilar WHERE yazi_seo='$p1' limit 1");
$veri=mysql_fetch_array($sorgu);
if ($veri[yazi_seo]) {
	if ($veri[y_type] == "2") { echo "Bu 2 kategorisine uyan bir sayfadir<br><br><b>Başlık</b>: $veri[yazi_baslik]<br><b>İçerik</b>: $veri[yazi_icerik]"; }
	if ($veri[y_type] == "1") { echo "Bu 1 kategorisine uyan bir sayfadir<br><br><b>Başlık</b>: $veri[yazi_baslik]<br><b>İçerik</b>: $veri[yazi_icerik]"; }
}
	else { echo "Sistemde boyle bir sayfa yok"; }

ufak bir detay var oda benim root altında content adlı bir alt dizinde bu scripti calistirmis olmam bu nedenle senin URL2 olarak explode edilmis degeri kullandım o yuzden SQL sorgusunda $p1 bulunmakta. Umarım bu kafanı karıştırmaz.
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Bu sorun sadece while yüzünden kaynaklanıyormuş :) eski kod içinde while yi çıkardım sorunsuz çalışıyor. Çok teşekkürler Loi bu kadar uğraştığın için

Ayrıca Angelo 'ya da teşekkürler o olmasa explode siz diğer yöntemle boğuşuyor olacaktım.

Sıra geldi en son problemin çözümüne oda domain/kategori altında ilgili yazıları listelemeye :)
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Kategoriye ait verilerin listelenmesi işide çözülmüştür. Girilen linkin kategori olduğunu doğruladıktan sonra ilgili kategoriye ait tablodan sorgu yapılarak veriler alınır ve ekrana bastırılır. Bu gibi bir işle uğraşacaklar için bilgilendirme notu olarak kalsın burda.
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Tam herşey bitti derken çıktı yine bir problem. :)

domain/kategori ve domain/kategori/ şeklinde yapılan girişler ayrı algılanıyor bu explode işinde. Bunu bir yerde nasıl toplayabilirim veya birisini nasıl pasif duruma getirebilirim ?
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
PHP:
$x = $_SERVER['REQUEST_URI'];
if (substr($x,-1) == '/') { 
/* son karakter / ise */
$x = substr($x,0,strlen($x) - 1);
}
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Angelo hızırmısın nesin :) sağolasın domain/kategori/ olani anasayfaya yönlendirdim. domain/kategori seklinde olanlar çalışıyor.
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
İşte bir problem daha :)

Normal bir veri çekme işlemi için sayfalama kodum var fakat kodu bu uygulamaya nasıl entegre edeceğimi bilemiyorum.

Sayfa sayısını ve alt limiti belirledikten sonra bölme işlemi sonucu çıkan sayıyı veritabanı sorgusuna limit şeklinde ekledim ve gelen veriyi sayfalara ayırdım.

Şimdi bundan sonra nasıl birşey yapmalıyım ki normal linke ?sayfa=2 şeklinde eklediğimde bu sayfayı bulup kalan verilerle eşleştirsin.

Örnek Link : domain/kategori/denemeler?sayfa=2 burada kategori ve denemeler veritabanında eklenmiş olduğu için tanımlanıyor.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Zaten route üzerinde belirlemeye çalıştığın komuttaki ilk işlem soru işareti varsa, soru işareti ve ondan sonraki harfleri ignore etmek olacak. ? a göre bölüp, sıfır numaralı elemanı almak yani basitçe.

Sonra zaten aynen $_GET['sayfa'] olarak kullanılabilir. ( örnekte değer 2 mesela )
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Angelo öyle rahat anlatıyorsunki bildiğin için :) Benim mantık yine kulağı tersten gösteriyor belli ki.

? işaretinden sonraki veriyi almada bir problem yok fakat kalan veriyi nasıl ekrana yazdırıcam onu anlayamadım. Normal bir kod içerisinde problemsiz yapmıştım bu sayfalamayı ama bu tek dosyadan olan işte çakılıp kaldım.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
zimbabweli-gencler.html

Herhangi bir şekilde category.php ye yönlendiriliyor olsun. Şu aşamada nasıl yaptığını bilmiyoruz onu çünkü başta, if else demiştik sonra sanırım database filan kurdun. Neyse category.php ye sorunsuz yönleniyorsa problem yok. Slash filan olması birşeyi değiştirmeyecektir bu aşamada. Onları zaten entegre ettiğini varsayıyoruz, sorunun soru işaretiyle.

Şimdi yönlendirme dosyasında, en tepede, herşeye başlamadan önce ? işaretine göre bölüp bir zımbırtı varsa halletmen icap ediyor.

PHP:
/* $x değişkeni request url sine atanmış olsun daha önceki işlemlerde 
onu temizle soru işaretlerinden */
$x = explode('?',$x);
$x = $x[0];

/* bundan sonra yonlendirmeni yap gene nasıl yapıyorsan */

Şimdi soru işaretini temizlediğine göre aşağıdaki sayfaların hepsi gene category.php ye yönlenecektir. Soru işaretine ne eklersen ekle farketmez.

zimbabweli-gencler.html
zimbabweli-gencler.html?sayfa=533
zimbabweli-gencler.html?durum=su+yok+ya+burda
zimbabweli-gencler.html?saat=12

Hal böyle iken category.php'nde verileri zaten nasıl çekiyorsan, gelen GET verisine göre istediğini gene yapabilirsin.Veritabanından veri çekiyorsun heralde

PHP:
$sayfa_basi_adet = 12;
$offset = ($_GET['sayfa'] - 1) * $sayfa_basi_adet

$q = mysql_query("SELECT isim, soyisim FROM muhtarlik
ORDER BY id DESC LIMIT $offset,$sayfa_bas_adet");

mesela...

URL ne olursa olsun, nereye yönlenirse yönlensin, yönlendiği yerde _GET üzerinden ulaşabilirsin.

/yemek/italyan_mutfagi/alfredo.html -> yemek.php?id=1&cat=2 ye yönlense
/yemek/italyan_mutfagi/alfredo.html?sayfa=2 -> yine yemek.php?id=1&cat=2 adresine yönlenecek, ve $_GET['sayfa'] 2 değeri verecektir.
 

OsmanAtabey

0
İyinet Üyesi
Katılım
26 Mart 2005
Mesajlar
922
Reaction score
4
Bunların tamamını yaptığımı söylemiştim. Herneyse ben bununla iyice uğraşmadan anlayamıcam o kesin. Zaten genelde mantık hatası yapıyorum bu tür şeylerde. Belki de yapıyorum ama birşey atlıyorum. Sağolasın Angelo
 

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.

Üst