Türkiye'nin En Eski Webmaster Forumu İyinet'e Hoşgeldiniz!

Acil yardım.. hata: Warning: mysql_num_rows()

smilesky

0
Onaylı Üye
Üye
Katılım
12 Ağustos 2008
Mesajlar
6
Açılan Konu
1
Tepki puanı
0
(Bu başlıktan var mı bilemiyorum.Forumda arama seçeneğini bulamadığım için konuyu bu başlıkla açtım.)

Hatanın yazımdan kaynaklandığı söyleniyor ama ben birşey bulamıyorum.

Ağağıdakileri yazdığımda 14. satır olan,satırsayısınız aldığım yerde hata veriyor.Hata bu konuda da belirtilen: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in G:\wamp\www\site\yonetici\ogrenci_duzelt.php on line 14 hatası.

$quye=mysql_query("SELECT * FROM ".$table_uyeler." WHERE kadi='".$ogr_kadi."' or soyadi='".$ogr_soyadi."' or tckimlikno='".$ogr_tckimlikno."'") or die(mysql_error());

$satirsayisi=mysql_num_rows($guye);



Print ile sorgumu ekrana basıp, çıktısını phpMyAdminde çalıştırdığımda hiçbir sorun yaşamıyorum. Neden kaynaklanıyor, yardımcı olursanız sevinirim.
 

alorak

0
Onaylı Üye
Üye
Katılım
14 Ekim 2005
Mesajlar
2,035
Açılan Konu
89
Tepki puanı
1
Konum
Ankara
Sorun DB den veri çekmekle alakalı. Yani
$quye=mysql_query("SELECT * FROM ".$table_uyeler." WHERE kadi='".$ogr_kadi."' or soyadi='".$ogr_soyadi."' or tckimlikno='".$ogr_tckimlikno."'") or die(mysql_error());

Burdaki şeye bağlanamıyor sanırım.Değişkenleri kontrol edersen daha mantıklı olur..
 

smilesky

0
Onaylı Üye
Üye
Katılım
12 Ağustos 2008
Mesajlar
6
Açılan Konu
1
Tepki puanı
0
Veri çekmekle alakalı olabilir dediğiniz gibi ama elimdeki yazdığım cümlede hiçbir hata bulamıyorum.

Print ile o cümleyi yazdırdığımda şöyle bir çıktı geliyor:

SELECT * FROM uyeler WHERE kadi='smilesky' or soyadi='' or tckimlikno=''

Bu çıktıyı veritabanında denediğimde hata vermiyor.
 

alorak

0
Onaylı Üye
Üye
Katılım
14 Ekim 2005
Mesajlar
2,035
Açılan Konu
89
Tepki puanı
1
Konum
Ankara
$ogr_soyadi ve $ogr_tckimlikno bunların değerlerini bulamıoyor mu yani? Boş dediniz de.. Ayrıca "or" komutunu orda ne mantıkla kullandınız?
 

smilesky

0
Onaylı Üye
Üye
Katılım
12 Ağustos 2008
Mesajlar
6
Açılan Konu
1
Tepki puanı
0
Açıklamadığım için anlaşılmaması normal tabi..

Yönetici 3 kutudan birisine değer girerek arama yapabiliyor.

Soyadı:
Tc Kimlik:
Kullanıcı Adı:

or kullanmamdaki amaç, hangisini girdiyse, onlara göre arama yapmasını sağlamak.

Örnek cümlede, sadece kuladina göre arama yapılmış.O nedenle diğerleri boş.
 

alorak

0
Onaylı Üye
Üye
Katılım
14 Ekim 2005
Mesajlar
2,035
Açılan Konu
89
Tepki puanı
1
Konum
Ankara
Or kısımlarını silerek sadece kul adı ile arama yapınca da aynı hata veriyor mu denediniz mi?
 

eRLySL

0
Onaylı Üye
Üye
Katılım
25 Mart 2008
Mesajlar
424
Açılan Konu
12
Tepki puanı
1
PHP:
<?php 


$kadi = $_POST[kadi];
$soyadi = $_POST[soyadi];
$tckimlikno = $_POST[tckimlikno];

if($kadi!="") $sor = "kadi";
if($soyadi!="") $sor = "soyadi";
if($tckimlikno!="") $sor = "tckimlikno";

if($kadi!="" && $soyad!="" && $tckimlikno!="") {
header("location:gerigit.php");
exit;
}

if($_POST[kadi]!="") $bunu = $_POST[kadi];
if($_POST[soyadi]!="") $bunu = $_POST[soyadi];
if($_POST[tckimlikno]!="") $bunu = $_POST[tckimlikno];

$sql = mysql_query("select * from table where $sor='$bunu'");


?>

Kodlar denenmemiştir. Birden fazla sorgu girmeyi kısıtlarsanız, bu kodlarla istediğinizi yapabilirsiniz.
 
J

jetblack

Misafir
Hatanın kaynağı SQL sorgunuz ile alakalı değildir.

Hataya neden olan satır şudur:
PHP:
$satirsayisi=mysql_num_rows($guye);
$quye yerine $guye yazılmış.
$guye diye bir Recordset olmadığı için fonksiyon hata veriyor.

İyi çalışmalar.
 

Bumber

0
Onaylı Üye
Üye
Katılım
15 Şubat 2008
Mesajlar
216
Açılan Konu
0
Tepki puanı
1
Konum
Istanbul
$quye=.......

$satirsayisi=mysql_num_rows($guye);

birisinde Q harfi Birisinde G harfi :)

ps: benden bir önceki arkadaşın mesajını görmemiştim, konuyu incelerken attı herhalde :(
 
Üst