PHP, űrlap feldolgozása
Sziasztok, eddig bírtam idegekkel. Egy könyv alapján próbálom működésbe hozni az űrlapomat. A textek mennek is, de a listát képtelen vagyok megoldani.2 file-ból szkript-tel dolgozom. Az első az űrlap, az működik is:
<body>
<form action="9.5.szkript.php" method="POST">
Név:<br>
<input type="text" name="felhasznalo">
<br>
Cím:<br>
<textarea name="cim" rows="5" cols="40"></textarea>
<br>
Választott városok:<br>
<select name="varosok" multiple>
<option>Budapest</option>
<option>Tatabánya</option>
<option>Tab</option>
<option>Vác</option>
<option>Sárbogárd</option>
<option>Sopron</option>
</select>
<br><br>
<input type="submit" value="Gyerünk">
</form>
</body>
ez pedig a 9.5.szkript.php tartalma:
<?php
print "Udvozollek, <b>$_POST[felhasznalo]</b>!<p>\n\n";
print "A cimed:<p>\n\n<b>$_POST[cim]</b><p>\n\n";
print "Az altalad valasztott varosok:<p>\n\n";
if (! empty($_POST[varosok])) {
print "<ul>\n\n";
foreach ($_POST[varosok] as $ertek)
{
print "<li>$ertek<br>\n";}
print "</ul>";}
?>
A böngészőmbe pedig a foreach tartalmával van baja. Pontosan:Warning: Invalid argument supplied for foreach() in H:\www\urlap\9.5.szkript.php
Valaki mentsen meg! Köszi
Nem tudom, hogy mennyire lehet köze a dologhoz, de van egy 3. szkript is, amibe szerepel az $ertek, ami ott van a foreach-ba is, bár próbáltam más néven, de úgy se megy:
<?php
$felhasznalo1 = "halado";
foreach ($GLOBALS as $kulcs=>$ertek) {
print "\$GLOBALS [\"$kulcs\"] == $ertek<br>";
}
?>
Futtatva:
$GLOBALS ["HTTP_POST_VARS"] == Array
$GLOBALS ["_POST"] == Array
$GLOBALS ["HTTP_GET_VARS"] == Array
$GLOBALS ["_GET"] == Array
$GLOBALS ["HTTP_COOKIE_VARS"] == Array
$GLOBALS ["_COOKIE"] == Array
$GLOBALS ["HTTP_SERVER_VARS"] == Array
$GLOBALS ["_SERVER"] == Array
$GLOBALS ["HTTP_ENV_VARS"] == Array
$GLOBALS ["_ENV"] == Array
$GLOBALS ["HTTP_POST_FILES"] == Array
$GLOBALS ["_FILES"] == Array
$GLOBALS ["_REQUEST"] == Array
$GLOBALS ["GLOBALS"] == Array
$GLOBALS ["felhasznalo1"] == halado
$GLOBALS ["kulcs"] == felhasznalo1
$GLOBALS ["ertek"] == felhasznalo1
Szóval nem igazán vágom, hogy mi lehet.
■ <body>
<form action="9.5.szkript.php" method="POST">
Név:<br>
<input type="text" name="felhasznalo">
<br>
Cím:<br>
<textarea name="cim" rows="5" cols="40"></textarea>
<br>
Választott városok:<br>
<select name="varosok" multiple>
<option>Budapest</option>
<option>Tatabánya</option>
<option>Tab</option>
<option>Vác</option>
<option>Sárbogárd</option>
<option>Sopron</option>
</select>
<br><br>
<input type="submit" value="Gyerünk">
</form>
</body>
ez pedig a 9.5.szkript.php tartalma:
<?php
print "Udvozollek, <b>$_POST[felhasznalo]</b>!<p>\n\n";
print "A cimed:<p>\n\n<b>$_POST[cim]</b><p>\n\n";
print "Az altalad valasztott varosok:<p>\n\n";
if (! empty($_POST[varosok])) {
print "<ul>\n\n";
foreach ($_POST[varosok] as $ertek)
{
print "<li>$ertek<br>\n";}
print "</ul>";}
?>
A böngészőmbe pedig a foreach tartalmával van baja. Pontosan:Warning: Invalid argument supplied for foreach() in H:\www\urlap\9.5.szkript.php
Valaki mentsen meg! Köszi
Nem tudom, hogy mennyire lehet köze a dologhoz, de van egy 3. szkript is, amibe szerepel az $ertek, ami ott van a foreach-ba is, bár próbáltam más néven, de úgy se megy:
<?php
$felhasznalo1 = "halado";
foreach ($GLOBALS as $kulcs=>$ertek) {
print "\$GLOBALS [\"$kulcs\"] == $ertek<br>";
}
?>
Futtatva:
$GLOBALS ["HTTP_POST_VARS"] == Array
$GLOBALS ["_POST"] == Array
$GLOBALS ["HTTP_GET_VARS"] == Array
$GLOBALS ["_GET"] == Array
$GLOBALS ["HTTP_COOKIE_VARS"] == Array
$GLOBALS ["_COOKIE"] == Array
$GLOBALS ["HTTP_SERVER_VARS"] == Array
$GLOBALS ["_SERVER"] == Array
$GLOBALS ["HTTP_ENV_VARS"] == Array
$GLOBALS ["_ENV"] == Array
$GLOBALS ["HTTP_POST_FILES"] == Array
$GLOBALS ["_FILES"] == Array
$GLOBALS ["_REQUEST"] == Array
$GLOBALS ["GLOBALS"] == Array
$GLOBALS ["felhasznalo1"] == halado
$GLOBALS ["kulcs"] == felhasznalo1
$GLOBALS ["ertek"] == felhasznalo1
Szóval nem igazán vágom, hogy mi lehet.
egyszerre csak egy helyen, ha
Jah most látom, még helyben
2x