2016-04-21 2 views
0

Я никогда не работал с php до и пытаюсь сделать свою контактную форму функциональной с помощью некоторого кода php, который я приобрел через google.Проблема с отправкой электронной почты через контактную форму с помощью php

Прежде всего, мне нужно связать его с моей страницей html каким-то образом (например, css/javascript), или это нормально работает, если она разделяет одну и ту же папку?

Я изменил имена определенных частей, чтобы они соответствовали именам в моем html, но мне не удалось заставить его работать. Когда я нажимаю кнопку отправки, я получаю страницу с сообщением ...

"; exit; } // prepare email body text $Body = ""; $Body .= "Name: "; $Body .= $Name; $Body .= "\n"; $Body .= "Company: "; $Body .= $Company; $Body .= "\n"; $Body .= "Email: "; $Body .= $Email; $Body .= "\n"; $Body .= "Deadline: "; $Body .= $Dealine; $Body .= "\n"; $Body .= "Interested: "; $Body .= $Interested; $Body .= "\n"; $Body .= "Message: "; $Body .= $Message; $Body .= "\n"; // send email $success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>"); // redirect to success page if ($success){ print ""; } else{ print ""; } ?> 

Код php выглядит следующим образом.

<?php 

$EmailFrom = "[email protected]"; 
$EmailTo = "[email protected]"; 
$Subject = "contact-form"; 
$Name = Trim(stripslashes($_POST['Name'])); 
$Company = Trim(stripslashes($_POST['Company'])); 
$Email = Trim(stripslashes($_POST['Email'])); 
$Deadline = Trim(stripslashes($_POST['Dealine'])); 
$Interested = Trim(stripslashes($_POST['Interested'])); 
$Message = Trim(stripslashes($_POST['Message'])); 

// validation 
$validationOK=true; 
if (!$validationOK) { 
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">"; 
exit; 
} 

// prepare email body text 
$Body = ""; 
$Body .= "Name: "; 
$Body .= $Name; 
$Body .= "\n"; 
$Body .= "Company: "; 
$Body .= $Company; 
$Body .= "\n"; 
$Body .= "Email: "; 
$Body .= $Email; 
$Body .= "\n"; 
$Body .= "Deadline: "; 
$Body .= $Dealine; 
$Body .= "\n"; 
$Body .= "Interested: "; 
$Body .= $Interested; 
$Body .= "\n"; 
$Body .= "Message: "; 
$Body .= $Message; 
$Body .= "\n"; 


// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>"); 

// redirect to success page 
if ($success){ 
print "<meta http-equiv=\"refresh\" content=\"0;URL=contact-thanks.php\">"; 
} 
else{ 
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">"; 
} 
?> 

Вот мой HTML

<div role="form" class="form-wrapper"> 
<form name="contact-f" action="contact-form.php" method="post"> 
<div class="f-width"> 
<div class="f-col-1 f-group-1"><input type="text" name="Name" class="c-back input-t f-col-1" placeholder="Name" /></div> 
<div class="f-col-1 f-group-2"><input type="email" name="Company" class="c-back input-t f-col-1" placeholder="Company Name" /></div> 
<div class="f-col-1 f-group-1"><input type="text" name="Email" class="c-back input-t f-col-1" placeholder="Email Address" /></div> 
<div class="f-col-1 f-group-2"><select name="Deadline" class="c-back input-t f-col-1"><option class="opt-f">Do you have a Deadline?</option><option value="Not yet" class="opt-f">Not yet</option><option value="Less than 1 Month" class="opt-f">Less than 1 Month</option><option value="2-3 Months" class="opt-f">2-3 Months</option><option value="3-6 Months" class="opt-f">3-6 Months</option><option value="6+ Months" class="opt-f">6+ Months</option></select></div> 
<div class="f-col-2 f-group-3"><select name="Interested" class="c-back input-t f-col-2"><option class="opt-f">What are you interested in?</option><option value="Branding" class="opt-f">Branding</option><option value="Print Design" class="opt-f">Print Design</option><option value="Illustration" class="opt-f">Illustration</option><option value="Website/UI Design" class="opt-f">Website/UI Design</option><option value="Literature" class="opt-f">Literature</option><option value="Video Editing" class="opt-f">Video Editing</option><option value="Other" class="opt-f">Other</option></select></div> 
<div class="f-col-3 f-group-4"><textarea name="Message" class="c-back input-t message-f f-col-3" placeholder="Describe your project..."></textarea></div> 
<div class="f-submit f-group-5"><input type="Submit" name="Submit" value="Send" class="form-btn" /></div> 
</div></form></div> 

(И да, я создал контакт-thanks.php файл, он требует в конце).

+0

Этот скрипт PHP здесь - имя файла заканчивается на .php или .html? – larsAnders

+0

Он заканчивается на .php – ccc

+0

Также имеет значение какие свойства как в теге формы в html отдельно от действия. – ccc

ответ

0

Так много $ Body, как о:

$Body = " Name : $Name \n Company : $Company \n Deadline : $Deadline \n Interested : $Interested \n Message : $Message"; 

это то, что Вы ищете?

+0

По-прежнему появляется такая же ошибка с меньшим количеством слов. Спасибо за попытку. – ccc

+0

Что говорит об ошибке? Скажите нам (мне точно) – diwang

+0

Как только я нажму кнопку «Отправить», он направит меня на пустую страницу с большей частью текста php (первая строка кода в исходном вопросе). – ccc

Смежные вопросы