Forum Webscript.Ru

Программирование => PHP => Тема начата: D13@ от 04 Января 2003, 21:17:05

Название: Форма почтой
Отправлено: D13@ от 04 Января 2003, 21:17:05


if($submitform) {

$dcheck = explode(",",$require);
while(list($check) = each($dcheck)) {
if(!$$dcheck[$check]) {
$error .= "Missing $dcheck[$check]
";
}
}

if($error) {header("Location:errorsend.html);
exit();
}

if ($fromname) {
$yeshow = "\\nFrom, $fromname\\n";
}

mail($toemail,"$subject","

$message

$yeshow

","From: $fromname <$fromemail>");

header("Location: $sendpage");
exit();

} else {

?>


 
   
 

   
     
       

     
       
       
       
     
     
       
       
     
     
       
     
   

        Contact Form

        Your Name:

       

        Your Email:

       

        Message:
        TYPE="hidden" NAME="subject" VALUE="Contact Form">







 


Powered by:
exit();
}
?>


Вот если вынести Форму из PHP в HTMl работать должно да? А не хочет постоянно говорит что ошибка в mail()
Вот я вот так форму вынасил в HTML файл:



 
   
 

   
     
       

     
           
       
       
     
     
       
       
     
     
       
     
   

        Contact Form

        Your Name:

       

        Your Email:

       

        Message:
        TYPE="hidden" NAME="subject" VALUE="Contact Form">
      
      
      
      
      




 


Powered by:
Название: Форма почтой
Отправлено: NAS от 04 Января 2003, 21:23:54
А пару примеров
Здесь (http://www.php.net/manual/en/ref.mail.php) посмотреть не судьба.
Название: Форма почтой
Отправлено: Меняздесьдавнонет от 04 Января 2003, 21:25:05
кто-нибудь что-нибудь понял, что он куда "вынасил"?
Название: Форма почтой
Отправлено: NAS от 04 Января 2003, 21:27:24
Я понял, но объяснить словами не могу :)
Название: Форма почтой
Отправлено: D13@ от 04 Января 2003, 21:28:47
Цитировать
кто-нибудь что-нибудь понял, что он куда "вынасил"?

тег FORM
Название: Форма почтой
Отправлено: new от 04 Января 2003, 21:34:20
Цитировать
Вот если вынести Форму из PHP в HTMl работать должно да?


Ясный пень, что должно. Более того - это дело вкуса, но с моей точки зрения, это не только можно, но и всегда желательно (т.е. отделять мух от котлет).
Ты километры кода не рисуй.
Совет тебе не для твоих изысканий, я в общем для всякого такого, как наверху.
Сделай форму,  проверь, что она в сценарий передаёт, и потом работай с этим самым сценарием.
Эта функция mail() настолько проста, что читать твои километры логики кода вряд ли у кого встанет настроения, потому как по хорошему там и ошибки, кроме как синтаксической. быть не может. Гы.

Цитировать
А не хочет постоянно говорит что ошибка в mail()

Так что, если ты совета хочешь - не километр давай, а конкретно твою ошибку. Впрочем, может ты её со словарём прочитаешь, и сразу врубишься (типа где собака зарыта)
Название: Форма почтой
Отправлено: D13@ от 04 Января 2003, 21:37:06
Что за народ п***ц вопрос страшно задать. Задаш а они и поколотят. :-(
Название: Форма почтой
Отправлено: Меняздесьдавнонет от 04 Января 2003, 21:48:54
ну конечно же - виноват народ!
Название: Форма почтой
Отправлено: new от 04 Января 2003, 21:50:58
D13@
Цитировать
Задаш а они и поколотят. :-(

Тогда коротко так - давай конкретно ошибку, которую ты получаешь, и будет тебе типа ответа (возможно).
Название: Форма почтой
Отправлено: D13@ от 04 Января 2003, 21:53:42
Parse error: parse error, unexpected T_VARIABLE in D:\\server\\www\\test\\emailform.php on line где mail()
Название: Форма почтой
Отправлено: new от 04 Января 2003, 21:59:48
D13@

Проверь, стоит ли там что то типа как точка с запятой или закрыто всё, например } (что наиболее вероятно) -> в районе on line где mail() - 1 строчка назад, в общем всё ли с синтаксисом ОК.
Да, и в этом районе, если ничего не увидишь конечно, то дай +1 и - 2 строки кода в районе on line где mail()
##############

Добавлю сходу такое:
Это неправильно:
if($error) {header("Location:errorsend.html);
exit();
}

Должно быть:

if($error) {header("Location:errorsend.html");
exit();
}
Название: Форма почтой
Отправлено: D13@ от 04 Января 2003, 22:02:58
if ($fromname) {
$yeshow = "\\nFrom, $fromname\\n";
}

mail($toemail,"$subject","

$message

$yeshow

","From: $fromname <$fromemail>");
Название: Форма почтой
Отправлено: new от 04 Января 2003, 22:06:27
D13@
Цитировать
Это неправильно:
if($error) {header("Location:errorsend.html);
exit();
}

Должно быть:

if($error) {header("Location:errorsend.html");
exit();
}
Название: Форма почтой
Отправлено: D13@ от 04 Января 2003, 22:15:08
new Спасибо. Да сам мог такую фигну исправит но не заметил. Я проголосовал за тебя в рейтинге.
Название: Форма почтой
Отправлено: new от 04 Января 2003, 22:20:25
D13@
Цитировать
Спасибо

Дык..

Цитировать

mail($toemail,"$subject","$message $yeshow","From:$fromname <$fromemail>");


Это где то что то не стыкуется, точнее не очень  красиво выглядит - я имею ввиду это:
,"$subject","$message $yeshow"
Посмотри это ещё раз внимательно.
Название: Форма почтой
Отправлено: D13@ от 04 Января 2003, 23:27:18
new
Цитировать


mail($toemail,"$subject","$message $yeshow","From:$fromname <$fromemail>");
Нет тут я полную функцию прописываю хост требует:
mail("to@mail", "subject","message",
              "From: \\n".
              "MIME-Version: 1.0\\n".
              "Content-Type: text/html; charset=windows-1251\\n".
              "Content-Transfer-Encoding: 8bit\\n".
              "Reply-To: \\n".
              "Return-path: \\n".
              "X-Priority: 3\\n".
              "X-Mailer: web mail");
Спасибо. Вот бы все так отвечали как new!