login  Naam:   Wachtwoord: 
Registreer je!
 Forum

While loop haalt niet alle queries (Opgelost)

Offline shonda - 22/03/2008 14:35 (laatste wijziging 22/03/2008 14:38)
Avatar van shondaLid Ik heb een while loop in gebruik om alle artikelen te laten zien die de gebruiker heeft geplaatst.

Echter laat de mysql_num_rows() zien dat er 3 artikelen door de gebruiker zijn geplaatst.

Maar de while loop laat er maar twee zien!
In de databasae staan er ook drie.

Link: http://www.stuff4all.nl/bta/bekijkprofiel.php?id=6

Wat gaat hier fout?

Lijn met mysql_num_rows():
  1. <tr>
  2. <td><strong>Stats: </strong></td>
  3. <td><a href="?id=<?php echo $leden['id'] ?>&articles=<?php echo $leden['id'] ?>">Articles(<?php echo mysql_num_rows($rart) ?>)</a></td>
  4. </tr>


Query:
  1. <?php
  2. $sqart = "SELECT * FROM artikelen WHERE inzender_id = ".$_GET['id'];
  3. $rart = mysql_query($sqart) or die(mysql_error());
  4.  
  5. $inz = mysql_fetch_assoc($rart);
  6. ?>


En de while loop:
  1. if($_GET['articles'] && $inz['inzender_id'] == $_GET['id'])
  2. {
  3. echo "<table border='0' style='border: 1px solid #000000'>";
  4. while($lijst = mysql_fetch_object($rart))
  5. {
  6. echo "<tr>";
  7. echo "<td>".$lijst->categorie."</td>";
  8. echo "<td><a href=article.php?id=".$lijst->id.">".$lijst->titel."</a></td>";
  9. echo "</tr>";
  10. }
  11. echo "</table>";
  12. }


Iemand die het ziet?

2 antwoorden

Gesponsorde links
Offline Koen - 22/03/2008 14:57
Avatar van Koen PHP expert Dit komt omdat je eerst mysql_fetch_assoc doet (haalt de eerste rij op..), en daarna mysql_fetch_object => de andere twee.
De gemakkelijkste oplossing is:
  1. $rart2 = mysql_query($sqart) or die(mysql_error());
  2. if($_GET['articles'] && $inz['inzender_id'] == $_GET['id'])
  3. {
  4. echo "<table border='0' style='border: 1px solid #000000'>";
  5. while($lijst = mysql_fetch_object($rart2))
  6. {
  7. echo "<tr>";
  8. echo "<td>".$lijst->categorie."</td>";
  9. echo "<td><a href=article.php?id=".$lijst->id.">".$lijst->titel."</a></td>";
  10. echo "</tr>";
  11. }
  12. echo "</table>";
  13. }
Offline shonda - 22/03/2008 15:01
Avatar van shonda Lid Ja dat werkt! Geweldig, bedankt! 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.212s