PHP邮件脚本没有发送到我的电子邮件

时间:2013-04-14 22:11:38

标签: php

我设置了一个表单,而不是按下图像提交按钮,它将填好的表单发送到商务电子邮件。

这是我用于从我的html链接的php的脚本。

<?php
if(isset($_POST['submit'])) {
$emailbody = 'First Name = '.$_POST['Name']."\n"
.'Surname = '.$_POST['SName']."\n"
.'Email = '.$_POST['email']."\n"
.'Contact Number = '.$_POST['tel_no']."\n"
.'Adress Line 1 = '.$_POST['address_line_1']."\n"
.'Adress Line 2 = '.$_POST['address_line_2']."\n"
.'Town/City = '.$_POST['town_city']."\n"
.'County = '.$_POST['county']."\n"
.'Post Code = '.$_POST['Post_code']."\n"
.'Newsletter = '.$_POST['newsletter']."\n"
.'Events = '.$_POST['events']."\n"
mail('My email@gmail.com', 'Order Form', $emailbody);

    } else {
header('location: Payment.html');
    }
?>

html上的表单已通过操作链接。脚本有什么问题吗?

PS按下图像然后转发到PayPal支付页面。

干杯

编辑: 这是HTML代码:

    <form name="form1" method="post" action="PaymentFormmail.php" align="left">
    <section>
    <h1>Basic Infomation:</h1>
     <p>
    <label for="SName">First Name:</label>
    <input type="text" name="Name" id="Name" style="margin-left:50px;">
  </p>
  <p>
    <label for="SName">Surname:</label>
    <input type="text" name="SName" id="SName" style="margin-left:64px;">
    </p>
     <p>
      <label for="email">Email Address</label>
      <input type="text" name="email" id="email" style="margin-left:28px;">
  </p>
  <p>
    <label for="tel_no">Contact Number:</label>
    <input type="text" name="tel_no" id="tel_no" style="margin-left:14px;">
  </p>
</section>
<section>
<h1>Billing Infomation:</h1>
  <p>
    <label for="address_line_1">Address line 1:*</label>
    <input name="address_line_1" type="text" id="address_line_1" align="right" style="margin-left:20px;">
  </p>
  <p>
    <label for="address_line_2">Address Line 2: </label>
    <input type="text" name="address_line_2" id="address_line_2"style="margin-left:20px;">
  </p>
  <p>
    <label for="town_city">Town/City:*</label>
    <input type="text" name="town_city" id="town_city"style="margin-left:55px;">
  </p>
  <p>
    <label for="county">County:*</label>
    <input type="text" name="county" id="county"style="margin-left:73px;">
  </p>
  <p>
    <label for="Post_code">Post Code:*</label>
    <input type="text" name="Post_code" id="Post_code"style="margin-left:46px;">
  </p>
<h1>News and Events:</h1>
<p>
  <input name="newsletter" type="checkbox" id="newsletter" value="Yes">
  <label for="newsletter">I wish to receive the monthly newsletter from Monster Computers UK</label>
</p>
<p>
  <input name="events" type="checkbox" id="events" value="Yes">
  <label for="events">I wish to receive any infomation about upcomming events</label>
</p>

  </section>
</form>

<p>By Clicking Pay now you agree to the Terms of Service</p>
                    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
                    <input type="hidden" name="cmd" value="_xclick">
                    <input type="hidden" name="business" value="monstercomputeruk@gmail.com">
                    <input type="hidden" name="lc" value="GB">
                    <input type="hidden" name="item_name" id="byoName" value="0">
                    <input type="hidden" name="amount" id="finalpaypal">
                    <input type="hidden" name="currency_code" value="GBP">
                    <input type="hidden" name="button_subtype" value="services">
                    <input type="hidden" name="no_note" value="0">
                    <input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG.gif:NonHostedGuest">
                    <input name="submit" type="image" onClick="MM_validateForm('Name','','R','SName','','R','email','','R','address_line_1','','R','town_city','','R','county','','R','Post_code','','R');return document.MM_returnValue" src="images/buttons/Pay Now.png" alt="PayPal — The safer, easier way to pay online." border="0">
                    <img alt="" border="0" src="https://www.paypalobjects.com/en_GB/i/scr/pixel.gif" width="1" height="1">
                    </form>

1 个答案:

答案 0 :(得分:0)

尝试更改

if(isset($_POST['submit']))

if(isset($_POST['SName']))

我认为$ _POST ['submit']不起作用.. 如果这也失败则意味着信息不会发送到您的脚本。 在这种情况下,请向我们展示脚本中使用的表单的html。

修改

Using if(isset($_POST['submit'])) to not display echo when script is open is not working

HTML后编辑

在你的javascript函数中称为MM_validateForm 使用jquery POST将您的信息发送到您的邮件脚本,并删除if子句检查是否isset。

$.post("test.php", { name: "John", time: "2pm" } );

http://api.jquery.com/jQuery.post/  参见示例部分。