Ситуация, вот форма: 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. При этом все работает. Но я не знаю правильно ли это? Как записать правильно проверки и при этом была отправка? Помогите, пожалйста, разобраться. А также я очень буду рад увидеть ваши комментарии и дополнения к данному скрипту... Спасибо! |
Если нет register_globals=on в php.ini или в .htaccess (другой вид опции будет, правда), то переменные пришедшие из формы не будут доступны скрипту по тем же именам как в форме. То есть ваши проверки
Код:
if(!$yourname) |
Вообщем, вроде всё прояснилось. Функция 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] Вот, пожалуй, всё. На практике не пробЫвал: работает или нет, но по логике вещей должно работать... Спасибо! |
Цитата:
|
Время: 09:56. |
Время: 09:56.
© OSzone.net 2001-