PHPFAQ  
Начинающим   Технологии   MySQL   PDO   Ошибки   Ссылки   Юмор   Форум   SafeMySQL  
-- Список сообщений -- Поиск --
Foreach не выводит значения из $_POST
Андрей 14.09.15 22:10
Учу PHP. Использую Denwer: PHP 5.3.13, Apache 2.2.22. Система: Windows XP.
Проблема в том, что значения и ключи в переменной $_POST есть. Я их вывожу через var_dump(); и в phpinfo() они отображаются, а вот при обработке массива циклом foreach совсем не выводятся ключи массива, а значения выводятся только в том случае, если это цифры, которые не стоят после строки или внутри строки.
-----------------------------------------------------
Простая форма:

<html>
<head>
<title>sver</title>
</head>
<body>
<form action="getform.php" method="POST" >

<h5>Nickname</h5>
<input type="text" name="nick" size="50" />

<h5>Email</h5>
<input type="text" name="email" size="50" />

<h5>Password</h5>
<input type="text" name="pass" size="50" />

<h5>Language</h5>
<input type="text" name="language" size="50" />

<div><input type="submit" value="Добавить пользователя" /></div>

</form>
</div>
</div>
</body>
</html>

------------------------------------------------------------------
Файл сервера:

<?php
print "Цикл foreach: </br></br>";

foreach ($_POST as $key => $val)
{
echo $key - $val."</br>";
};

print "</br></br></br>";

print "var_dump: <br></br>";

print var_dump($_POST)."</br></br></br>";


print "Поле nick: ".$_POST["nick"]."</br></br>";
print "Поле email: ".$_POST["email"]."</br></br>";
print "Поле pass: ".$_POST["pass"]."</br></br>";
print "Поле language: ".$_POST["language"]."</br></br>";
print "</br></br></br>";
var_dump($_POST);
print "</br></br></br>";
t
phpinfo(32);

----------------------------------------------------------------------------

Например, если я ввожу в поля:
nick = andrey
email = 56andrey
pass = andrey56
language = 123456

То получаю на выходе:

Цикл foreach:

0
-56
0
-123456



var_dump:

array(4) { ["nick"]=> string(6) "andrey" ["email"]=> string(8) "56andrey" ["pass"]=> string(8) "andrey56" ["language"]=> string(6) "123456" }


Поле nick: andrey

Поле email: 56andrey

Поле pass: andrey56

Поле language: 123456

string(56) "nick=andrey&email=56andrey&pass=andrey56&language=123456"


array(4) { ["nick"]=> string(6) "andrey" ["email"]=> string(8) "56andrey" ["pass"]=> string(8) "andrey56" ["language"]=> string(6) "123456" }


В чем проблема?

Сразу оговорюсь, что:
плагин Sahosin - не установлен
post_max_size = 8M
ответить
Andrey 16.09.15 20:35
Ответ самому себе.

В общем решил эту проблему так :)))

При выводе в foreach yfgbcfk nfr^

foreach ($_POST as $key => $val)
{
echo "$key - $val </br>";
};

То есть поставил кавычки в выводе echo.
ответить
PHPFaq 18.09.15 04:03
Ты хоть разобрался, в чем проблема?

$key - $val - это разность, вообще-то.
То есть, ты просил пхп вычесть значение из ключа )
ответить
Написать
Имя:*
Заголовок:*
Вы робот?
Текст:
Пожалуйста, воздержитесь от посылки спама.
Сообщения, содержащие гиперссылки, проходят премодерацию.

© phpfaq.ru, 2019 1566615307.007 sec. О сайте   Хостинг iHor.ru