Autor Zpráva
JandyT
Profil
Potrebuju poradit s timhle:
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250" />
<title>Výsledek zpracování formuláře</title>
</head>
<body>
<?php
# Výpis kódu 2.11 - obslouzit_zajmy.php

// Zkontrolovat proměnnou $_POST['jmeno'] a odstranit zpětná lomítka:
if (strlen($_POST['jmeno']) > 0) {
$jmeno = stripslashes($_POST['jmeno']);
} else { // Nebylo-li zadáno jméno...
$jmeno = NULL;
echo '<p><b>Zapomněli jste zadat své jmeno!</b></p>';
}

// Zkontrolovat zájmy $zajmy[]
if (isset($_POST['zajmy'])) {

$vybrane = NULL; // Bude použita nová zpráva.
foreach ($_POST['interests'] as $klic => $hodnota) { // Procházet všechny prvky.
$vybrane .= "$hodnota, ";
}
$vybrane = substr($vybrane, 0, -2); // Odstranit poslední čárku a mezeru.
$zajmy = TRUE;

} else {
$zajmy = NULL;
echo '<p><b>Zapomněli jste zadat své zajmy!</b></p>';
}

// Je-li všechno v pořádku, zobrazíme zprávu.
if ($jmeno && $zajmy) {
echo "Děkujeme uživateli <b>{$_POST['jmeno']}</b>. Jako své zájmy jste uvedli:<br /><tt>$vybrane</tt></p>";
}
?>
</body>
</html>


Když se mi pak stránka objeví:
Warning: Invalid argument supplied for foreach() in c:\program files\easyphp1-8\www\obslouzit_zajmy.php on line 24
Děkujeme uživateli Jandy. Jako své zájmy jste uvedli:
A teď to ma uvést Zajmy ktery jsem vyplnil a misto toho vyhodi tuhle kravinu. Je to script z knizky a i když použiju ten kod co napsali pořád je to stejný
koudi
Profil
tipnul bych si, že $_POST['interests'] neni pole. btw. proč tam máš jednou $_POST['zajmy'] a jednou $_POST['interests']?
JandyT
Profil
Je to v knížce. A ani ten kod co napsali oni nepomaha pořád tam je ta samá chyba
Leo
Profil
Tu knizku zahodte, a zkuste pochopit, co ten kod dela, nedela a proc, Leo
JandyT
Profil
To je jedno u jednoho scriptu se svět nezboří. Takže budu pokračovat dál.

Jinak diky Váma za ochotu pomoct
Toto téma je uzamčeno. Odpověď nelze zaslat.