2013-05-07 84 views
1

我試圖讓電子郵件在彈出發送了我的網站上,你可以通過下面的鏈接查看: http://www.madaxedesign.co.uk不明白爲什麼我的聯繫方式是不發送電子郵件

但是它完美地重定向到但是在重定向它之後,感謝消息不會實現PHP。下面我已經展示了用於這個聯繫表單的PHP,HTML和Jquery。

HTML:

<form id="submit_message" class="hide_900" action="/send.php" method="post"> 
      <div id="NameEmail"> 
       <div> 
        <label for="name">Name*</label> 
        <input type="text" title="Enter your name" name="name"/> 
       </div> 
       <div> 
        <label for="email">Email*</label> 
        <input type="text" title="Enter your email address" name="email"/> 
       </div> 
      </div> 
      <div id="MessageSubmit"> 
       <div> 
        <textarea maxlength="1200" title="Enter your message" name="message"></textarea> 
        <label for="message">Message</label> 
       </div> 
       <div class="submit"> 
        <input type="submit" value="Submit"/> 
       </div> 
      </div> 
     </form> 

PHP:

<?php 
$name = $_POST['name']; 
$email = $_POST['email']; 
$message = $_POST['message']; 
$formcontent="From: $name \n Message: $message"; 
$recipient = "[email protected]"; 
$subject = "Email From Madaxe"; 
$mailheader = "From: $email \r\n"; 
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!"); 
header('Location: /thanks.html'); 
exit(); 
?> 

的Jquery:

 $('form#submit_message').live('submit', function() { 
     $('#popup').load('/thanks.html'); 
     return false; 
    }); 

我想知道如果任何人都可以快速地看看,看看,如果我錯過什麼明顯的,我可以快速修復,甚至指向正確的方向。

謝謝

+0

什麼是在您的語句中返回false的目的 – kumar 2013-05-07 10:09:07

+0

您的表單是開放的郵件頭注入。總是檢查發件人地址是否有效,否則注入'bla @ bla \ r \ nBcc:spam @ example.com'很容易。 – 2013-05-07 10:09:29

+0

in Jquery:try'return true' – Joddy 2013-05-07 10:17:28

回答

0

你並不需要jQuery代碼。實際上它會阻止您的默認操作形式action=send.php。並且它不會將您的輸入傳遞給send.php

+0

我需要Jquery在彈出式窗口中發送感謝消息,不過像Luke說我可以使用Ajax來做到這一點。但不完全理解爲什麼我的jquery阻止它被髮送。 – MaxwellLynn 2013-05-07 10:18:15

+0

你有'header('Location:/thanks.html');',那麼我認爲,你不需要 – Amir 2013-05-07 10:19:22

+0

我試圖去看看它是否改變了什麼,但它仍然沒有發送。 – MaxwellLynn 2013-05-07 10:25:33

0

$.live()在jQuery 1.9中已棄用,這就是您似乎正在使用的內容。請降級或使用替代功能,如.submit()

$('#submit_message').submit(function (e) { 
    e.preventDefault(); 
    $('#popup').load('/thanks.html'); 
} 

而且,這是至關重要的,你使用他們的電子郵件標題前淨化你的$_POST輸入,否則黑客可以注入壞事變成你的頭。

0

如果您嘗試通過本地主機發送郵件,則需要更改php.ini文件中的某些設置。請參閱下面的鏈接來完成此操作

http://blog.techwheels.net/send-email-from-localhost-wamp-server-using-sendmail/ 
相關問題