merhaba arkadaşlar, php sitede tarayıcıya www*siteismi*com/asdf.html şeklinde aslında olmayan bi klasor ismi yazdıgımda aşağıdaki hatayı veriyor, .htaccess klasöründe ne yazarsam yada neyi silersem düzelir.
**********************************
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home2/unknow/public_html/kategori.php on line 54
Sayfalar: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
***********************************
Bu sebepten dolayı Google web sitemin sitemap'ını Oluşturmak icin meta etiketini doğrulatamıyorum. İlgilenen arkadaşlara çok teşekkür ederim
.htaccess sorunu
3
●435
- 07-03-2009, 01:29:55Sorun .htacces değil müdür.
.htaccess dosyan
domain. com/(kategori-adi).html sorgusunu kategori.php?katadi=$1 adresine yönlendiriyor.
Oradaki kategori çeken php dosyası gelen kategori adı değişkenini alıp databaseden sorguluyor o kategoriye ait id yi alıp eşleşen videolaır döküyor.
Ama kodu yazan arkadaş kategori adı mysql sorgusundan boş ya da hatalı sonuç döndüğünde yapılacak işlemi yazmayı unutmuş sanırım.
Eğer mysql_fetch_array() boş veya hata döndürürse yapılması gerekenlerin kodlanması lazım.
Bir mysql sorgusu 3 sonuç döndürür.
Ya sorgu gerçekleşir ve eşleşen kayıtlar gelir
Ya sorgu gerçekleşir ve eşleşen kayıt bulunamaz 0 gelir
Ya da sorguda hata vardır sorgu gerçekleşmez...
Eğer yanıt sonucunda kayıt gelmezse bir hata mesajı verilmesi lazım.
if (mysql_fetch_array($sorgu) < 1) echo "Böyle bir kategori yok (kategori bulunamadı mesajı ardından 404 sayfa bulunamadı yönlendirmesi geliyor) "; header("HTTP/1.0 404 Not Found"); exit;Bu şekilde bir düzenleme yapılması lazım kodunda.
Böylece biri olmayan bir kategoriye girmeye çalışırsa, yani
domain .com/hebelebubele.html sayfasını çağırdığında kod yarıda kırılmaz doğrudan 404 hata mesajı sayfasına yönlendirir.
ASIL PROBLEMİNE GELİRSEK
.htaccess dosyandaki düzenleme için RewriteEngine on ve RewriteBase tanımlandıktan sonraki satıra yönlendirmeni yazman lazım.
İlk yönlendirme spesifik bir dosyaya gerçekleşirse ondan sonraki kategori yönlendirmelerinden önce hata vermeden google botun onay dosyasını bulmasını sağlarsın. aşağıda googlekodu.html yazan yerleri google ın verdiği dosya adı ile yani asda87dad79sd789.html olarak değiştir.
RewriteEngine on RewriteBase / RewriteRule googleonaykodu.html googleonaykodu.html ............bu satırdan sonra normal htaccess kodların devam edecek..............
saygılar - 08-03-2009, 00:19:54.htaccess le alakalıymış, yazılan kodlar bulunmayan sayfaları kategori.php sayfasında acıyor ve yazdıgım hatayı veriyordu,
Teşekkürler digiklan, verdigin kodlar tamamen dogru, bir .htaccess in bir kısmını silerek dogrulamayı başardım, ama güvenlik açığı oluştumu onu bilmiyorum :S