Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Dmitriy2 Гость
|
Добавлено: Пт Май 07 2004 18:35 Заголовок сообщения: Помогите. Не могу передать переменную и значение скрипту PHP |
|
|
Помогите пожалуйста, я начинающий. Не могу передать имя и значение переменной скрипту. Например, в файле скрипта "1.php", написал: "<? echo $name; ?>". Пытаюсь сделать элементарное - в адресной строке браузера набираю: "http://localhost/1.php?name=Vova". В ответ получаю, что переменная неопределена: "Undefined variable: name in d:\www\html\1.php on line 16". Соответсвенно невозможно передать данные из формы. После установки PHP и "Апачи" проверил работу CGI -работает, SSL - работает, простые операции в PHP работают, а вот это - нет. Прочитал все в "httpd.conf" и "php.ini", все на мой взгляд нормально. Пытался установить IIS5.0, тоже ничего не получается. Ладно, думаю "обману" его, перед "echo" поставил "settype(name,"string"), вроде как объявил переменную, но тогда браузер воспроизводит HTML -страницу, PHP код - нет. У меня такое ощущение, что браузер не передает данные скрипту. В общем, не знаю больше, что где настраивать. Может поможете. Спасибо заранее. |
|
Вернуться к началу |
|
|
Dmitriy2 Гость
|
Добавлено: Пт Май 07 2004 18:43 Заголовок сообщения: |
|
|
P. S.
Точнее не браузер не передает, сервер не передает, с браузером все нормально. |
|
Вернуться к началу |
|
|
Гость
|
Добавлено: Вт Май 11 2004 22:52 Заголовок сообщения: |
|
|
Поскольку переменная передаётся в адресной строке (метод GET), надо писать
<? echo $_GET['name']; ?>
а не
<? echo $name; ?>
Массив $_GET содержит все переменные, переданные скрипту методом GET. Переменная, переданная методом GET, вызывается как $_GET['name'].
Аналогично: переменная, переданная методом POST (через форму <form method=POST>), вызывается как $_POST['name']. Переменная, взятая из cookie, вызывается как $_COOKIE['name']. И никого не надо "обманывать". |
|
Вернуться к началу |
|
|
Axon Гость
|
Добавлено: Вт Май 11 2004 22:54 Заголовок сообщения: |
|
|
Тьфу, "обозваться" забыл! |
|
Вернуться к началу |
|
|
Мармота Бобак Гость
|
Добавлено: Ср Май 12 2004 11:17 Заголовок сообщения: |
|
|
Или перед использованием переменной пишешь $name = $HTTP_GET_VARS['name']; и затем можешь юзать эту переменную. Кстати, ты сервак сам настраивал? В каком-то из конфигурационных файлов можно эту процедуру инициализации переменной из строки запроса сделать автоматической (в Денвере, кажется, эта опция включена - Денвер качать на www.dklab.ru - это апач, пхп, перл и мускл в одном файле, все настроено и работает=)
А вообще, если у тебя там GETом или POSTом передается с десяток переменных, их можно одним махом инициализировать так:
extract($HTTP_GET_VARS);
или соответственно
extract($HTTP_POST_VARS);
- эта функция просто берет ассоциированный массив и создает переменные с именами ключей и соответствующими значениями |
|
Вернуться к началу |
|
|
Мармота Бобак Гость
|
Добавлено: Ср Май 12 2004 11:20 Заголовок сообщения: |
|
|
Да, кстати, чуть не забыл - не привыкай к <? ?>, пиши <?php ?> - я тож раньше писал сокращенно, пока не нарвался на хостинг со строгим админом, где не запустился ни один скрипт, до меня долго доходило в чем дело! =)
Да, и еще - заходи на http://www.integ-ra.ru - я сейчас этим занимаюсь, оцени что ли |
|
Вернуться к началу |
|
|
Мармота Бобак Гость
|
Добавлено: Ср Май 12 2004 11:21 Заголовок сообщения: |
|
|
проверка - www.integ-ra.ru |
|
Вернуться к началу |
|
|
|