Autor Zpráva
exColor
Profil *
Ahoj, mam nasledujici kod:
<form action="pokus.php" method="post">
<?php
echo "
<input type='checkbox' name='1' value='1'>Jedna<br />
<input type='checkbox' name='1' value='2'>Dva<br />
<input type='checkbox' name='1' value='3'>Tri<br />
<input type='submit' name='OK' value='OK'>";
echo $_POST['1'];
?>

kod funguje tak, ze kdyz zaskrtnu treba jedna a dva, tak mi to vypise vzdy jenom 2. Ja bych potreboval, kdyz zaskrtnu jedna, dva, aby se vypsalo 1,2. kdyz treba jedna,tri, vypsalo by se 1,3, jestli vse, vypsalo by se 1,2,3.
Doufam ze jsem vam to dostatecne vysvetlil
Predem diky za jakoukoli odpoved.
suky
Profil
A proc jednoduse nepojmenujes ty checkboxy rozdilne?
DoubleThink
Profil *
nebo jako název použij pole:

<input type='checkbox' name='nazev[]' value='1'>
<input type='checkbox' name='nazev[]' value='2'>


dostaneš pak pole hodnot.
suky
Profil
jj druha moznost ;)
suky
Profil
ale to je v podstate to samy, akorat ze si to k sobe pridruzis...
yderf
Profil
suky
toto rozhodne nie je správne riešenie

exColor
Musíš si uvedomiť, že checkbox sa v POST posiela ako pole, resp. sa tak napĺňa. To znamená, že daj všade do name='cisla[]' a potom pracuj s poľom $_POST["cisla"].
exColor
Profil *
a jak to budu zobrazovat?
echo $_POST['nazev']; 

ani
echo $nazev;

mi nejak nefunguje ...jo a jeste... bude se to vypisovat z db, a bylo by dobre aby do toho pole zapisovalo nazev[1], nazev[2],... a pak bych vypsal jenom $nazev a vypsalo by se vsechno co bylo oznacene...
exColor
Profil *
zpusob
echo $_POST['nazev'];
mi vypise Array
yderf
Profil
je to pole, teda echo $_POST['nazev'][0]; atď. Nezabudni na test, či niečo v poli vôbec je.
suky
Profil
yderf
no a vypsani by se pak provedlo cyklem, ze jo?
yderf
Profil
nuž, ja by som asi použil
foreach($_POST["nazov"] as $polozka) {
echo $polozka;
}

alebo tak nejako, podľa toho, čo s tým človek chce.
suky
Profil
no prave, vubec si nedokazu predstavit na co by to melo slouzit...
exColor
Profil *
mam db, ze ktere vypisuji data cyklem while. Potrebuji udelat, aby u kazdeho zaznamu co se vypise byl checkbox. Po zaskrtnuti par radku by se mi vypsalo co jsem zaskrtl. To je vsechno co potrebuji udelat. Do vypisu z databaze si to uz vlozim, ale horsi je zajistit aby kazdy radek mel svuj nazev, muze se to klidne ukladat i do poli.
Predem dekuji za odpovedi.
suky
Profil
mozna ti pomuze tohle:
while ($radek = mysql_query($dotaz))
{
echo "<input type=\"checkbox\" name=\"nazev[]\" value=\"".$i."\">".$text."<br>";
$i++;
}
shakal
Profil *
Prosiiiiim vas.
Poradte mi.

Som z toho jelen. S PHP uz robim 4 roky a nikdy som nemal problem. Cucim na toto jak *****, neviem, kde mam chybu.

<?
if(isset($_POST["actsend"])) {
 print_r($_POST["subory"]);       // Vypise "Array"
 echo $_POST["subory"][0];       // Vypise "A" , potom [1] - "r", [2] - "r", [3] - "a" ....

 foreach($_POST["subory"] as $polozka) {
 echo $polozka;                         // Nevypise NIC! :-((((
 }

}

?>

<form action="?" method="post">
<input type="subory[]" value="2">Polozka 2<br />
<input type="subory[]" value="3">Polozka 2<br />
<input type="subory[]" value="4">Polozka 2<br />
<input type="submit" name="actsend" value="Odosli" />
</form>


Prosim vas, co kurnik sopa robim zle?
Uvedeny sposob som uz pouzil v skriptoch X-krat a nikdy som nemal problem, az teraz akosika. Bud mi uplne hrabe a nieco som prehliadol alebo co vlastne?

Vdaka moc.
shakal
Profil *
OPRAVA:
Ten FORM v skutocnosti vyzera takto:
<input name="subory[]" value="2" type="checkbox" />Polozka 2<br />
<input name="subory[]" value="3" type="checkbox" />Polozka 2<br />
<input name="subory[]" value="4" type="checkbox" />Polozka 2<br />
shakal
Profil *
Problem identifikovany!!!!

if (get_magic_quotes_gpc()){
  $_GET = array_map('stripslashes', $_GET);
  $_POST = array_map('stripslashes', $_POST);
  $_COOKIE = array_map('stripslashes', $_COOKIE);
}


Ked zapoznamkujem ten riadok s $_POST, tak to ide.
Moze mi niekto povedat, ci je cela tato podmienka k niecomu dobra???
AM_
Profil
My jsme z tebe taky jeleni, jak to souvisí s tím 2 roky starým tématem, které jsi otevřel? teď si každý přečte 2 roky staré žvásty a až se dočte ke tvému ve vlákně v pořadí patnáctému příspěvku a uvědomí si, že téma je mrtvé jen ho zase nějaký šmudla otevřel, bude ti spíš chtít utrhnout hlavu, než ti pomoct.

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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