Ребят, помогите. Начал изучать РНР, написал простейший скрипт а он делает мне мозги вот уже 1,5 часа. Вот код: <html> <head></head> <body> <form method="post "> Ответ: <input name="ans"> <input type="submit" value="Submit"> </form> <? $user= $_POST['ans']; echo "$user"; ?> </body> </html> Но он почему-то передает переменную GETом, хотя у меня прописано POST. И преременную не выводит. Вот даже залил на хост trettt.rxfly.net . Кто знает РНР - подскажите
1. Тут <form method="post "> после post пробел стоит. Убрать 2. Тут echo "$user"; Грамотнее переменные выводить так: echo $user; Напрмиер echo "Юзер: ".$user; 3. /thread40896.html
Спасибо, помогло удаление пробела. Но поставил я его не просто так - в книге которую читаю, написано, что без него форма работать не будет... Автор Гизберт Домашке... Ппц
Тут грамотнее юзать $_POST['ans'], а не определять непонятно для чего новую переменную. Это ошибка абсолютно всех новичков, и ты ему делаешь только хуже своим советом. +1
Профи, а ты не можешь представить, что переменная может дальше использоваться? Каждый раз будешь юзать $_POST['ans'] ? А прежде чем книги жечь, лучше бы нашли эту книгу и посмотрели, что там на самом деле написано - "Дамашке Гизберт - PHP и MySQL"
Конечно. Только у меня давно такого нету, ед. раз когда я использую $_POST, $_GET и прочее такое - во время инициализации скрипта.
еще такой вопрос. Если мы передаем методом POST разве значение переменной должно отображаться в адресной строке? Если нет, то почему у меня отображается (включая данные из строчки пароля)
chexec В данном случае нету разницы. Но ты же начал про плохой пример для новичков. Лучше один раз использовать массив и объявить переменную. И уже дальше работать с переменной, а не с массивом $_POST. HBWS Значит по прежнему, форма передает методом GET.
Это я понимаю, но почему? Скрипт приложен в 1ом сообщении (пробел убрал) и там прописано передавать методом POST. Дайте кто-нибудь пример передачи POSTом пожалуйста, или переделайте мой скрип (если там что-то не так)
PHP: <html> <head> </head> <body> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> Строка1: <input type="text" name="var1" /><br /> Строка2: <input type="text" name="var2" /><br /> <input type="submit" value=" Отправить " /> </form> <hr /> <?php if(isset($_POST['var1']) && isset($_POST['var2'])) { //Проверяем отправлены данные echo "Результат строки1: ".$_POST['var1']."<br />"; //Выводим значение строки1 (var1) echo "Результат строки2: ".$_POST['var2']; //Выводим значение строки2 (var2) // DEBUG: echo "<pre>"; echo "GET: \n"; print_r($_GET); // Выводим массив GET echo "POST: \n"; print_r($_POST); // Выводим массив POST echo "</pre>"; } ?> </body> </html>