|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » обработка и отправка форм |
|
обработка и отправка форм
|
Новый участник Сообщения: 9 |
Профиль | Отправить PM | Цитировать Ситуация, вот форма: http://www.jpmotors.ru/mail.php
Вот ее скрипт: http://www.jpmotors.ru/mail.txt Форма не отправляется. Не могу понять в чем дело. Думаю, что дело в: if(!$frendemail) $errors.='*Отсутствует email друга!'; else {$frendemail=eregi("^([_.0-9a-z-]+@)([0-9a-z][0-9a-z-]+.)+([a-z]{2,4})$",$frendemail); if(!$frendemail) $errors.='*Email друга указан не верно!';} А, в частности, в переменной $frendemail. После ее обработки eregi() результат нужно присвоить другой переменной, к примеру: $frendemailsend. При этом все работает. Но я не знаю правильно ли это? Как записать правильно проверки и при этом была отправка? Помогите, пожалйста, разобраться. А также я очень буду рад увидеть ваши комментарии и дополнения к данному скрипту... Спасибо! |
|
Отправлено: 09:34, 29-01-2004 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Если нет register_globals=on в php.ini или в .htaccess (другой вид опции будет, правда), то переменные пришедшие из формы не будут доступны скрипту по тем же именам как в форме. То есть ваши проверки
всегда запишут в строку $errors соответствующее сообщение об ошибке со всеми вытекающими. Таких переменных в скрипте просто нет - механизм такой...
|
------- Отправлено: 16:11, 29-01-2004 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Вообщем, вроде всё прояснилось. Функция eregi () возвращяет логическую переменную.
Соответсвенно, $frendemail, как результат функции - это логическая переменная. А дальше всё ясно почему нет отправки формы, елси рузультат равен 1, то получаем: [COD] mail(1,$subject,$message,$headers); [/COD] То есть, нужно просто напросто сделать так: [COD] if(!$frendemail) $errors.='<FONT color=red><B>*</B></FONT>Отсутствует email друга!<BR>'; else {$fm=eregi("^([_\.0-9a-z-]+@)([0-9a-z][0-9a-z-]+\.)+([a-z]{2,4})$",$frendemail); if(!$fm) $errors.='<FONT color=red><B>*</B></FONT>Email друга указан не верно!<BR>'; [/COD] результат функции записывает в переменную $fm, а дальше все по контексту... Я правильно понимаю? А, еще можно так: [COD] if(!$frendemail) $errors.='<FONT color=red><B>*</B></FONT>Отсутствует email друга!<BR>'; else {if(!eregi("^([_\.0-9a-z-]+@)([0-9a-z][0-9a-z-]+\.)+([a-z]{2,4})$",$frendemail)); $errors.='<FONT color=red><B>*</B></FONT>Email друга указан не верно!<BR>'; [/COD] Вот, пожалуй, всё. На практике не пробЫвал: работает или нет, но по логике вещей должно работать... Спасибо! |
Отправлено: 18:59, 29-01-2004 | #3 |
Engrossed by the Void Сообщения: 2229
|
Профиль | Отправить PM | Цитировать Цитата MXM:
|
|
------- Отправлено: 19:18, 29-01-2004 | #4 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Пропадают переменные из форм | Bask76 | Вебмастеру | 5 | 26-07-2008 22:02 | |
Форм | Hapuga | Хочу все знать | 22 | 12-07-2006 08:19 | |
Delphi - создание форм в Delphi | Surround | Программирование и базы данных | 6 | 07-07-2006 12:50 | |
обработка форм текста на PHP | MXM | Вебмастеру | 3 | 11-09-2004 04:27 | |
Вопрос по созданию форм | [mzd] | Программирование и базы данных | 2 | 11-02-2004 13:51 |
|