Консультация № 99587
24.08.2007, 22:10
0.00 руб.
0 3 3
Здравствуйте, уважаемые эксперты. Помогите мне, пожалуйста, разобраться с кодом, который я нашел в одной книге. Почему-то он у меня не работает (при нажатии на кнопку не вызывается вторично данный файл). Может я что-то не то делаю?
Заранее благодарен за любые ответы.

P.S. WinXP, PHP 4.3, Apache 2.2

Приложение:
<html><body><?phpif ($submit) {// process formwhile (list($name, $value) = each($HTTP_POST_VARS)) {echo "$name = $value
";}} else{// display form?><form method="post" action="<?php echo $PHP_SELF?>">First name:<input type="Text" name="first">
Last name:<input type="Text" name="last">
Address:<input type="Text" name="address">
Position:<input type="Text" name="position">
<input type="Submit" name="submit" value="Enter information"></form><?php} // end if?></body></html>

Обсуждение

Неизвестный
24.08.2007, 22:14
общий
это ответ
Здравствуйте, Sanya!

Попробуйте изменить значение параметра register_globals на Off в файле php.ini и перезапустите Apache.
Неизвестный
25.08.2007, 07:47
общий
это ответ
Здравствуйте, Sanya!

Рассмотрев Вашу страничку я заметил два момента которые нужно исправить это:

1. в форме в атрибуте action вы пишете <?php echo $PHP_SELF?> но переменная не обозначена и он выводит ошибку, изменияем надпись в action - е т.е. будет выглядеть так : <form method="post" action="<? echo $_SERVER[‘PHP_SELF‘]?>">
Вот теперь у Вас форма ссылается на себя.

2. Это непонятное использование цикла while в начале странички, он будет возвращать постоянно один и тотже элемет массива если вы хотите вывести все переменные переданные методом $_POST проще написать цикл foreach место while,
выглядить он будет примерно так:
foreach($_POST as $name=>$value){
echo "$name = $value
\n";
}.

всего доброго...

Приложение:
<html> <body> <?php if (@$_POST[‘submit‘]) { // process form foreach($_POST as $name=>$value){echo "$name = $value
\n"; }} else{ // display form ?> <form method="post" action="<? echo $_SERVER[‘PHP_SELF‘]?>"> First name:<input type="Text" name="first">
Last name:<input type="Text" name="last">
Address:<input type="Text" name="address">
Position:<input type="Text" name="position">
<input type="Submit" name="submit" value="Enter information"> </form> <?php } // end if ?> </body> </html>
Неизвестный
25.08.2007, 12:46
общий
это ответ
Здравствуйте, Sanya!
Я не совсем понял ваш вопрос, возможно приведённый пример вам больше понравиться.

Приложение:
<html><body><?phpif ($_POST[‘submit‘]) {// process formwhile (list($name, $value) = each($HTTP_POST_VARS)) {echo "$name = $value
\n";}?><form method="post" action="<?php echo $PHP_SELF?>">First name:<input type="Text" name="first">
Last name:<input type="Text" name="last">
Address:<input type="Text" name="address">
Position:<input type="Text" name="position">
<input type="Submit" name="submit" value="Enter information"></form></body></html>
Форма ответа