[PHP] mysql $result niet leeg?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb het onderstaande stukje code om te kijken of er vandaag iemand jarig is. Wanneer er idd iemand jarig is, is er geen probleem. Maar wanneer er niemand jarig is geeft hij niks terug, ook geen "Vandaag is er niemand jarig". Wanneer ik een echo "$result"; toevoeg geeft php een "Resource id #3" melding, maar waarom is $result dan niet gewoon leeg?
Heb ook al andere vorm geprobeerd: if isset ($result) etc. Maar dan blijft het probleem hetzelfde.

PHP:
1
2
3
4
5
6
7
8
9
10
$vandaag = date("dm");
$query = "select * FROM verjaardag WHERE dagmaand = $vandaag ORDER BY jaar ASC";
$result = mysql_query($query) or die("Vandaag is er niemand jarig.");

while($line = mysql_fetch_array($result))
{
$jaar = date ("Y");
$leeftijd = $jaar - $line["jaar"];
echo "<td class=jarige><b>" . $line["naam"] . "</b> ($leeftijd)<br>Van harte gefeliciteerd!<br></td>\n";
}

Acties:
  • 0 Henk 'm!

Verwijderd

Zet boven je while loop eens een if (mysql_num_rows($result) > 0) o.i.i.d.r.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Zo simpel... |:(

Dank dank! _/-\o_

Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

PHP:
1
2
3
4
5
6
7
if (mysql_num_rows ($result)) {
   while ($row = mysql_num_rows ($result) {
      // doe spul
   }
} else {
   echo 'Geen resultaten gevonden.';
}


Jij probeert een error af te vangen (die uiteraard niet plaatsvindt, want je krijgt gewoon een lege resultset terug). Verder is het niet handig om die("melding") te gebruiken, want dan wordt je html dus halverwege afgebroken ;)