Autor Zpráva
vargy
Profil
Pozdravujem,

predpokladám, že obdobný problém sa tu už pretriasal, ale nenašiel som ho, tak sa dopredu ospravedlňujem ak duplikujem. Mám taký problém. Mám mysql tabuľku s nazvom kniznica. Stlpce su ID, NAZOV, DRUH. Potom mám formulár v ktorom mám možnosti, čo chce prezrieť. Teda sú tam checkboxy:
časopisy
noviny
knihy....

A teraz ak si návštevník zaškrtne trebárs časopisy a knihy, tak mu z tabuľky knižnica vypíše názvy všetkých periodík kde druh je časopis a kniha. A tu som v koncoch. Aký tam dať príkaz.
habendorf
Profil
A která strana ti není jasná, klient nebo server? Především musíš informaci o tom, které checkboxy jsou zatržené, dostat nějak na server. Ať už prostým odesláním formuláře, nebo nějak asynchronně.
vargy
Profil
dobre, tak postupne, ako ich dostanem na server? lebo ak to nechám spracovať, tak mi vyhodí iba hodnotu posledne zaškrtnutého.
habendorf
Profil
Na server je dostaneš prostým odesláním formuláře metodou get nebo post na adresu zpracujícího skriptu, tam si pak proměnné přebereš.
Str4wberry
Profil
Něco podobného jsme tu řešili minulý týden.

Update více položek skrze input - checkbox
vargy
Profil
asi by bolo lepšie, keby som tu ten skript napísal.

<form action="spracovanie.php" method="post">
<input type="checkbox" name="kniha" value="1">Knihy
<input type="checkbox" name="casopis" value="2">Casopiy
<input type="checkbxo" name="noviny" value="3">Noviny

A ak zaškrtnem knihy a noviny, tak mi naserver pošle iba 3.
_es
Profil
vargy:
mi naserver pošle iba 3.
A ako to na tom serveri čítaš?
vargy
Profil
diky, už som to poriešil..

_es:
úžasné, že máš viac skúsenosti, a robíš si z druhých prdel. Nevadí, aj takí ľudia musia byť.
_es
Profil
vargy:
diky, už som to poriešil..
Predpokladám, že nejakou opravou serverového skriptu... Pravidla diskuse JPW a doporučení » 8. Snažte se zajistit, aby po vyřešení vašeho problému bylo z diskuse zřejmé, jak byl vyřešen.
vargy
Profil
_es:
aj to bude, len to ešte musím prešperkovať.


ale aby som to uviedol na správnu mieru v súlade s pravidlami diskusie:

urobil som pole:
$query = "select * from druhy[] order by id";
if ($result = mysql_query($query))
{
echo "<form action=\"?a=kat\" method=\"post\">";
while ($row = mysql_fetch_array($result)):
echo "<input type=\"checkbox\" name=\"druhy[]\" value=\"" . $row['id'] . "\">";
endwhile;
echo "<input type=\"sumbit\" value=\"zobrazit\">";
}
else
{
#chybova hlaska
}

----------
spracovanie
----------

$query = "select * from kniznica where typ IN ('" . implode("', '", $druhy) . "')";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result)):
echo $row['nazov'] . "<br>";
endwhile;

samozrejem to nie je vysylované a tak.. ale už mám základ, na ktorom sa dá staviať.

Vôbec nevylučujem, že existuje elegantnejšie a lepšie riešenie..

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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