Witam, chce napisac prosty formularz wyszukiwania (PHP+HTML) ktory laczac sie z baza danych mysql na localhoscie da odpowiednie wyniki.Oto moje pliki:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>formularz</title>
</head>
<body>
<form action="rezultaty.php" method="post">
<select name="metoda_szukania">
<option value="imie">Imie</option>
<option value="nazwisko">Nazwisko</option>
</select>
<br />
Wprowadz poszukiwane wyrazenie:
<input name="wyrazenie" type="text" size="40">
<br />
<input type="submit" name="submit" value="szukaj">
</form>
</body>
</html>
a tu plik z rezultatami:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>wynik wyszukiwania</title>
</head>
<body>
<?php
$metoda_szukania=$_POST['metoda_szukania'];
$wyrazenie = trim($_POST['wyrazenie']);
$wyrazenie = trim($wyrazenie);
if(!get_magic_quotes_gpc())
{
$metoda_szukania = addslashes($metoda_szukania);
$wyrazenie = addslashes($wyrazenie);
}
@ $db = new mysqli('localhost','root','qwerty','wiezienie');
if(mysqli_connect_errno())
{
echo "Blad polaczenia";
exit;
}
$zapytanie = "select * from wiezienie where".$metoda_szukania."like '%".$wyrazenie."%'";
$wynik = mysqli_query($db,$zapytanie);
$ile_znalezionych = mysqli_num_rows($wynik);
for($i=0;$i<$ile_znalezionych;$i++)
{
$wiersz = mysqli_fetch_assoc($wynik);
echo "<p><strong>".($i+1);
echo stripslashes($wiersz['imie']);
echo "</strong><br />";
echo stripslashes($wiersz['nazwisko']);
echo "</strong><br />";
echo stripslashes($wiersz['nr_celi']);
echo "</p>";
}
mysqli_free_result($wynik);
mysqli_close($db);
?>
</body>
</html>
Pojawiaja mi sie błędy w linijkach z funkcjami:
mysqli_free_result($wynik);
Oraz
$ile_znalezionych = mysqli_num_rows($wynik);
Dokladna tresc jest taka:
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\rezultaty.php on line 30
Warning: mysqli_free_result() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\rezultaty.php on line 44
Co jest nie tak? Korzystam z xamppa w wersji 1.7.4
Z gory dziekuje za pomoc.