IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   Проблема с передачей переменных с html формы php файлу (http://www.imho.ws/showthread.php?t=79377)

Kitsune 08.02.2005 13:49

Проблема с передачей переменных с html формы php файлу
 
Я новичок и только постягаю азы PHP. Возникла такая проблема:
Есть html страница, где в конце кода стоит:
<form action="pass.php" method="post" >
<input type="text" name="username" value="user">
<input type="password" name="t2" >
<input type="submit" value="ъБРТПУ">
<input type="Reset" value="пФНЕОБ">
</form>
В самом файле pass.php для проверки я написал:
<? echo "Вы ввели: $username "; ?>
На что выдаётся ответ: Undefined variable: username in D:\Inetpub\Main\pass.php on line 3
ПОЧЕМУ?

RaZEr 08.02.2005 13:52

register_globals включи. Или используй $_POST['username']

Sensey 08.02.2005 14:24

Лучше $_POST['username'] чтоб потом меньше проблем было...

de(m)net 08.02.2005 15:50

<? echo "Вы ввели:".$_REQUEST['username']; ?>
Кроме всего в этом коде ошибка:
<? echo "Вы ввели: $username "; ?>

<? echo "Вы ввели:". $username ; ?>

Merlin Cori 08.02.2005 16:42

de(m)net никакой ошибки нет.... учи синтаксис php

_ARMAGEDDON_ 08.02.2005 17:12

de(m)net

<? echo "Вы ввели: $username "; ?>
<? echo "Вы ввели:". $username ; ?>

это одно и тоже.. и так и так будет работать.. ошибки тут нет

de(m)net 08.02.2005 17:21

Merlin Cori, я учу не беспокойся.
То, что в ковычках не все версии php отобразят правильно - подменяя значение переменной.
Если на то пошло, соблюдая правила синтаксиса:
<? echo "Вы ввели: {$username}" ; ?>

RaZEr 08.02.2005 17:31

Цитата:

То, что в ковычках не все версии php отобразят правильно
Не уточнишь какие версии не отобразят правильно? ;)

Sheryld 08.02.2005 17:40

Цитата:

Сообщение от de(m)net
Merlin Cori, я учу не беспокойся.
То, что в ковычках не все версии php отобразят правильно - подменяя значение переменной.
Если на то пошло, соблюдая правила синтаксиса:
<? echo "Вы ввели: {$username}" ; ?>

тогда уже правильнее будет использовать конкатенацию:

Код:

<? echo "Вы ввели:&nbsp;" . $username; ?>

Sensey 08.02.2005 20:11

Что бы все остались довольны:

Код:

<?php echo 'Вы ввели: '.$_POST['username']; ?>

Merlin Cori 08.02.2005 21:43

de(m)net
вместо того чтоб не зная спорить, лучше сходи вот сюда и посмотри:
_http://ru3.php.net/manual/ru/print/function.echo.php
Или если лень, то вот тебе оттуда пример, чтоб не быть голословным
PHP код:

<?php
echo "Привет мир!";

echo 
"Это занимет
несколько строк. Переводы строки тоже
выводятся"
;

echo 
"Это занимет\nнесколько строк. Переводы строки тоже\nвыводятся";

echo 
"Экранирование символов делается \"Так\".";

// с echo можно использовать переменные ...
$foo "foobar";
$bar "barbaz";

echo 
"foo - это $foo"// foo - это foobar

// ... и массивы
$bar = array("value" => "foo");

echo 
"это {$bar['value']} !"// это foo !

// При использовании одиночных кавычек выводится
// имя переменной,а не значение
echo 'foo - это $foo'// foo - это $foo

// можно вывести просто значения переменных
echo $foo;          // foobar
echo $foo,$bar;    // foobarbarbaz

// Некоторые предпочитают передачу нескольких аргументов
// вместо конкатенации
echo 'Эта ''строка ''была ''создана ''несколькими параметрами.'chr(10);
echo 
'Эта ' 'строка ' 'была ' 'создана ' 'с помощью конкатенации.' "\n";

echo <<<END
Здесь используется синтаксис "here document" для вывода
нескольких строк с подстановкой переменных $variable.
Заметьте,что закрывающий идентификатор должен
располагаться в отдельной строке. никаких пробелов!
END;
// Следующая строка неверна, так как echo не является функцией
($some_var) ? echo 'true' : echo 'false';

// Но это можно записать по другому
($some_var) ? print('true'): print('false'); // print является функцией
echo $some_var 'true''false'// echo вынесен за пределы выражения
?>



Часовой пояс GMT +4, время: 00:24.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.