Witam, mam oto taki kod, służący do rejestracji.
<?php
include("config.php");
mysql_connect($db_serwer,$db_user,$db_pass)or die("Nie mozna nawiazac polaczenia z baza"); //polaczenie z baza danych
mysql_select_db($db_name)or die("Wystapil blad podczas wybierania bazy danych");
function ShowForm($komunikat=""){ //funkcja wyswietlajaca formularz rejestracyjny
echo "$komunikat<br>";
echo "<form action='rejestruj.php' method=post>";
echo "Login: <input type=text name=login><br>";
echo "Haslo: <input type=text name=haslo><br>";
echo "<input type=hidden value='1' name=send>";
echo "<input type=submit value='Zarejestruj mnie'>";
echo "</form>";
}
?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
<head>
<title>Formularz rejestracyjny</title>
</head>
<body>
<?php
if($_POST["send"]==1){ //sprawdzanie czy formularz zostal wyslany
if(!empty($_POST["login"]) && !empty($_POST["haslo"])){ //oraz czy uzupelniono wszystkie dane
if(mysql_num_rows(mysql_query("select * from users where user_login='".htmlspecialchars($_POST["login"]."'"))))ShowForm("Uzytkownik o podanym loginie juz istnieje!!!"); // sprawdzanie czy uzytkownik o podanej nazwie juz istnieje
else{
mysql_query("insert into users values(NULL, '".htmlspecialchars($_POST["login"])."', '".htmlspecialchars(md5($_POST["haslo"]))."')"); // zapisywanie rekordu do bazy
echo "Rejestracja przebiegla pomyslnie. Mozesz teraz przejsc do <a href='index.php'>strony glównej</a> i sie zalogowac.";
}
}
else ShowForm("Nie uzupelniono wszystkich pól!!!");
}
else ShowForm();
mysql_close(); //zamykanie polaczenia z baza
?>
</body>
</html>
Jeszcze nie jest skończony, ale pod dodaniu usera do bazy, i później podczas próby logowania wyskakuje :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Programy\WebServ\httpd-users\php\rejestruj.php on line 27
Rejestracja przebiegla pomyslnie. Mozesz teraz przejsc do strony glównej i sie zalogowac.
Jak pozbyć sie tego Warninga ? nie jestem specem od php ;/ wiec pojecia ne mam. Dodam ze logowanie przebiega poprawnie. Testuje na WebServ z MySql 5.0.46 / PHP 5.2.5 / Apache 2.2.6