mysql_num_rows() en mysql_fetch_row() errors

Status
Niet open voor verdere reacties.

yveshessels

Gebruiker
Lid geworden
9 jun 2007
Berichten
51
Ik ben begonnen met een cursus php, maar ik krijg deze errors niet weg:

Code:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\php-oefeningen\db2_verwerk.php on line 21

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\php-oefeningen\db2_verwerk.php on line 22

Hier is de code:

Code:
<html>
<head>
	<title>Bieren van de soort: <?= $_POST["soort"]; ?></title>
	<hr />
	<table border="1">
		<tr>
			<th>Bier</th>
			<th>% alcohol</th>
		</tr>
		<?php
			$soort = $_POST["soort"];
			$sqltekst = "select Naam, Alcohol from bieren";
			if ($soort != "alles") {
				$sqltekst .="where soortnr = $soort";
			}
			$sqltekst .= "order by naam";
			$db = mysql_connect("localhost","yves","paswoord");
			mysql_select_db("bieren2000", $db)
									or die("Kan database bieren niet openen" . mysql_error());
			$resultaat = mysql_query($sqltekst, $db);
			print ("<tr><th colspan=\"2\">Aantal bieren : " . mysql_num_rows('$resultaat') . "</th></tr>");
			while (list($naam, $alcohol) = mysql_fetch_row('$resultaat')) {
				print ("<tr><td>" . stripslashes($naam) . "</td><td>" . stripslashes($alcohol) . "</td></tr>");
			}
			mysql_close();
		?>
	</table>
	<br /><br />
	<a href="db2.php">Herbegin</a>
</head>
</html>

Het is al een oude cursus, maar normaal gezien gaan die functies ook bij php 5

Ik heb PHP Version 5.2.5

Iemand die mij uit de nood kan helpen?
 
Je hebt 'n paar aanhalingstekens staan waar die niet horen:

PHP:
print ("<tr><th colspan=\"2\">Aantal bieren : " . mysql_num_rows('$resultaat') . "</th></tr>");

moet zijn

PHP:
print ("<tr><th colspan=\"2\">Aantal bieren : " . mysql_num_rows($resultaat) . "</th></tr>");

en de regel daarna is nu

PHP:
while (list($naam, $alcohol) = mysql_fetch_row('$resultaat')) {

maar moet zijn

PHP:
while (list($naam, $alcohol) = mysql_fetch_row($resultaat)) {
 
Laatst bewerkt:
dat had ik net ook gedaan, maar daar zit de fout niet :s

Ik heb het nog eens goed bekeken en er zat een fout in de mysql-lijn

Ik moest een paar spaties toevoegen, anders klopte de mysql-instructie niet :

Code:
$sqltekst = "select Naam, Alcohol from bieren";
			if ($soort != "alles") {
				$sqltekst .=" [B][U]where[/U][/B] soortnr = $soort";
			}
			$sqltekst .= " [U][B]order[/B][/U] by naam";

Ik heb voor de where en voor de order een spatie ingevoegd en het werkt ;)

Bedankt voor de hulp en de snelle reactie, ik zal er in het vervolg ook op letten dat ik geen onnodige ' plaats
 
Heel scherp, het was me niet eens opgevallen :D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan