Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Warning: mysql_num_rows()
Tr0k
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 15.06.2008

Ostrzeżenie: (0%)
-----


Witam! Mam problem z funkcją mysql_num_rows().

Mam taki kod:

Kod
<?php

mysql_connect('localhost','root','haslo');

$query = mysql_query("SELECT * FROM `users` WHERE `user`='".$login."' AND `pass`='".$haslo."';");
 
if(mysql_num_rows($query) == 1) {}

?>


Wywala mi takie ostrzeżenie: 

Kod
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\xampp\htdocs\test\strona\kod.php on line 6


Dodam, że kod uruchamiam xampp'em.

Proszę o pomoc w rozwiązaniu problemu.

Ten post edytował Tr0k 15.06.2008, 13:20:22
Go to the top of the page
+Quote Post
matx132
post
Post #2





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


a gdzie wybierasz nazwe bazy??
select_db?
Go to the top of the page
+Quote Post
sobstel
post
Post #3





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Na 99% problemem jest to, że zapytanie nie zostało wykonanie poprawne (być może właśnie przez to, że nie masz wybranej bazy - jak zauważył @matx132). Po wykonaniu zapytania sprawdzaj co zawiera $query (błędy w zapytaniu spowodują, że będzie zaweirać wartość FALSE i dlatego mysql_num_rows() wyrzuca warning, ponieważ on się spodziewa poprawnego resource) albo jeszcze lepiej sprawdź czy nie ma błędów używając mysql_error oraz mysql_errno.

Polecam PDO i wyjątki. Obsługa błędów wtedy z lekka prostsza.


--------------------
"If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org
Go to the top of the page
+Quote Post
matx132
post
Post #4





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


po sprawdzeniu takie coś działa
Kod
<?php
$con = mysql_pconnect("localhost","root","krasnal");
mysql_select_db("te",$con);
$login='test';
$haslo='test';
$query = mysql_query("SELECT `user` FROM `users` WHERE `user`='test' AND `pass`='test' ") or die(mysql_error());
$a=mysql_num_rows($query);
if($a == 1) {}

?>


i zawnsze najlepiej dodawać or die(mysql_error());

Ten post edytował matx132 15.06.2008, 13:52:22
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 03:30