Vypis z databaze podle zadanych hodnot

Jsem jiny Libor nez autor prispevku pode mnou :-)

Ale mam horsi problem.

Potrebuju poradit jak mam z databaze zobrazit konkretni udaje ktere chci.
Např databaze se sloupci Mesto,Jmeno,Pohlavi,konicky.

potrebuju zobrazit lidi,kteri bydli ve stejnem miste a maji stejny konicek.
Mam predstavu ze budu mit nekolik vysouvacich menu pod a sebou,do nich zadam treba Petr a hokej a najde mi to treba 5 lidi s temato spolecnyma hodnotama.

Pomozte prosim,stravil jsem nad tim hodne casu ale neprisel jsem na to.

Moc dekuju za pomoc a snahu.
$vysledek = mysql_query("SELECT Mesto, Jmeno, Pohlavi, konicky FROM tva_tabulka WHERE Jmeno='Petr' AND konicky='plavani'");

tak nejak doufam, jinak muzes misto vyctu sloupcu dat * , pokud chces vybrat vsechny sloupce
Tohle to vim,jenze to mi nepomuze,takhle bych musel dat rolovaci tlacitko a do nej jednu polozku pojmenovanou traba Petrplavani,pak by bylo treba tlacitko Michalfotbal a ke kazdemu priradit $vysledek,$vysledek1,$vysledek2

Ja to potrebuju flexibilni tak,ze budu mit 4 vysouvaci menu a do kazdeho zadam polozku a z 500 zaznamu me to najde 3 Radky,kteri bydli v Praze,je to muz samozrejme a konicek je turistika ;-)

To co jsi napsal by mi asi nepomohlo,ale moc dik na ochotu a cekam jestli nenapadne nekoho jineho jeste a nepomuze mi,dik
presne nechapu, co potrebujes...
ja teda taky ne .. jestli chces jeste upresnovat vyhledavani (?) staci jen pridavat dalsi podminky za where ...and bydliste = 'praha' and pohlavi = 'm'
Sice se v tom nevyznám, ale používal jsem dříve qbasic a nestačily by to vyřešit proměnné, které by se zadávaly ve formuláři či něco takového?

Doufám, že mě chápete :-)
Ja tedy nevim, ale pomoci PHP muzes vzit cele pole odpostovanyho formulare $_POST, projit ho, zjistit, co v nem vsechno je, kolik, atp., a na zaklade toho postavit sql dotaz... nevim presne
Ne-e,ja tech vysouvacich menu budu mit vic a pres sql se mi zda ze to nejde.

Kdyz budu mit treba 5 a do 1 zadam petr do 2 zadam muz do 3 zadam plavani do 4 zadam Praha a do 5 zadam Strahov tak mi to najde treba 3 tomuhle odpovidajici lidi.

pokud to dam takhle

$query="select * from lide where jmeno="$jmeno" AND konicky like "%$konicky%" ";

nebo podobne tak to pujde jen pres jedno tlacitko,budu muset nadefinovat natvrdo treba petr-plavani na jedno tlacitko a pak mi to najde ,ale kdyz to zadavam petr do prvniho a dalsi udaje do jinych tak nevim jak na to


mozna delam ale spatne dotazovy formular,prosim ukazte my jak na to,melo by to byt nejak takhle

<FORM METHOD=GET ACTION="vyhledejaukaz.php">
<B>Války ali</B>
<SELECT NAME="alinajdi" >
<OPTION VALUE=sql1>petr
<OPTION VALUE=sql2>radim
<OPTION VALUE=sql3>michal


<INPUT TYPE="SUBMIT" VALUE="Vyhledej">
</SELECT><BR><BR>

a ted nevim jak do toho formulare pridat dalsi treba

<OPTION VALUE=sql1>fotbal
<OPTION VALUE=sql2>plavani
<OPTION VALUE=sql3>hukej

tak aby bylo jedno tlacitko send,a fungovalo to tak,ze do dvou techto vysouvacich menu zadam hodnoty a vypise mi to lidi odpovidajici,mozna ve formulari delam chybu.






poradte pls!




Autor: Sojkovec (sojkovec.wz.cz)
Datum: 23. 01. 2004 08:04

$vysledek = mysql_query("SELECT Mesto, Jmeno, Pohlavi, konicky FROM tva_tabulka WHERE Jmeno='Petr' AND konicky='plavani'");

tak nejak doufam, jinak muzes misto vyctu sloupcu dat * , pokud chces vybrat vsechny sloupce


jj,ale na tohle musis mit natvrdo nastave jednu hodnotu ve vysouvacim menu,ale ja tu hodnotu chci nastavit ve vice vysouvacich menu,ale mozna delam chybu v tom formulari,kdyz tak porad,budu ti velmi vdecny
sice moc nechapu to s tema vysouvacima menu... ale proc to neudelat takhle - podle Sojkovce?

$vysledek = mysql_query("SELECT Mesto, Jmeno, Pohlavi, konicky FROM tva_tabulka WHERE Jmeno='$_POST[jmeno]' AND konicky='$_POST[konicky]");


pred timhle staci mit akorat form, s inputama jmeno a konicky a bude to fungovat...
nevim proc hazis submit do selectu, ale budiz

<form action="<?=$PHP_SELF ?>" method="post">
<p><label for="jmeno">jmeno:</label><input name="jmeno"></p>
<p><label for="bydliste">bydliste:</label><input name="bydliste"></p>
<p><label for="pohlavi">pohlavi:</label>
<select name="pohlavi">
<option value="muz">Muz</option>
<option value="zena">Zena</option>
</select>
</p>
<input type="submit" name="ok">

<?
if ($ok) {
$query="select * from TABULKA where jmeno like '%$jmeno%' AND bydliste like '%$bydliste%' AND pohlavi='$pohlavi'";
$result=MySQL_query($query);
echo "<table>";
foreach ($result as $value) {
echo "<tr><td>" . $value['jmeno'] . "</td><td>" . $value['bydliste'] . "</td><td>" . $value['pohlavi'] . "</td></tr>\n";
}


}

?>


Je pozde takze plodim blbosti ... ;)
Aaah, chybi mi tam </table>, prominte
jj,tohle uz je na dobre ceste,ale potrebuju misto tech prvnich 2 poli vysouvaci menu jako u toho 3 muz/zena a nevym jak to udelat,takhle lamoidne zakysnou :-(


potrebuju udelat treba 3 selekty do ve kterych uz budu mit preddefinovane hodnoty,ty nastavit dle potreby a aby me to vypsalo z databaze vsechno,kde se bude nachazet hodnota vybrana v selectu.



nevym jak na to,na ten formular a ty funkce,uz jsem zkousel docela dost a nefunguje mi to,zkuste mi jeste poradit,ted uz jsem snad konecne dokazal zdelit co potrebuju.


Moc diky vsem za ochotu.
Nemuzes do selectu davat prece vsechny mena ne? Bydliste bych pochopil, ale jmena uz je dost.
Kdyztak ty bydliste sou jednoduchy:
<select name="bydliste">
<option value="praha">Praha</option>
<option value="brno">Brno</option>
<option value="plzen">Plzen</option>
</select>

a das to misto toho inputu a mas to
jj,ale ja to mam tak,ze mam u kazdeho selectu asi 4 hodnoty,mam tech selectu 5 a kdyz si do nech zadam prednastavene udaje,chci aby by to naslo odpovidajici pocet zaznamu,v kterych budou vzdy nastavene hodnoty.

Zkuste mi jeste poradit pls a ukazat jak na to,protoze nevim.
Diky za ochotu a trpelivost.