PHP mysql_fetch değerleri dönmüyor

2 Cevap php

Bu işe yaramazsa neden PHP ile oldukça yeni olan, herhangi bir çözüm bulamıyor. Sorgu Tamam ve kaynak döndürülür. Fetch_assoc değerleri yazmıyor Ama neden bilmiyorum. Teşekkürler

$query=sprintf("SELECT ID,NAME FROM USERS WHERE PASS='%s' AND NAME='%s'",mysql_real_escape_string($p),mysql_real_escape_string($n));

$result=mysql_query($query);

if ($result)
 {

while ($row = mysql_fetch_assoc($result)) {
    echo $row['ID'];
    echo $row['NAME'];
}
}

}

2 Cevap

Ile başlamak için bazı basit sorular:

  • Eğer döner görmek için var_dump ($ satır) yaptınız mı?
  • Eğer belirttiğiniz adı ve parola veritabanında aslında emin misiniz?
  • Eğer (sorguda değil) veritabanındaki şifreyi şifreli mi?
  • Eğer geçerli bir veritabanı bağlantısı var? (Ben cevap evet biliyorum ama bir çift kontrol kimseye zarar ve belki bazı baş ağrısı tasarruf olmaz)

Edit:

  • Var_dump için man sayfasına bir bağlantı eklendi.
  • Daha önce önerilen kullanım mysql_error() yanlış giden ne bulmak için. (Basit bir eko mysql_error (); $ sonucundan sonra = mysql_query ($ sorgu); yeterli olacaktır)
  • down bir şey kaçması ile yanlış giderse görmek için sorgu yazmak.

Eğer satır geri emin misiniz? Sen mysql_num_rows($result) sayısını elde etmek için kullanabilirsiniz. Senin kod bakarak düşünebilirsiniz tek şey, düz metin şifre geçiyoruz ve DB sürüm MD5 ya da bir şey olmasıdır.