Avatar billede pylle Nybegynder
17. marts 2008 - 19:32 Der er 8 kommentarer og
1 løsning

Tabeller med php

Hej er der en der kan hjælpe mig med dette

Jeg har en php der danner en tabel pr vare, ud fra oplysninger der kommer fra en MySql db, alt efter hvor mange varer der er i db, bliver tabellerne dannet under hinanden, min tanke er så, hvordan kan man få php’en til at danne en tabel tabel der danner en række med 3 kolonner indeholdende én vare tabel i hver, og herefter en ny række med 3 kolonner under den første og så fremdeles så længe der kommer vare fra db.
<?php
include("connect.php");
$display_block = "<h1>Skilte</h1><P>Vælg.</p>";
//vis kategorierne først
$get_cats = "select id, varegruppe_overskrift, varegruppe_beskrivelse from varegrupper_tabel order by varegruppe_overskrift";
$get_cats_res = mysql_query($get_cats) or die(mysql_error());

if (mysql_num_rows($get_cats_res) < 1) {
  $display_block = "<P><em>Der er ingen kategorier at vise.</em></p>";
} else {
  while ($cats = mysql_fetch_array($get_cats_res)) {
        $kat_id  = $cats[id];
        $varegruppe_overskrift = strtoupper(stripslashes($cats[kat_titel]));
        $varegruppe_beskrivelse = stripslashes($cats[kat_beskrivelse]);

//hent vare

if ($_GET[kat_id] == $kat_id) {         
          $get_vare = "select id, vare_nr, vare_pris, vare_navn, vare_beskrivelse,vare_image from vare_tabel where kat_id = $kat_id order by vare_nr";
          $get_vare_res = mysql_query($get_vare) or die(mysql_error());

          if (mysql_num_rows($get_vare_res) < 1) {
                $display_block = "<P><em>Der er ingen vare i denne kategori.</em></p>";
          } else {

                while ($vare  = mysql_fetch_array($get_vare_res)) {
                  $vare_id          = $vare[id];
                  $vare_nr          = ($vare[vare_nr]);
                  $vare_navn        = $vare[vare_navn];
                  $vare_pris        = $vare[vare_pris];
                  $vare_beskrivelse  = $vare[vare_beskrivelse];
                  $vare_image        = $vare[vare_image];       
                           
   
  //vis varen i tabel

    $display_block .= "<table border=1 width=214 height=160 >
        <form method=post action=\"laeg_i_vogn.php\">
    <tr>
        <td colspan=4 height=23>$vare_navn</td>
    </tr>   
    <tr>
        <td colspan=2><img src=\"images/$vare_image\"></td>
        <td colspan=2>$vare_beskrivelse</td>
    </tr>
    <tr>
        <td height=24>v.nr.</td>
        <td height=24>Pris.:</td>
        <td height=24>Stk</td>
        <td height=24>&nbsp;</td>
    </tr>
    <tr>
        <td height=25 width=37>$vare_nr</td>
        <input type=\"hidden\" name=\"ordre_vare_pris\" value=\"$vare_pris\">
        <td height=25 width=80 align=right>$vare_pris</td>


        <td height=25 width=22 align=right><input type=\"text \"size=2 \"maxlength=2\" name=\"ordre_vare_antal\"value=\"1\"></td>
   
       
        <td height=25 width=47 align= center><input type=\"hidden\" name=\"ordre_vare_id\" value=\"$vare_id\"><P><input type=\"submit\" name=\"submit\" value=\"Køb\"></p></td>

 
  </form>
  </td>       
    </tr>
</table>";

               
                } 
               
          }
      }
  }
}
?>
<HTML>
<HEAD>
<TITLE>Færdige Skilte</TITLE>
</HEAD>
<BODY>
<? print $display_block; ?>

</BODY>
</HTML>
Avatar billede jakobdo Ekspert
17. marts 2008 - 19:59 #1
Det kan man godt jo.
Det kode du viser her, viser det en vare i en tabel ad gangen ?
Eller hvad er output fra din kode her?
Har du en side man kan se ?
Avatar billede pylle Nybegynder
17. marts 2008 - 20:14 #2
Hej jakobdo,
jo den viser en vare i en tabel ad gangen,
output kommer fra  $display_block,
jeg kan desværre ikke vise dig siden, jeg har den kun på min hjemme pc, apache server,
Avatar billede jakobdo Ekspert
17. marts 2008 - 20:20 #3
Og når alle data vises i en tabel ad gangen, er det så disse tabeller du vil have stillet op i en tabel ?

1 | 2 | 3
---------
4 | 5 | 6
---------
7 | 8 | 9
Avatar billede pylle Nybegynder
17. marts 2008 - 20:25 #4
Ja ! lige præcis
Avatar billede jakobdo Ekspert
17. marts 2008 - 20:37 #5
Utestet:

<?php
include("connect.php");
$display_block = "<h1>Skilte</h1><P>Vælg.</p>";
//vis kategorierne først
$get_cats = "select id, varegruppe_overskrift, varegruppe_beskrivelse from varegrupper_tabel order by varegruppe_overskrift";
$get_cats_res = mysql_query($get_cats) or die(mysql_error());

if (mysql_num_rows($get_cats_res) < 1) {
  $display_block = "<P><em>Der er ingen kategorier at vise.</em></p>";
} else {
  while ($cats = mysql_fetch_array($get_cats_res)) {
        $kat_id  = $cats[id];
        $varegruppe_overskrift = strtoupper(stripslashes($cats[kat_titel]));
        $varegruppe_beskrivelse = stripslashes($cats[kat_beskrivelse]);

//hent vare

if ($_GET[kat_id] == $kat_id) {       
          $get_vare = "select id, vare_nr, vare_pris, vare_navn, vare_beskrivelse,vare_image from vare_tabel where kat_id = $kat_id order by vare_nr";
          $get_vare_res = mysql_query($get_vare) or die(mysql_error());

          if (mysql_num_rows($get_vare_res) < 1) {
                $display_block = "<P><em>Der er ingen vare i denne kategori.</em></p>";
          } else {
                            $display_block .= '<table><tr>';
                            $count = 1;
                while ($vare  = mysql_fetch_array($get_vare_res)) {
                  $vare_id          = $vare[id];
                  $vare_nr          = ($vare[vare_nr]);
                  $vare_navn        = $vare[vare_navn];
                  $vare_pris        = $vare[vare_pris];
                  $vare_beskrivelse  = $vare[vare_beskrivelse];
                  $vare_image        = $vare[vare_image];     
                         
 
  //vis varen i tabel
       
        $display_block .= '<td>';
    $display_block .= "<table border=1 width=214 height=160 >
        <form method=post action=\"laeg_i_vogn.php\">
    <tr>
        <td colspan=4 height=23>$vare_navn</td>
    </tr> 
    <tr>
        <td colspan=2><img src=\"images/$vare_image\"></td>
        <td colspan=2>$vare_beskrivelse</td>
    </tr>
    <tr>
        <td height=24>v.nr.</td>
        <td height=24>Pris.:</td>
        <td height=24>Stk</td>
        <td height=24>&nbsp;</td>
    </tr>
    <tr>
        <td height=25 width=37>$vare_nr</td>
        <input type=\"hidden\" name=\"ordre_vare_pris\" value=\"$vare_pris\">
        <td height=25 width=80 align=right>$vare_pris</td>


        <td height=25 width=22 align=right><input type=\"text \"size=2 \"maxlength=2\" name=\"ordre_vare_antal\"value=\"1\"></td>
 
     
        <td height=25 width=47 align= center><input type=\"hidden\" name=\"ordre_vare_id\" value=\"$vare_id\"><P><input type=\"submit\" name=\"submit\" value=\"Køb\"></p></td>


  </form>
  </td>     
    </tr>
</table>";
$display_block .= '</td>';
if(($count++ % 3) == 0){
    $display_block .= '</tr><tr>';
}
                }
          $display_block .= '</tr></table>';   
          }
      }
  }
}
?>
<HTML>
<HEAD>
<TITLE>Færdige Skilte</TITLE>
</HEAD>
<BODY>
<? print $display_block; ?>

</BODY>
</HTML>
Avatar billede pylle Nybegynder
17. marts 2008 - 20:59 #6
TT til jakobdo,
det virker helt perfekt, du har sparet mig for en masse tid
alle point til dig,
hilsen Pylle
Avatar billede pylle Nybegynder
17. marts 2008 - 21:06 #7
point
Avatar billede jakobdo Ekspert
17. marts 2008 - 21:07 #8
Du får et svar.
Avatar billede jakobdo Ekspert
17. marts 2008 - 21:12 #9
Takker for point.
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