Stránka 1 z 1

Výpis dat z databáze v PHP

Napsal: 03 čer 2011 11:17
od xciza
Hoj, udělal jsem si databázi jídelního lístku kde mám nějaké kategorie a v nich příslušná jídla. Mám následující kód pro vypsání těchto dat:

Kód: Vybrat vše

<?php 
             if(!$dbc) 
               {echo "Chyba připojení k databázi!"; 
                   exit; 
               } else{ $spredkrmy = mysql_query("SELECT * FROM polozka WHERE ID_kategorie = '1'", $dbc )or die("Chyba v dotaze: " . mysql_error()); 
     
                     if (!empty($spredkrmy)){ 
                           $table = '<table id="jidelak" rules="all">'; 
                                  $table .= '<thead><tr>'; 
                                              echo "<h2>Studené předkrmy</h2>"; 
     
                                  $table .= '</tr></thead>'; 
                                  $table .= '<tbody>'; 
     
                 while ($sloupec = mysql_fetch_array($spredkrmy)) { 
                        $table .='<tr>'; 
                                      $table .= '<td>'.$sloupec['objem'].'</td>'; 
                                      $table .= '<td class="volna_bunka"></td>'; 
                                      $table .= '<td>'.$sloupec['nazev'].'</td>'; 
                                      $table .= '<td class="volna_bunka"></td>'; 
                                      $table .= '<td>'.$sloupec['cena'].'</td>'; 
     
                                      $table .= '</tr>'; 
                                  } 
                                  $table .= '</tbody>'; 
                                  $table .= '</table>'; 
                                  echo $table; 
                              ;} 
     
                     $tpredkrmy = mysql_query("SELECT * FROM polozka WHERE ID_kategorie = '2'", $dbc )or die("Chyba v dotaze: " . mysql_error()); 
                  if (!empty($tpredkrmy)){ 
                           $table = '<table id="jidelak" rules="all">'; 
                                  $table .= '<thead><tr>'; 
                                              echo "<h2>Teplé předkrmy</h2>"; 
     
                                  $table .= '</tr></thead>'; 
                                  $table .= '<tbody>'; 
     
                 while ($sloupec = mysql_fetch_array($tpredkrmy)) { 
                        $table .='<tr>'; 
                                      $table .= '<td>'.$sloupec['objem'].'</td>'; 
                                      $table .= '<td class="volna_bunka"></td>'; 
                                      $table .= '<td>'.$sloupec['nazev'].'</td>'; 
                                      $table .= '<td class="volna_bunka"></td>'; 
                                      $table .= '<td>'.$sloupec['cena'].'</td>'; 
     
                                      $table .= '</tr>'; 
                                  } 
                                  $table .= '</tbody>'; 
                                  $table .= '</table>'; 
                                  echo $table; }} 
     
     
     
               ?> 


Problém je v tom, že jednotlivé kategorie mám takhle vypsané každou do vlastní tabulky, potřeboval bych to ale nějak sepsat do jedné tabulky (ty dva if a while cykly). Zkoušel jsem vypsat všechna data z databáze, ale potom se mi nepodařilo mezi ně vložit název kategorie. Pro žádám o pomoc docílit požadovaného kódu.
Kdyby to nebylo k pochopení tak napište a zkusím to popsat trochu jinak ;)
Předem díky za reakce

Re: Výpis dat z databáze v PHP

Napsal: 03 čer 2011 13:04
od Luboš
Pomohlo by to, kdybys použil jen jeden příkaz SELECT a do výběru bys dal WHERE ID_kategorie = '1' OR '2' a přidal třídění přes ORDER BY ID_kategorie ?

Re: Výpis dat z databáze v PHP

Napsal: 03 čer 2011 13:17
od xciza
Jo to by asi šlo, ale jak tam pak mezi to vložit název těch kategorií??

Re: Výpis dat z databáze v PHP

Napsal: 03 čer 2011 13:28
od Luboš
1. do pomocné proměnné $kategorie bych nejprve vložil hodnotu 0 (před prvním použitím dotazu SELECT)
2. před výpisem řádku bych porovnal ID_kategorie a $kategorie - pokud se nerovnají, pak vypiš text pro načtenou kategorii, v opačném případě zobraz prázdný řetězec
3. po zobrazení věty přesuň ID_kategorie do $kategorie

Re: Výpis dat z databáze v PHP

Napsal: 03 čer 2011 16:07
od CZechBoY
případně můžeš vypsat pevným FORem, asi máš u všech dní 3 předkrmy (nebo kolik, to je fuk) takže nemusíš ani porovnávat předchozí záznam s aktuálním
do dotazu SELECT ani WHERE dávat nemusíš, když vypisuješ všechny dny

do tabulky doporučuju dát lepší názvy sloupců!! v tomhle se nikdo nevyzná a ty za měsíc už taky ne!!

Re: Výpis dat z databáze v PHP

Napsal: 04 čer 2011 10:36
od xciza
Zkouším to dát do hromady ale, jsem teprve mírně pokročilí, tak bych uvítal i kousek kódu pro pomoc ;)

Re: Výpis dat z databáze v PHP

Napsal: 05 čer 2011 19:09
od xciza
nikdo nepomůže??

Re: Výpis dat z databáze v PHP

Napsal: 05 čer 2011 20:57
od CZechBoY
co ti není jasné?
sloupce jsi už přejmenoval? tyhle názvy sloupců stojí za houby..

Re: Výpis dat z databáze v PHP

Napsal: 05 čer 2011 21:02
od jackm
Myslím, že to vyřeší zde.

Re: Výpis dat z databáze v PHP

Napsal: 05 čer 2011 21:07
od CZechBoY
to jsem zvědav s čím přileze sem, jestli hodí vlákno jako vyřešené nebo aspoň napíše výsledek
takhle řešit jeden problém na více forech, fakt divný

Re: Výpis dat z databáze v PHP  Vyřešeno

Napsal: 05 čer 2011 21:25
od jackm
Jo mohl nám dát alespoň vědět, že už to řeší tam, když mu tu nedáme hotový kód.