Avatar billede tcp Nybegynder
17. september 2008 - 15:26 Der er 12 kommentarer og
1 løsning

print while ind et <table>

Hejsa sider og skal have noget indhold ud i et table


Hvordan får man php til at printe et table så det står sådan

<table width="450" border="0">
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    <td>4</td>
  </tr>
  <tr>
    <td>5</td>
    <td>6</td>
    <td>7</td>
    <td>8</td>
  </tr>
  <tr>
    <td>9</td>
    <td>10</td>
    <td>11</td>
    <td>12</td>
  </tr>
  <tr>
    <td>13</td>
    <td>14</td>
    <td>15</td>
    <td>16</td>
  </tr>
</table>

Henter data ud i while og vil gerne have den til at sriv data ud som vist

Håber i kan hjælpe
Mvh martin
Avatar billede jakobdo Ekspert
17. september 2008 - 16:02 #1
$counter = 0;

echo '<table width="450" border="0"><tr>';
while(....){
if($counter % 4){
  echo '</tr><tr>';
}
echo '<td>' . $dindata . '</td>';
$counter++;
}
echo '</tr></table>';
Avatar billede tcp Nybegynder
17. september 2008 - 16:21 #2
Jeg gør vist stadig noget forkert :/

$query = mysql_query("SELECT * FROM video ORDER BY id DESC");
               
$counter = 0;
echo '<table width="300" border="0"><tr>';
while($row = mysql_fetch_array($query)){
if($counter % 4){
  echo '</tr><tr>';
}
echo '<td>'. $row['navn'] .'</td>';
$counter++;
}
echo '</tr></table>';
Avatar billede w13 Novice
17. september 2008 - 16:32 #3
Hvorfor tror du det? :)
Avatar billede tcp Nybegynder
17. september 2008 - 16:35 #4
http://www.visvare.dk/video.php ser meget forkert ud
Avatar billede jakobdo Ekspert
17. september 2008 - 16:37 #5
Du skal lige rette til:

if(($counter % 4) == 0){

kan godt se mit første forsøg fejler.
Avatar billede tcp Nybegynder
17. september 2008 - 16:37 #6
skuller jo gerne være
1 2 3 4
5 6 7 8
Avatar billede w13 Novice
17. september 2008 - 16:39 #7
Ok, det er lidt lettere at finde en fejl, når man ved, hvad problemet er. ;)

Den ser bare ud til at køre "echo </tr><tr>" forkert.
Prøv evt. med:

$query = mysql_query("SELECT * FROM video ORDER BY id DESC");
               
$counter = 0;
echo '<table width="300" border="0"><tr>';
while($row = mysql_fetch_array($query)){
if($counter % 4 === 1){
  echo '</tr><tr>';
}
echo '<td>'. $row['navn'] .'</td>';
$counter++;
}
echo '</tr></table>';
Avatar billede tcp Nybegynder
17. september 2008 - 16:39 #8
Ja det gjore den store forskil :-) Det er supper...

$counter = 0;
echo '<table width="300" border="0"><tr>';
while($row = mysql_fetch_array($query)){
if(($counter % 4) == 0){
  echo '</tr><tr>';
}
echo '<td>'. $row['id'] .'</td>';
$counter++;
}
echo '</tr></table>';


Bare send svar :-)
Avatar billede w13 Novice
17. september 2008 - 16:39 #9
Nå ja, === 0 ikke === 1 :)
Avatar billede w13 Novice
17. september 2008 - 16:40 #10
Det kan så også være:

$counter = 0;
echo '<table width="300" border="0"><tr>';
while($row = mysql_fetch_array($query)){
if(!($counter % 4)){
  echo '</tr><tr>';
}
echo '<td>'. $row['id'] .'</td>';
$counter++;
}
echo '</tr></table>';
Avatar billede jakobdo Ekspert
17. september 2008 - 16:49 #11
Svar!
Avatar billede jakobdo Ekspert
17. september 2008 - 16:59 #12
Takker for point.
Avatar billede tcp Nybegynder
17. september 2008 - 17:11 #13
Mig der takker :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester