|
|
|
|
zeroku |
Четверг, 31 Июля 2003, 23:09
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Пожалуйста помогите написать скрипт..... примерно следующее... Есть какая то форма, неважно какая. Нужно написать к ней обработчик, но так, чтобы он был в одном файле вместе с формой. то есть один файл, в нем обработчик, и так же сама форма. Надеюсь ясно выяснился...
Скорее всего нужно написать массив, который будет сначала выводить форму, а затем их значения... Я так думаю.
Заранее спасибо
--------------------
С уважением, Сергей
|
|
|
|
|
pan |
Пятница, 01 Августа 2003, 9:01
|
Участник
Профиль
Группа: WinCity Team
Сообщений: 2101
Регистрация: 11.11.2001
Из: крепость Владивосток
Пользователь №: 653
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Давай смотреть... У нас есть форма. Пусть она имеет такой вид: Код | <form name='FORMA' action='' method='post'> Ваше имя: <input type='text' name='name' value='пишите здесь'> Ваш e-mail: <input type='text' name='mail' value='пишите здесь'> <input type='submit' value='Ок' name='GO'> </form>
|
Чтобы сделать обработку этой формы пишем следующее:
Код | <?php
// Форма
if($HTTP_POST_VARS['GO']) {
ЗДЕСЬ ОБРАБОТКА ФОРМЫ
}
else
echo "<form name='FORMA' action='' method='post'> Ваше имя: <input type='text' name='name' value='пишите здесь'> Ваш e-mail: <input type='text' name='mail' value='пишите здесь'> <input type='submit' value='Ок' name='GO'> </form>"; |
|
|
|
|
|
zeroku |
Пятница, 01 Августа 2003, 12:25
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
GeizeR, спасибо, выручил, очень!
--------------------
С уважением, Сергей
|
|
|
|
|
zeroku |
Воскресенье, 03 Августа 2003, 0:16
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
GeizeR одна проблемка.... при выводе данных, вернее при обработке выводится следующее
Undefined variable: name Undefined variable: mail
Если я конечно привильно пишу в обработке формы
if($HTTP_POST_VARS['GO']) {
print "Имя:<b>$name</b>"; print "<BR>"; print "e-mail:<b>$mail</b>";
}
что здесь не так.
--------------------
С уважением, Сергей
|
|
|
|
|
zeroku |
Воскресенье, 03 Августа 2003, 2:31
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
и если все осталвлять так, как у тебя, то еще и вот чего получается Undefined index: GO в строке if($HTTP_POST_VARS['GO'])
--------------------
С уважением, Сергей
|
|
|
|
|
pan |
Воскресенье, 03 Августа 2003, 6:26
|
Участник
Профиль
Группа: WinCity Team
Сообщений: 2101
Регистрация: 11.11.2001
Из: крепость Владивосток
Пользователь №: 653
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Да, ступил малость... Массив HTTP_POST_VARS содержит переменные, переданные формой постом. Поэтому надо использовать не $name, а HTTP_POST_VARS['name']. А вот второй эррор... А какой уровень обработки ошибок стоит? Видишь ли.. Если выставить в начале файла error_reporting(15) (кажется 15), то он будет сообщать обо ВСЕХ ошибках. А так как ты проверяешь наличие переменной в первом запуске скрипта (еще не была нажата кнопка GO), то он и напишет, что используем несозданную переменную. Проблема даже не в скрипте, а в файле конфигурации PHP - php.ini. Он видимо настроен так, что выводит именно все ошибки. Попробуй так: Код | <?php
error_reporting(7);
if($HTTP_POST_VARS['GO']) {
print "Имя:<b>$HTTP_POST_VARS['name']</b>"; print "<BR>"; print "e-mail:<b>$HTTP_POST_VARS['mail']</b>";
}
else
echo "<form name='FORMA' action='' method='post'> Ваше имя: <input type='text' name='name' value='пишите здесь'> Ваш e-mail: <input type='text' name='mail' value='пишите здесь'> <input type='submit' value='Ок' name='GO'> </form>"; |
|
|
|
|
|
pan |
Воскресенье, 03 Августа 2003, 6:29
|
Участник
Профиль
Группа: WinCity Team
Сообщений: 2101
Регистрация: 11.11.2001
Из: крепость Владивосток
Пользователь №: 653
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Вот немного о уровне контроля ошибок: 1 - неисправимые ошибки (fatal) 2 - предупреждения (вроде warning) 4 - ошибки синтаксического анализа (синтаксис в общем) 8 - уведомления
Так вот. Функция error_reporting(N) принимает число, N, которое является суммой вышеуказанных цифр. Т.е. тебе, о том, что несуществует переменная, выводятся не ошибки (!), а уведомления. Попробой исключить их вывод, т.е. 1+2+4=7
|
|
|
|
|
zeroku |
Воскресенье, 03 Августа 2003, 13:52
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
а на стороне отладчика как раз php.ini должен быть настроен так, чтобы на стороне клиента не было никаких багов... мне кажется
--------------------
С уважением, Сергей
|
|
|
|
|
zeroku |
Воскресенье, 03 Августа 2003, 14:14
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
и все равно ошибка Код | <form name="FORMA" method="post"> Имя:<input type="text" name="name"> Ваш e-mail: <input type="text" name="mail"> <input type="submit" value="Îê" name="GO">
<?
error_reporting(7);
if($HTTP_POST_VARS['GO']) {
print "Имя:<b>$HTTP_POST_VARS['name']</b>"; print "<BR>"; print "e-mail:<b>$HTTP_POST_VARS['mail']</b>";
}
else
echo "<form name='FORMA' action='' method='post'> Имя: <input type='text' name='name' value='ïèøèòå çäåñü'> Ваш e-mail: <input type='text' name='mail' value='ïèøèòå çäåñü'> <input type='submit' value='Îê' name='GO'> </form>";
?>
|
parse error, unexpected T_STRING in ...line 6 почему? кто его знает причем на строке там где начинается крипт <?
--------------------
С уважением, Сергей
|
|
|
|
|
pan |
Воскресенье, 03 Августа 2003, 16:48
|
Участник
Профиль
Группа: WinCity Team
Сообщений: 2101
Регистрация: 11.11.2001
Из: крепость Владивосток
Пользователь №: 653
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Я что-то тебя не понял... Ты, что, так и писал в файл? Код | <form name="FORMA" method="post"> Имя:<input type="text" name="name"> Ваш e-mail: <input type="text" name="mail"> <input type="submit" value="Îê" name="GO">
<?
error_reporting(7);
if($HTTP_POST_VARS['GO']) {
print "Имя:<b>$HTTP_POST_VARS['name']</b>"; print "<BR>"; print "e-mail:<b>$HTTP_POST_VARS['mail']</b>";
}
else
echo "<form name='FORMA' action='' method='post'> Имя: <input type='text' name='name' value='ïèøèòå çäåñü'> Ваш e-mail: <input type='text' name='mail' value='ïèøèòå çäåñü'> <input type='submit' value='Îê' name='GO'> </form>";
?>
|
Зачем код формы до тега <???
Пиши только это:
Код | <?
error_reporting(7);
if($HTTP_POST_VARS['GO']) {
print "Имя:<b>$HTTP_POST_VARS['name']</b>"; print "<BR>"; print "e-mail:<b>$HTTP_POST_VARS['mail']</b>";
}
else
echo "<form name='FORMA' action='' method='post'> Имя: <input type='text' name='name' value='ïèøèòå çäåñü'> Ваш e-mail: <input type='text' name='mail' value='ïèøèòå çäåñü'> <input type='submit' value='Îê' name='GO'> </form>";
?> |
|
|
|
|
|
zeroku |
Воскресенье, 03 Августа 2003, 18:01
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Я понимаю, что я уже задолбал, но все равно
parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in line 9. Это все по этому же коду.... может php.ini отредактировать как-нибудь.
--------------------
С уважением, Сергей
|
|
|
|
|
Админ |
Воскресенье, 03 Августа 2003, 23:16
|
Администратор
Профиль
Группа: WinCity Team
Сообщений: 670
Регистрация: 01.10.2000
Пользователь №: 1
Конфигурация
Корпус: Sony VAIO VGN-FW21MR Процессор: Centrino/Core Duo Материнская плата: Intel PM45 Оперативная память: 4096 Мб DDR2 800 МГц Видеокарта: ATI Mobility Radeon HD3470 256 Мб GDDR3 Жесткий диск (винчестер): 320 Гб Serial ATA 5400 об/мин TOSHIBA MK3252GSX Дисковод: Нет дисковода CD/DVD: Blu-Ray, MATSHITA BD-MLT UJ230AS Модем: встроенный Сетевой адаптер: встроенный, Marvell Yukon 88E8055 PCI-E Gigabit Ethernet Controller Звуковая плата: встроенная, Realtek ALC262 Монитор: 17'' Samsung SyncMaster 757NF Операционная система: Vista Home Premium x64 SP2 Прочее: WiFi встроенный Intel(R) WiFi Link 5100 ABG
|
Он ругается на кавычки при индексации элементов ассоциативного массива $HTTP_POST_VARS по имени (т.к. эта переменная заключена в строковые кавычки) Убери одинарные кавычки из print "Имя:<b>$HTTP_POST_VARS['name']</b>"; и $HTTP_POST_VARS['mail']</b>"; и все будет ок т.е. нужно так Код | print "Имя:<b>$HTTP_POST_VARS[name]</b>"; print "<BR>"; print "e-mail:<b>$HTTP_POST_VARS[mail]</b>";
|
--------------------
"Спорит либо дурак, либо подлец. Первый - не знает, а спорит, второй - знает, но спорит" Геральт из Ривии, ведьмак (© А. Сапковский, Сага о Ведьмаке)
|
|
|
|
|
pan |
Понедельник, 04 Августа 2003, 5:43
|
Участник
Профиль
Группа: WinCity Team
Сообщений: 2101
Регистрация: 11.11.2001
Из: крепость Владивосток
Пользователь №: 653
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Админ, странно... Насколько я понимаю, ['name'] можно было бы использовать только при правильном слиянии строк? Код | "Имя".$HTTP_POST_VARS['name']."</b>"; |
Или я не прав?
|
|
|
|
|
Админ |
Понедельник, 04 Августа 2003, 8:59
|
Администратор
Профиль
Группа: WinCity Team
Сообщений: 670
Регистрация: 01.10.2000
Пользователь №: 1
Конфигурация
Корпус: Sony VAIO VGN-FW21MR Процессор: Centrino/Core Duo Материнская плата: Intel PM45 Оперативная память: 4096 Мб DDR2 800 МГц Видеокарта: ATI Mobility Radeon HD3470 256 Мб GDDR3 Жесткий диск (винчестер): 320 Гб Serial ATA 5400 об/мин TOSHIBA MK3252GSX Дисковод: Нет дисковода CD/DVD: Blu-Ray, MATSHITA BD-MLT UJ230AS Модем: встроенный Сетевой адаптер: встроенный, Marvell Yukon 88E8055 PCI-E Gigabit Ethernet Controller Звуковая плата: встроенная, Realtek ALC262 Монитор: 17'' Samsung SyncMaster 757NF Операционная система: Vista Home Premium x64 SP2 Прочее: WiFi встроенный Intel(R) WiFi Link 5100 ABG
|
Да, как ты написал, так вроде можно
--------------------
"Спорит либо дурак, либо подлец. Первый - не знает, а спорит, второй - знает, но спорит" Геральт из Ривии, ведьмак (© А. Сапковский, Сага о Ведьмаке)
|
|
|
|
|
pan |
Понедельник, 04 Августа 2003, 9:50
|
Участник
Профиль
Группа: WinCity Team
Сообщений: 2101
Регистрация: 11.11.2001
Из: крепость Владивосток
Пользователь №: 653
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Цитата | а на стороне отладчика как раз php.ini должен быть настроен так, чтобы на стороне клиента не было никаких багов... мне кажется |
Да, пожалуй... По крайней мере я еще не видел хостеров, которые, например, выставляли бы контроль ошибок 15.
|
|
|
|
|
zeroku |
Понедельник, 04 Августа 2003, 11:30
|
Добрый монстр
Профиль
Группа: WinCity Team
Сообщений: 1076
Регистрация: 06.06.2002
Из: г. Москва
Пользователь №: 2365
Конфигурация
Корпус: -- Процессор: Другой Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Админ, GeizeR, помогли! Спасибо! В долгу не останусь! Все заработало!
--------------------
С уважением, Сергей
|
|
|
|
|
|
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
|
0 Пользователей:
|
|
© Copyright by WinCity.Ru 2001 - 2008 | Обратная связьУслуги веб-хостинга предоставлены компанией MTW.RU
|
|