powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Передача данных PHP из простейшей формы
13 сообщений из 13, страница 1 из 1
Передача данных PHP из простейшей формы
    #32512032
vitalina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите! Изучаю пхп, дошла до главы про формы. Данные не передаются!!!
Вот сама форма:

<html><head>
<title>Форма1</title>
<BODY>

<form action="7.php" method="POST">
<input type="text" name="user">
<br>
<textarea name="address" rows="5" cols="40">
</textarea>
<br>
<select name="products" mutiple>
<option>SS
<option>T
<option>O
<option>HAL
</select>
<input type="submit" value="Click!">
</form>
</body>
</head></html>


Вот сам пхп:

<?php
Error_Reporting(E_ALL & ~E_NOTICE);

print "Добро пожаловать <b>$user</b><p>\n\n";
print "Ваш адрес: <p>\n\n<B>$address</b>";
print "Your product choices are:<p>\n\n";
print "<ul>\n\n";
foreach ($products as $value)
{print "<li>$value<br>\n";}
print "</ul>";


И вот что на экране!!!

автор
Добро пожаловать
Ваш адрес:

Your product choices are:



Warning: Invalid argument supplied for foreach() in z:\home\localhost\www\7.php on line 8
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512037
vitalina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если что пишите на мыло:
vitalina@fao.lv
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512059
Лично я привык писать, как

print "Добро пожаловать <b>".$user."</b><p>\n\n";
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512065
vitalina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это не помогает!
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512348
guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
register_globals = off, и это правильно - подробности можно посмотреть здесь . Твой код должен был выглядеть так:
<?php
Error_Reporting(E_ALL);

print "Добро пожаловать <b>$_POST[user]</b><p>\n\n";
print "Ваш адрес: <p>\n\n<B>$_POST[address]</b>";
print "Your product choices are:<p>\n\n";
print "<ul>\n\n";
foreach ($_POST['products'] as $value){
print "<li>$value<br>\n";
}
print "</ul>";

Надо заметить, что этот код будет работать всегда, не зависимо от состояния register_globals
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512349
Фотография Berkut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще можешь пользоватться этой функцией всегда:
(если понравиться конечно)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
function GetPost($var)
{
	if (isset($_POST[$var])) {
		return $_POST[$var];
	} elseif (isset($_GET[$var])) {
		return $_GET[$var];
	} else return "";
}

 /*А в самой программе вначале делаем:*/ 

$user = GetPost("user");

print "Hello $user";
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512615
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в скрипте 7.php пишешь :
Код: plaintext
phpinfo();
тебе будет выведена вся информация о ПХП, в том числе и входные данные (данные, полученные из формы) в самой нижней таблице (насколько я помню).
Смотри какие массивы там используются.

PS
версия ПХП , apache и метод установки (cgi или модуль) ?
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512875
SDN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SDN
Гость
Народ, всё проще гораздо... Select надо назвать как products[] - вот так будет массив для foreach... ;))))
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512936
guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SDN , при чём тут foreach, когда "проблема" в том, что переменные передаются в массивах $_POST и $_GET?
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32512968
SDN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SDN
Гость
Проблема в том, что даже если Вы доберётесь до переменной (неважно, каким способом - хоть через $_GET, $_POST или напрямую), то ошибка всё равно останется!.. Инструкция foreach работает только с массивами, а Ваш select при передаче данных из формы таковым не является... О чём и сообщается в предупреждении...
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32513778
guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SDN , ошибки надо исправлять последовательно. Вышеуказанный автором постинг явно говорил о том, что не видно любых переменных, независимо от того, являются ли они массивом или нет и как к ним происходит доступ - первоначально необходимо было устранить именно это. Фраза же "всё проще" может рассматриваться ни как иначе, как панацея, т.е. полное решение проблем, что неверно. То, что указали вы, не решит проблему до конца - если не будет выделен ни один элемент - предупреждение останется.
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32514285
SDN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SDN
Гость
Ну, на самом деле, я немного поспешил со словами "всё проще", согласен... Sorry... Просто прочитав вопрос и увидев "Warning: Invalid argument supplied for foreach() in z:\home\localhost\www\7.php on line 8", я подумал, что проблема в этом... Vitalina не уточняла же, а я как-то не заметил, что и другие переменные не дошли... Бывает!.. ;)))
...
Рейтинг: 0 / 0
Передача данных PHP из простейшей формы
    #32514663
Murphy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Там, кстати, еще одна ошибочка есть ;)
<select name="products" mutiple>
^^^^
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Передача данных PHP из простейшей формы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]