While
Nu krijg ik dus 10x de eerste record.
Maar ik wil gewoon 10 verschillende records..
Ik weet dat dit fout is maar ik kan nergens vinden hoe het wel moet...
BVD
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$result = mysql_query("SELECT * FROM mail WHERE ontvanger = '$inlognaam'");
$row = mysql_fetch_assoc($result);
$verzender = $row['verzender'];
$onderwerp = $row['onderwerp'];
$datum = $row['datum'];
$aantal = 1;
while( $aantal <= 10 ){
echo $verzender;
echo $onderwerp;
echo $datum;
$aantal++ ;
}
?>
$result = mysql_query("SELECT * FROM mail WHERE ontvanger = '$inlognaam'");
$row = mysql_fetch_assoc($result);
$verzender = $row['verzender'];
$onderwerp = $row['onderwerp'];
$datum = $row['datum'];
$aantal = 1;
while( $aantal <= 10 ){
echo $verzender;
echo $onderwerp;
echo $datum;
$aantal++ ;
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Jeroen Brandsma
Wat is er steeds hetzelfde dan want ik neem aan dat er dan ook bepaalde data in velden van de database hetzelfde zijn ?
Dat komt eruit als ik hem run maar dat is alleen de eerste er staan nog veel meer records
Gewijzigd op 01/01/1970 01:00:00 door Jeroen Brandsma
het fetchen moet je dus in de while-lus doen, anders kom je nooit en te nimmer bij het volgende resultaat:
Jouw $verzender slaat nergens op, dat is niet meer dan een kopietje van $row['verzender']. Niet gebruiken dus, gebruik gewoon het origineel. Daar is toch niets mis mee?
Jeroen schreef op 30.01.2009 14:27:
HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00HenkTest0000-00-00 00:00:00
Dat komt eruit als ik hem run maar dat is alleen de eerste er staan nog veel meer records
Dat komt eruit als ik hem run maar dat is alleen de eerste er staan nog veel meer records
Probeer eens GROUP BY te gebruiken;
http://www.w3schools.com/sql/sql_groupby.asp
Code (php)
1
2
3
4
5
2
3
4
5
<?PHP
$res = mysql_query("SELECT * FROM mail WHERE ontvanger = '$inlognaam' GROUP BY ontvanger");
$row = mysql_fetch_array($res);
?>
$res = mysql_query("SELECT * FROM mail WHERE ontvanger = '$inlognaam' GROUP BY ontvanger");
$row = mysql_fetch_array($res);
?>
Hartelijke dank het werkt!
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
$result = mysql_query("SELECT * FROM mail WHERE ontvanger = '$inlognaam'");
while($row = mysql_fetch_assoc($result)){
echo $row['verzender'];
echo $row['onderwerp'];
echo $row['datum'];
}
?>
$result = mysql_query("SELECT * FROM mail WHERE ontvanger = '$inlognaam'");
while($row = mysql_fetch_assoc($result)){
echo $row['verzender'];
echo $row['onderwerp'];
echo $row['datum'];
}
?>
edit:
Hierbij kan je best ook eerst controleren of je wel resultaat hebt.
Gewijzigd op 01/01/1970 01:00:00 door Mr.Moe
Jeroen schreef op 30.01.2009 14:36:
Hartelijke dank het werkt!
Geen probleem, lees eens alle beginselen van php/mysql door, dit soort dingen moet je weten ;)
GROUP BY? Hebben jullie wel enig idee waar GROUP BY voor is bedoeld? Een complete blunder om hier GROUP BY te gaan gebruiken, er is hier helemaal geen sprake van groepjes data waar je eigenschappen van opvraagt. Er is sprake een fetch-functie op een verkeerde plek...
Jeroen schreef op 30.01.2009 14:36:
Hopelijk ben je niet in de GROUP BY gestonken, dat is echt hartstikke fout.Hartelijke dank het werkt!
pgFrank schreef op 30.01.2009 14:37:
GROUP BY? Hebben jullie wel enig idee waar GROUP BY voor is bedoeld? Een complete blunder om hier GROUP BY te gaan gebruiken, er is hier helemaal geen sprake van groepjes data waar je eigenschappen van opvraagt. Er is sprake een fetch-functie op een verkeerde plek...
Voor zover ik kan lezen wil hij elke naam maar 1x laten voorkomen ...?
Ohh nee, sorry verkeerd gelezen...
Het is idd
while($results=$mysql_fetch_assoc($result)){echo$results['login'];}
Gewijzigd op 01/01/1970 01:00:00 door Jasper Sni
Jasper schreef op 30.01.2009 14:38:
Nee, er werd maar 1x gefetcht.Voor zover ik kan lezen wil hij elke naam maar 1x laten voorkomen ...?
Wanneer je namen maar 1x in de resultaten wilt hebben, dan ga je met DISTINCT aan de slag. Dat is heel wat anders dan GROUP BY.
"maak een groep" en "geef een uniek resultaat" zijn 2 totaal verschillende dingen die je niet lukraak kunt kiezen. Ze doen andere dingen.
pgFrank schreef op 30.01.2009 14:42:
Wanneer je namen maar 1x in de resultaten wilt hebben, dan ga je met DISTINCT aan de slag. Dat is heel wat anders dan GROUP BY.
"maak een groep" en "geef een uniek resultaat" zijn 2 totaal verschillende dingen die je niet lukraak kunt kiezen. Ze doen andere dingen.
Jasper schreef op 30.01.2009 14:38:
Nee, er werd maar 1x gefetcht.Voor zover ik kan lezen wil hij elke naam maar 1x laten voorkomen ...?
Wanneer je namen maar 1x in de resultaten wilt hebben, dan ga je met DISTINCT aan de slag. Dat is heel wat anders dan GROUP BY.
"maak een groep" en "geef een uniek resultaat" zijn 2 totaal verschillende dingen die je niet lukraak kunt kiezen. Ze doen andere dingen.
Ja ja, verkeerd gelezen, lees edit hierboven ;)
Jasper schreef op 30.01.2009 14:37:
Geen probleem, lees eens alle beginselen van php/mysql door, dit soort dingen moet je weten ;)
Jeroen schreef op 30.01.2009 14:36:
Hartelijke dank het werkt!
Geen probleem, lees eens alle beginselen van php/mysql door, dit soort dingen moet je weten ;)
Klopt dit moet ik eigenlijk ook weten maar het was een beetje weggezaktXD