Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отправка данных из HTML-формы
 
 автор: Богдан   (22.03.2011 в 13:08)   письмо автору
 
 

Я только начал учить пхп и делаю это по Энди Харрису дак вот там есть пример.Надо создать пхп файл с хтмл и пхп кодом внутри вот код;
<html>
<body>
<h1>Hi user</1>
<?
if (empty($name))
{
echo <<<HERE
<form>
<input type="text" name="name"><br>
<input type="submit">
</form>
HERE;
}
else
{
echo "Hi username-$name";
}
?>
</body>
</html>

как это работает?
куда записыветься переменная когда я ее создам через форму причем в том же пхп файле?
код работает я просто не могу разобраться как, обьясние принцип работы плз.

п.с Знаю что книга старая, но мне очень понравилось что здесь после теории идет создание какойто программы.

  Ответить  
 
 автор: admin   (22.03.2011 в 13:24)   письмо автору
 
   для: Богдан   (22.03.2011 в 13:08)
 

<html>
<body>

<?
$name 
$_GET['name'];

if (empty(
$name))
{
echo <<<HERE
<form>
<input type="text" name="name"><br>
<input type="submit">
</form>
HERE;
}
else
{
echo 
"привет - $name";
}
else

    
?>
</body>
</html> 

я думаю так интереснее будет)))
это работает с помощью метода _GET, если интересно можете погуглить

  Ответить  
 
 автор: Богдан   (22.03.2011 в 13:38)   письмо автору
 
   для: admin   (22.03.2011 в 13:24)
 

А почему не метотдом Post.И еще вопросик, тоесть все название форм при нажатии submit перелетают в файл-обработчик и сохраняються в суперглобальных массивах типа гет или пост, а потом их можно доставать при помощи этого $_GET или $_POST.Я правильно думаю? или это я насочинял уже??
п.с. Сорь за настырность, просто очень хочу понять.

  Ответить  
 
 автор: SHAman   (22.03.2011 в 13:56)   письмо автору
 
   для: Богдан   (22.03.2011 в 13:38)
 

Странно что автор этой книги не объясняет этого.

Можно и методом пост - тогда просто данные попадут в $_POST.
Этот скрипт генерирует, по сути, две страницы. Одна - с формой - другая - с ответом. И представляет собой две сущности - форму и обработчик формы.

Форму эту вы можете нарисовать в постороннем файле. В action формы можете указать ваш скрипт и он все равно отработает.

1) обращение к скрипту. Скрипт смотрит - передали ли ему имя. Имя не передано - он рисует форму.
2) заполнение поля, отправка тому же скрипту
3) Скрипт смотрит - передали ли ему имя? Имя передано - он пишет "привет, %юзернейм%."

  Ответить  
 
 автор: Богдан   (22.03.2011 в 13:43)   письмо автору
 
   для: admin   (22.03.2011 в 13:24)
 

А почему не метотдом Post.И еще вопросик, тоесть все название форм при нажатии submit перелетают в файл-обработчик и сохраняються в суперглобальных массивах типа гет или пост, а потом их можно доставать при помощи этого $_GET или $_POST.Я правильно думаю? или это я насочинял уже??
п.с. Сорь за настырность, просто очень хочу понять.

  Ответить  
 
 автор: cheops   (22.03.2011 в 13:59)   письмо автору
 
   для: Богдан   (22.03.2011 в 13:43)
 

>А почему не метотдом Post.
По умолчанию, если вы не указываете метод в тэге <form>, данные отправляются методом GET.

>И еще вопросик, тоесть все название форм при нажатии submit перелетают в файл-обработчик
>и сохраняються в суперглобальных массивах типа гет или пост, а потом их можно доставать при
>помощи этого $_GET или $_POST.Я правильно думаю?
Совершенно верно, браузер отправляет данные, заполненные в форме серверу, а сервер помещает их в массив $_GET или $_POST, в зависимости от выбранного метода.

  Ответить  
 
 автор: Богдан   (22.03.2011 в 14:00)   письмо автору
 
   для: cheops   (22.03.2011 в 13:59)
 

Огромное спасибо всем кто помог.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования