Autor Zpráva
Juras
Profil *
Dobrý den,
potřebuji vypsat data z DB do formuláře a to tak aby mi to vypsalo do formuláře takto:
   
<fieldset> 
  <select name="vyber">

      <optgroup label="Česká republika">
         <option>Brno</option>
         <option>České Budějovice</option>
         <option>Liberec</option>
         <option>Olomouc</option>
         <option>Ostrava</option>
         <option>Plzeň</option>
         <option>Praha</option>
      </optgroup>

      <optgroup label="Slovenská republika">
         <option>Zvolen</option>
         <option>Bratislava</option>
         <option>Čadce</option>
         <option>Žilina</option>
         <option>Košice</option>
      </optgroup>

   </select>
</fieldset>


Problém je v tom, že vůbec nevím jak má vypadat taková tabulka a už vůbec jak z ní vytáhnout data.


Zkoušel jsem to nějak takto, ale vypisuje mi to špatně:
$dotaz = mysql_query("SELECT * FROM staty;");

while ($vypis = mysql_fetch_array($dotaz)) {
  echo '
    <select name=vyber>
      <optgroup label=$vypis[stat]>
         <option>$vypis[mesto]</option>
      </optgroup>
    </select>
  ';
}


/*
TABULKA:
id   |  stat   | mesto
-------------------------
1      CR     Brno
2      CR     České budějovice
3      CR     Liberec
... atd ...
9      SK     Zvolen
10    SK     Bratisava
11    SK     Čadca
... atd ...
*/

Prosím paraďte mi někdo jak má vypadat tabulka v DB a jak bych měl vypadat dotaz na DB.

Děkuji mnohokrát.
Kajman_
Profil *
Udělal bych si tabulku staty (kod_statu, nazev_statu) a mesta (id_mesta,kod_statu,nazev_mesta).

Pak bych si vypsal
select * from mesta join staty using (kod_statu) order by nazev_statu,nazev_mesta

a v php udělal optgroup jen pokud ten stát není stejný jako u posledně vypsaného města.
Juras
Profil *
Kajman_
Dobrá, zkusím to tak udělat.

Děkuji
Toto téma je uzamčeno. Odpověď nelze zaslat.

0