İyinet'e Hoşgeldiniz!

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

Kayıt Ol!

Sayfalama hatası.?

CoLd!uX

0
İyinet Üyesi
Katılım
9 Mayıs 2008
Mesajlar
509
Reaction score
1
iyi akşamlar arkadaşlar şu hatayı alıyorum

PHP:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/bizimlep/public_html/kategori.php on line 4

buradaki kodlama hata veriyor bir türlü çözemedim

hata veren yer

PHP:
while($ad=mysql_fetch_array($katadi))


aşağıdaki sayfalamda kullandığım kodlama..
PHP:
<?php
include("vt.php");
$id=$_GET["id"];  
$katadi=mysql_query("select * from kategori katadi where id='$id'");
while($ad=mysql_fetch_array($katadi))
{
$katadi=$ad['katadi'];
}
?>
 

Antika

0
İyinet Üyesi
Katılım
23 Aralık 2010
Mesajlar
451
Reaction score
18
bu satırdan kaynaklanıyo muhtemelen

select * from kategori katadi where id='$id'

bold olanlardan biri fazla, tablo adını yazmalısın
 

CoLd!uX

0
İyinet Üyesi
Katılım
9 Mayıs 2008
Mesajlar
509
Reaction score
1
tablo adi kategori katadi ise kategori tablosunun içinde bir sütün sorun aynı
 

Antika

0
İyinet Üyesi
Katılım
23 Aralık 2010
Mesajlar
451
Reaction score
18
katadi ni silmelisin ozaman

bu yani select * from kategori where id='$id'
 

CoLd!uX

0
İyinet Üyesi
Katılım
9 Mayıs 2008
Mesajlar
509
Reaction score
1
sorun çözüldü şimdide sayfalama kategori adı yani title de kategori adı gözükmüyor ben ne kadar yaptıysam bir türlü gelmiyor kategori isimleri

şöyle bir şey yaptım sorun çözüldü

PHP:
<?php
include("vt.php");
$id=$_GET["id"];
$makalecek=mysql_fetch_array(mysql_query("select * from yazilar where id='$id'"));
$baslik=$makalecek['baslik'];
$makale=$makalecek['yazi_metni'];
$hit=$makalecek['hit'];
$katid=$makalecek['katid'];
$hitguncelle=mysql_query("update yazilar SET hit=hit+1 where id='$id'");
$katcek=mysql_fetch_array(mysql_query("select * from kategori where id='$katid'"));
$katadi=$katcek['katadi'];
?>

<title><?=$katcek[katadi];?></title>

<title><?php echo $katadi;?></title>

2 tane ayrı ayrı yaptım yine kategori adı gözükmüyor titlede bir tütlü uyarlayamadım gitti ayrıca ceviz,iyinet,r10 php bölümde aynı konu mevcuttur yardım talepde bulundum valla ne deyim bu 3 site olmazsa ne yapardım bilemiyorum iyiki varsınız..
 

Antika

0
İyinet Üyesi
Katılım
23 Aralık 2010
Mesajlar
451
Reaction score
18
PHP:
include("vt.php");
$id=$_GET["id"];
$makalecek = mysql_query("select * from yazilar where id='$id'");
$row = mysql_fetch_assoc($makalecek);
$baslik=$row['baslik'];
$makale=$row['yazi_metni'];
$hit=$row['hit'];
$katid=$row['katid'];
$hitguncelle = mysql_query("update yazilar SET hit=hit+1 where id='$id'");
$katcek = mysql_query("select * from kategori where id='$katid'");
$xow = mysql_fetch_assoc($katcek);
$katadi=$xow['katadi'];

böyle dene birde
 

CoLd!uX

0
İyinet Üyesi
Katılım
9 Mayıs 2008
Mesajlar
509
Reaction score
1
yine aynı değişen bir şey yok hocam kolay gelsin..
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
bu tarz problemlerde
var_dump($makalecek) yaparak ilk sorgudan ne aldigina bakip test edebilirsin. Koda bakarak sorun cozmek cogu zaman zordur.

Ek olarak, kullanicidan aldigin _GET degerini filtrelemen lazim. Direk sorguya koymussun ki SQL Injection saldirisina musaittir. Ya mysql escape fonksiyonuyla filtrelemen ya da, bu ornek icin, ID degeri sayi olmasi gerektigi icin !is_numeric() kontrolu ile filtrelemen yararli olacaktir.

Ikinci ek olarak iki sorgu tek sorguda birlestirilebilir orada.

SELECT y.baslik,y.yazi_metni,y.hit,k.katadi FROM yazilar y
INNER JOIN kategori k ON k.id=y.katid
WHERE y.id='{$id}'

Sorgularda direk query i fetch array icine almissin, onlari oradan cikartip

$q = mysql_query(sorgu);

if (!$q) echo 'hata olustu: '.mysql_error();

seklinde test edebilirsin. cok otomatik gidiyor kodun, herhangi bir filtreleme, yapilan islermlerin sonucunu kontrol etme yapmamissin hic.
 

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