/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
3-spaltet mysql-resultat i php
Fra : Torben Heikel Vinthe~


Dato : 23-12-03 17:03

Kære NG

Hvordan kan man "spytte" et mysql-resultat ud i en tabel med fx 3 kolonner,
i stedet for nedenstående som giver ét resultat pr. tabelrække?

$mysql_result = mysql_query("SELECT * FROM tabel", $mysql_link);
while ($data = mysql_fetch_array($mysql_result)) {
echo "<tr><td>$data[navn]</td></tr>";
}

På forhånd tak og god jul!
Torben Heikel Vinther



 
 
Jonas Delfs (23-12-2003)
Kommentar
Fra : Jonas Delfs


Dato : 23-12-03 17:45

"Torben Heikel Vinther" <sopper@mail.dk> skrev i en meddelelse
news:3fe8678f$0$29372$edfadb0f@dread15.news.tele.dk...
> Hvordan kan man "spytte" et mysql-resultat ud i en tabel med fx 3
kolonner,
> i stedet for nedenstående som giver ét resultat pr. tabelrække?

Opgavens komplexitet kommer meget an på dine krav. Skal resultaterne
præsenteres hver sin række? Eller må de godt være i samme tabel-felt? Hvad
er kravene til sortering?

--
Mvh. Jonas Delfs
Freelance webprogrammør: http://delfs.dk



Torben Heikel Vinthe~ (24-12-2003)
Kommentar
Fra : Torben Heikel Vinthe~


Dato : 24-12-03 08:16

"Jonas Delfs" <jonas@NOSPAMdelfs.dk> skrev i en meddelelse
news:bs9rbn$sge$1@sunsite.dk...
> Opgavens komplexitet kommer meget an på dine krav. Skal resultaterne
> præsenteres hver sin række? Eller må de godt være i samme tabel-felt? Hvad
> er kravene til sortering?

Resultaterne skulle meget gerne præsenteres i hver sin tabelcelle fordelt
over 3 kolonner:
| A | B | C |
-----------
| D | E | F |
osv.
Mht. sortering skal de blot sorteres efter navn.



Dan Molberg (24-12-2003)
Kommentar
Fra : Dan Molberg


Dato : 24-12-03 08:49

Torben Heikel Vinther wrote:
> "Jonas Delfs" <jonas@NOSPAMdelfs.dk> skrev i en meddelelse
> news:bs9rbn$sge$1@sunsite.dk...
>> Opgavens komplexitet kommer meget an på dine krav. Skal resultaterne
>> præsenteres hver sin række? Eller må de godt være i samme
>> tabel-felt? Hvad er kravene til sortering?
>
> Resultaterne skulle meget gerne præsenteres i hver sin tabelcelle
> fordelt over 3 kolonner:
>> A | B | C |
> -----------
>> D | E | F |
> osv.
> Mht. sortering skal de blot sorteres efter navn.
<table cellspacing="2" cellpadding="2" border="0">
<?
$mysql_result = mysql_query("SELECT * FROM tabel ORDER BY navn DESC",
$mysql_link);
$i = 0;
while ($data = mysql_fetch_array($mysql_result)) {
if ($i%3==0) echo "<tr>\n";
$i++;
echo "\t<td>$data[navn]</td>\n";
if ($i%3==0) echo "</tr>\n";
}
if ($i%3!=0) {
for ($i = $i; $i%3!=0; print("\t<td></td>\n"), $i++);
echo "</tr>\n";
}
?>
</table>

--
MVH Dan Molberg
http://beyond.repair.dk/



Torben Heikel Vinthe~ (24-12-2003)
Kommentar
Fra : Torben Heikel Vinthe~


Dato : 24-12-03 09:04

"Dan Molberg" <beyond@repair.void> skrev i en meddelelse
news:bsbg1f$ukd$1@news.net.uni-c.dk...
<table cellspacing="2" cellpadding="2" border="0">
> <?
> $mysql_result = mysql_query("SELECT * FROM tabel ORDER BY navn DESC",
> $mysql_link);
> $i = 0;
> while ($data = mysql_fetch_array($mysql_result)) {
> if ($i%3==0) echo "<tr>\n";
> $i++;
> echo "\t<td>$data[navn]</td>\n";
> if ($i%3==0) echo "</tr>\n";
> }
> if ($i%3!=0) {
> for ($i = $i; $i%3!=0; print("\t<td></td>\n"), $i++);
> echo "</tr>\n";
> }
> ?>
> </table>

Tak for hjælpen men jeg fandt faktisk selv ud af det Se selv:
echo "<table border=1>\n";
$i = 0;
$mysql_result = mysql_query("SELECT * FROM navn ORDER BY navn",
$mysql_link);
while ($data = mysql_fetch_array($mysql_result)) {
if ($i == 0) {
echo "<tr>\n";
}
if ((is_int($i/3)) && ($i != 0)) {
echo "</tr>\n<tr>\n";
}
echo "\t<td>$data[function]</td>\n";
$i++;
}
echo "</tr>\n</table>\n";

Glædelig jul til jer alle
Torben Heikel Vinther



Dan Molberg (24-12-2003)
Kommentar
Fra : Dan Molberg


Dato : 24-12-03 11:36

Torben Heikel Vinther wrote:
> "Dan Molberg" <beyond@repair.void> skrev i en meddelelse
> news:bsbg1f$ukd$1@news.net.uni-c.dk...
> <table cellspacing="2" cellpadding="2" border="0">
>> <?
>> $mysql_result = mysql_query("SELECT * FROM tabel ORDER BY navn DESC",
>> $mysql_link);
>> $i = 0;
>> while ($data = mysql_fetch_array($mysql_result)) {
>> if ($i%3==0) echo "<tr>\n";
>> $i++;
>> echo "\t<td>$data[navn]</td>\n";
>> if ($i%3==0) echo "</tr>\n";
>> }
>> if ($i%3!=0) {
>> for ($i = $i; $i%3!=0; print("\t<td></td>\n"), $i++);
>> echo "</tr>\n";
>> }
>>>
>> </table>
>
> Tak for hjælpen men jeg fandt faktisk selv ud af det Se selv:
> echo "<table border=1>\n";
> $i = 0;
> $mysql_result = mysql_query("SELECT * FROM navn ORDER BY navn",
> $mysql_link);
> while ($data = mysql_fetch_array($mysql_result)) {
> if ($i == 0) {
> echo "<tr>\n";
> }
> if ((is_int($i/3)) && ($i != 0)) {
> echo "</tr>\n<tr>\n";
> }
> echo "\t<td>$data[function]</td>\n";
> $i++;
> }
> echo "</tr>\n</table>\n";
>
> Glædelig jul til jer alle
> Torben Heikel Vinther
Så må vi håbe at dit data anatal kan deles med 3... for ellers er der HTML
fejl, som kan ses visse browsere...
--
MVH Dan Molberg
http://beyond.repair.dk/



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408934
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste