PDA

Просмотр полной версии : Forms


sergey24
27.06.2003, 21:00
Есть такая форма:<html><body>
<?
$doGo="0";
$name="";
$age="";
if($doGo==0) {?>
<forms action="<?=$SCRIPT_NAME?>">
ИМя : <input type=text name="name"><br>
Возраст: <input type=text name="age"><br>
<input type=submit name="doGo" value="ОК!">
</form>
<?} else {?>
Привет, <?$name?>!<br>
Вам <?$age?> лет!
<?}?>
</html></body>

Как сделать что бы вывести значение переменых?
и вооо\бще какие есть способы работы с формами?
За ранее спосибо

metton
28.06.2003, 02:58
<html><body>
<?
$doGo="0";
$name="";
$age="";
if($doGo==0) {
?>
<form action="<? echo ($SCRIPT_NAME) ?>">
ИМя : <input type="text" name="name"><br>
Возраст: <input type="text" name="age"><br>
<input type="submit" name="doGo" value="ОК!">
</form>

<?} else {?>
Привет, <? echo ($name) ?>!<br>
Вам <? echo ($age) ?> лет!
<?}?>
</html></body>

С учётом что $SCRIPT_NAME - это название (имя файла) данного сценария, то при первом нажатии на Сабмит форма исчезает и больше не появляется (потому что doGo всё время будет равен "ОК!")

sergey24
29.06.2003, 01:47
Проверил исходник,
форма показывается, а вывода переменых нет.
Вот так учиться по книгам, даже исходник нормально накрпать не могут.
кому интересно книга :
Д В Кортеров Самоучитель РНР 4 :D

Самурай
29.06.2003, 14:27
Когда писалась єта книга самім продвинутім ПХП біл 4.1.0

так что молодой человек RTFM.

nagash
29.06.2003, 16:03
$_POST $_GET $_SESSION $_COOKIES $_SERVER $_ENV
choose your destiny...

Самурай
29.06.2003, 17:47
Оригинал написал(а) nagash
$_POST $_GET $_SESSION $_COOKIES $_SERVER $_ENV
choose your destiny...
ну дык, и я о том же =)))

mike_sobolev
03.07.2003, 00:55
Я вот чего не понЯл:
$doGo="0";
$name="";
$age="";
if($doGo==0)

дык ты переменной $doGo нуль присвоил, а нах потом проверять? Она ж по-любому нулёвой будет.. Куда не денься..

ACIDovsky
03.07.2003, 13:04
Удали строчку $DoGo="0"

Вместо if ($DoGo=="0") {...

Напиши if (isset($DoGo)) {...
Хотя можно и так: if ($DoGo<>"OK!") {...

advocat
04.07.2003, 13:41
Блин народ, я тащусь просто с глупости :)
Скрипт написан полностью некорректно приколы скрипта:
1. обратим внимание на эту строчку:
$name="";
$age="";
только ей, мы уже пристаиваем для <?=$name?> и <?=$age?> при включеных глобасах мы уже задаем, что они = "";

2. не указан метод отправки даных, по умолчанию get. Переменные доступны $_GET['name']; & $_GET['age'];

3. Как можна осуществлять проверку, если мы по умолчанию в начале присваиваем $doGo = 0; ? Проверка if(isset($_GET['doGo'])) - еще пойдет

и последнее вывод:
<?=$_GET['name']?>
<? echo $_GET['name'];?> и тд

juggy
04.07.2003, 17:25
<?php
$submitted=$_POST['submitted'];
$age=$_POST['age'];
$name=$_POST['name'];

if(!$submitted){
echo "<form method=post action=\"".$PHP_SELF."\">\n
<b>Ваше имя:</b><br>\n
<input type=\"text\" name=\"name\" style=\"width:100%;\">\n
<b>Ваш возраст:</b><br>\n
<input type=\"text\" name=\"age\" style=\"width:100%;\">\n
<input type=\"hidden\" name=\"submitted\" value=\"something\">\n
<input type=\"submit\" value=\"All Correct\" style=\"width:100%;\">
</form>";
}else{

echo "Привет <b>".$name."</b>!<br>\nВам <b>".$age."</b> лет, или <b>".($age*365)."</b> дней, или примерно <b>".((($age*365)*24)*3600)."</b> секунд\n";

}


?>