24. august 2010 - 17:24
Der er
3 kommentarer og
1 løsning
Indsæt MySQL data i tables, ved brug af 'while'.
Hey.
Jeg har brug for at sætte en mængde forskellig data (som bliver trukket ud af MySQL), ind i forskellige tables. Jeg vil gerne have mine tables til at se ud som følger:
ID1 ID2 ID3
ID4 ID5 ID6 (Altså 3 gange <tr>)
ID7 ID8 ID9
.. osv. Lad os antage at hver "ID" afspejler en nyhed, og at der skal placeres mange af de "samme" informationer i hver nyhed; '$content', '$date', '$author' ... - You get the point.
Mit spørgsmål er selvfølgelig derfor; hvordan skriver jeg en kode, så at jeg få sat mine tables op med en forskellig nyhed i hver? :)
Her er forresten et eksempel på min kode:
if (mysql_num_rows($result) > 0) {
while($send = mysql_fetch_object($result)) {
echo 'Titlen er '.$send->title.'';
}
Sætter meget pris på eksempler af kode, da jeg stadig er ny til PHP. Og lad mig endelig vide, hvis i mangler noget information for at kunne hjælpe.
På forhånd tak.
24. august 2010 - 17:53
#1
$trc = 0;
echo "<table>";
if (mysql_num_rows($result) > 0) {
while($send = mysql_fetch_object($result)) {
if ($trc == 0) {
$tr = "<tr>\n";
}
elseif ($trc == 2) {
$tre = "\n</tr>\n";
} else {
$tr = "";
$tre = "";
}
echo $tr." <td>Titlen er ".$send->title."</td>".$tre;
$trc++;
}
echo "</table>";
Håber det virker... jeg har fejlet grumt i kodning det sidste stykke tid :P
24. august 2010 - 19:06
#4
Hmmm...
Ved nærmere eftertanke, mangler jeg at resette counteren, og så er der lige lidt problemer med at få afsluttet <tr> medmindre antallet af resultater altid er delelig med 3...
$trc = 0;
echo "<table>";
if (mysql_num_rows($result) > 0) {
while($send = mysql_fetch_object($result)) {
if ($trc == 0) {
$tr = "<tr>\n";
}
elseif ($trc == 2) {
$tre = "\n</tr>\n";
$trc = -1;
} else {
$tr = "";
$tre = "";
}
echo $tr." <td>Titlen er ".$send->title."</td>".$tre;
$trc++;
}
if ($trc != 0) { echo "\n</tr>\n"; }
echo "</table>";
Ovenstående smårettelser fikser fårhåbentligt de problemer