Autor Zpráva
Folker
Profil
Ahoj, mám malý problém. V učebnici jsem si našel postup, jak uložit data z formuláře do pole, ale nefuguje mi to. Ve výsledku to zobrazí pouze poslední zaškrtnutou hodnotu. Nevíte čím to může být?

  <?php
 if (isset($_POST['submit'])) {
 
?>
<form action="#" method="post">
<input type="checkbox" name="languages[]" value="csharp" />C#<br />
<input type="checkbox" name="languages[]" value="java" />JavaScript<br />
<input type="checkbox" name="languages[]" value="perl" />Perl<br />
<input type="checkbox" name="languages[]" value="php" />PHP<br />
<input type="submit" value="odeslat">
</form>
<?php
} else {
echo "Zvolili jste tyto jazyky: ";
foreach($_POST['languages'] as $language);
echo $language;
}
?>
xx
Profil *
<?php
 if (isset($_POST['submit'])) {
  echo "Zvolili jste tyto jazyky: ";
foreach($_POST['languages'] as $language){
echo $language;
}
} else {
?>
<form action="#" method="post">
<input type="checkbox" name="languages[]" value="csharp" />C#<br />
<input type="checkbox" name="languages[]" value="java" />JavaScript<br />
<input type="checkbox" name="languages[]" value="perl" />Perl<br />
<input type="checkbox" name="languages[]" value="php" />PHP<br />
<input type="submit" name="submit" value="odeslat">
</form>
<?php 
}
?>

By mělo být funkční

Moderátor Alphard: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
tiso
Profil
Folker: ak je toto celý skript, tak tam máš viacer chýb:
-prvok dormulára 'submit' neexistuje, má byť takto: <input type="submit" name="submit" value="odeslat">
-otočená logika zobrazovania formulára, správne takto:
if (isset($_POST['submit'])) {
  //spracuj form
} else {
  //vypis form
}
-za foreach sa nepíse bodkočiarka:
  foreach($_POST['languages'] as $language){
    echo $language;
  }
Folker
Profil
tisoDíky, už to funguje.

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