Autor Zpráva
technik
Profil
Potřeboval bych následující. V databázi mám ve sloupcích (id, jmeno, vlastnik) vypsány provincie hráče. Poté bych je chtěl v administraci vypsat jeho provincie pomocí select s možností přechodu na danou provincii:

<h3>Vítej</h3>
<?php
include "../zdroje/connect.php";
$mesta = mysql_query("SELECT * FROM `provincie` WHERE `vlastnik` LIKE '$login' LIMIT 0 , 30", $spojeny);
?>
<div style="text-align:right;">
<form name="select_town" action="go_to.php?id=<?php echo $vyp_mest['id']; ?>" method="get">
<select align="right">
<?php
while ($vyp_mest = mysql_fetch_array($mesta)){
?>
 <option><?php echo $vyp_mest['jmeno']; ?></option>
<?php
}
?>
</select>
<input type="submit" value="Přejít">
</form>
</div>


Problém je v tom, že proměná $vyp_mest['id'] na řádku
<form name="select_town" action="go_to.php?id=<?php echo $vyp_mest['id']; ?>" method="get">
ještě neexistuje. Nevěděl by někdo jak tohle vyřešit?

Děkuji T.
Alphard
Profil
To by byla logická chyba, stejně by to nefungovalo.
<select align="right" name="id">
  <option value="<?php echo $vyp_mest['id']; ?>"><?php echo $vyp_mest['jmeno']; ?></option>


Pár poznámek k tomu dalšímu.
1. Proč porovnáváte pomocí like? Moc k tomu nevidím důvod, jen možné problémy.
2. Vážně chcete limit na 30 provincií?
technik
Profil
Alphard:
1 . Ono já nepotřebuji to id v výpisu provincie, ale jako proměnou pro soubor go_to.php. Tedy abych s ní v souboru go_to.php mohl dále pracovat.
2. V čem jsou nevýhody LIKE? I MySQL to používá při hledání
3. Ano, více jich ani není. Samozřejmě by to tam být nemuselo.
Alphard
Profil
1. Jestli jsem správně pochopil problém, je to tak, jak píši. Takhle funguje select, zadanému name přiřadí value vybrané položky a odešle zvolenou kombinaci na stranku uvedenou v action.

2. Možná je to trochu subjektivní, ale like se spíše používá pro hledání s různými zástupnými znaky, třeba like '%výraz%', hlavně teda při práci s řetězci. Jak to je s rychlostí nevím. Osobně bych tam dal where vlastnik = '$login', protože když by se pak porovnávalo třeba jméno 'Pan%', prošlo by i 'Paní Malinová'. Ale neznám konkrétní situaci, zapomeňte na to. :-)

3. Teď není nebo nemůže být? Jestli platí to druhé, je to v pořádku.
fritol33
Profil
technik:
Sakra zase jsem byl moc pomalý
A jak řekl Alphard máš tam logickou chybu (máš zapnuté chybové hlášky?) na řádku ještě není $vyp_mest deklarovaná + i kdybys to poslal takto máš ke zracování jen první město (to samé řekl Alphard, ale asi jsi to nepochopil..)

Proto ti poslal tu konstrukci. Do Selectu si ale doplň to name
<select align="right" name = "neco">

V go_to.php budeš mít pouze potřebné město v globální proměnné $_POST:
<?php echo $_POST["neco"];  ?>
Alphard
Profil
fritol33:
v globální proměnné $_POST
Nebude, bude v $_GET
<form ... method="get">
fritol33
Profil
Alphard:
Aha, já se nevšiml... Čekal jsem, když předává parametry, že tam má post a dál se nedíval :o(.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0