For loop
Ik gebruik nu deze code voor mijn for-loop:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
for($i = 1; $i <= $aantal; $i++)
{
$sql3 = "SELECT * FROM shoutbox WHERE vangebruiker='".$vangebruiker."' && id='".$i."'";
$resultaat3 = mysql_query($sql3) OR die ("Kon geen verbinding maken met MySQL");
$shout = mysql_fetch_object($resultaat3);
?>
for($i = 1; $i <= $aantal; $i++)
{
$sql3 = "SELECT * FROM shoutbox WHERE vangebruiker='".$vangebruiker."' && id='".$i."'";
$resultaat3 = mysql_query($sql3) OR die ("Kon geen verbinding maken met MySQL");
$shout = mysql_fetch_object($resultaat3);
?>
<p><b></b><br></p>
Nu komen de nieuwste berichten onderaan te staan. Maar ik wil dat ze bovenaan komen te staan. Ik heb ook al geprobeerd $i++ door $i-- te vervangen maar dit werkt niet. Iemand een idee?
Gewijzigd op 07/03/2012 18:50:58 door Yves Dumoulin
$sql3 = "SELECT * FROM shoutbox WHERE vangebruiker='".$vangebruiker."' && id='".$i."' ORDER BY id DESC";
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
//eigenlijhk geen * gebruiken
$sql3 = "SELECT * FROM shoutbox WHERE
vangebruiker='".$vangebruiker." AND id>=1 AND id<=" . $aantal .
PHP_EOL . "ORDER BY id DESC"
?>
//eigenlijhk geen * gebruiken
$sql3 = "SELECT * FROM shoutbox WHERE
vangebruiker='".$vangebruiker." AND id>=1 AND id<=" . $aantal .
PHP_EOL . "ORDER BY id DESC"
?>
Daarna in een lus de resultaten doorlopen
Gewijzigd op 07/03/2012 19:40:15 door Ger van Steenderen
Ten tweede sorteren van records doe je met ORDER BY
Ten derde geen * gebruiken, maar kolommen die je nodig hebt selecteren.
Ten vierde geen quotes om integer waardes in je SQL statement
Ten vijfde geen tig queries draaien als je gewoon een query kunt gebruiken.
Al met al kom je dan bij de volgende query die je maar een keer hoeft te draaien:
en als ik 20x refresh komt er 20x iets leegs te staan result kijk je voorbeeld pagina
Gewijzigd op 07/03/2012 19:44:11 door Reshad F
Nee, weet ik, ik heb nog geen code toegevoegd dat hij automatisch refresht
er staan 6 berichten maar hij geeft aan 22
EDIT
Oh, laat maar, ik heb het al gevonden! Toch bedankt voor jullie hulp!
Gewijzigd op 07/03/2012 19:51:22 door Yves Dumoulin
dat komt omdat je niet goed controleert
Ja, daar ga ik nu aan werken
Zou je onderhand eens niet stoppen met niet relevante reacries?