04. august 2008 - 02:01
Der er
9 kommentarer og 1 løsning
Problemer med tabel, pga. mySQL udprint
Hej med jer, Jeg har en tabel som viser nogle data fra en mySQL database. Men eftersom jeg er PHP-nybegynder, forstår jeg ikke at kode en tabel ind i en echo/print. Kan i hjælpe mig med det, for det ser grimt ud når tabellen ikke er kørende i en echo. Koden ser således ud nu: <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="tekst-smaat"> <tr> <td width="35%" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">Fulde navn </td> <td width="12%" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">Alder</td> <td width="24%" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">By</td> <td width="29%" height="18" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">Personen kender...</td> </tr> <tr> <td align="left" valign="top" id="padding-leftx2"> <?php $connect = mysql_connect("XXX","XXXX","XXXX"); $db = mysql_select_db("XXXX"); $sql = mysql_query("SELECT * FROM `gaestelisten` WHERE status = 1 ORDER BY city asc")or die("Fejl " . mysql_error()); while($out = mysql_fetch_array($sql)){ ?> <? echo $out['navn'] ?> </td> <td align="left" valign="top" id="padding-leftx2"> <? echo $out['alder']; ?></td> <td align="left" valign="top" id="padding-leftx2"> <? echo $out['city']; ?></td> <td height="18" align="left" valign="top" id="padding-leftx2"><? echo $out['kender']; ?></td> </tr> <tr> <td align="left" valign="top" id="padding-leftx2"><? } ?> <br /></td> <td align="left" valign="top" id="padding-leftx2"> </td> <td align="left" valign="top" id="padding-leftx2"> </td> <td height="18" align="left" valign="top" id="padding-leftx2"> </td> </tr> </table> ... Håbløs kode :)
Annonceindlæg fra HP
04. august 2008 - 09:12
#1
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="tekst-smaat"> <tr> <td width="35%" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">Fulde navn </td> <td width="12%" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">Alder</td> <td width="24%" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">By</td> <td width="29%" height="18" align="left" valign="top" bgcolor="#EDDEAD" class="tekst-smaatblaat" id="padding-leftx2">Personen kender...</td> </tr> <?php $connect = mysql_connect("XXX","XXXX","XXXX"); $db = mysql_select_db("XXXX"); $sql = mysql_query("SELECT * FROM `gaestelisten` WHERE status = 1 ORDER BY city asc")or die("Fejl " . mysql_error()); while($out = mysql_fetch_assoc($sql)){ echo "<tr>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['navn']}</td>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['alder']}</td>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['city']}</td>"; echo "<td height="18" align='left' valign='top' id='padding-left2x'>{$out['kender']}</td>"; echo "</tr>"; } ?> </table>
04. august 2008 - 15:58
#2
Hvordan kan jeg egentlig gøre hver anden række en anden farve?
04. august 2008 - 16:09
#3
Men altså, tabellen ser fin ud. Men hvorfor fungere "id='padding-left2x'" ikk?
04. august 2008 - 16:11
#4
Det var jo et helt andet spørgsmål :) <?php $connect = mysql_connect("XXX","XXXX","XXXX"); $db = mysql_select_db("XXXX"); $sql = mysql_query("SELECT * FROM `gaestelisten` WHERE status = 1 ORDER BY city asc")or die("Fejl " . mysql_error()); $bgclass = ($bgclass == 'odd' ? 'even' : 'odd'); while($out = mysql_fetch_assoc($sql)){ echo "<tr class='{$bgclass}'>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['navn']}</td>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['alder']}</td>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['city']}</td>"; echo "<td height="18" align='left' valign='top' id='padding-left2x'>{$out['kender']}</td>"; echo "</tr>"; } ?> Derudover laver du to classes i dit style sheet: .odd { background-color: #ffc; } .even { background-color: #cfc; }
04. august 2008 - 16:12
#5
Hvad vil du have at det skulle gøre? Dels så bruger du id=..., hvilket ikke er "legalt" da du bruger det samme navn til alle id'er (de skal være unikke). Men det jeg tror du vil lave er: ---- echo "<td align='left' valign='top' style='padding-left: 2px;'>{$out['navn']}</td>"; ---- Så giver det i hvert fald mere mening.
04. august 2008 - 16:30
#6
Angående det med hver anden række i en farve. echo "<td align='left' valign='top' id='padding-left2x'>{$out['navn']}</td>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['alder']}</td>"; echo "<td align='left' valign='top' id='padding-left2x'>{$out['city']}</td>"; echo "<td height="18" align='left' valign='top' id='padding-left2x'>{$out['kender']}</td>"; echo "</tr>"; Dette gør ikke at der er en række for hver 4. sql-udtræk. Hvis du forstår? For hvis jeg uploader og ser på nettet, så er alt bare i en farve.
04. august 2008 - 16:44
#7
Hvad står der i den <tr>-linje som du har udeladt i ovenstående?
04. august 2008 - 17:08
#8
Dette :) ------------ echo "<tr class='{$bgclass}'>"; -------------
04. august 2008 - 20:00
#9
Du skal nok lige rykke linjen: $bgclass = ($bgclass == 'odd' ? 'even' : 'odd'); ind i while løkken, så det bliver til noget ala : <?php $connect = mysql_connect("XXX","XXXX","XXXX"); $db = mysql_select_db("XXXX"); $sql = mysql_query("SELECT * FROM `gaestelisten` WHERE status = 1 ORDER BY city asc")or die("Fejl " . mysql_error()); while($out = mysql_fetch_assoc($sql)){ $bgclass = ($bgclass == 'odd' ? 'even' : 'odd'); echo "<tr class='{$bgclass}'>"; echo "<td align='left' valign='top' >{$out['navn']}</td>"; echo "<td align='left' valign='top' >{$out['alder']}</td>"; echo "<td align='left' valign='top' >{$out['city']}</td>"; echo "<td height="18" align='left' valign='top' >{$out['kender']}</td>"; echo "</tr>"; } ?> Og igen som det er sagt før, INGEN html elementer med det samme id på samme side!
11. marts 2011 - 13:45
#10
Svar...
Vi tilbyder markedets bedste kurser inden for webudvikling