Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 主页上出现的联系人表单响应_Php_Html - Fatal编程技术网

Php 主页上出现的联系人表单响应

Php 主页上出现的联系人表单响应,php,html,Php,Html,我有一个网页与锚和联系形式是最后一部分。我在下面有一条回音信息,一旦我加载页面,它就会出现在那里。有没有办法让它只在邮件发送时出现?此外,如果页面已加载,它会自动发送邮件。谢谢 表单的代码 <form name="form1" id="ff" method="post" action="insert.php"> <label> <span>Name*:</span> <input type="text" placehol

我有一个网页与锚和联系形式是最后一部分。我在下面有一条回音信息,一旦我加载页面,它就会出现在那里。有没有办法让它只在邮件发送时出现?此外,如果页面已加载,它会自动发送邮件。谢谢

表单的代码

<form name="form1" id="ff" method="post" action="insert.php"> 
  <label>
    <span>Name*:</span>
    <input type="text" placeholder="Please enter your name" name="name" id="name" required>
  </label>

  <label>
    <span>Phone*:</span>
    <input type="tel" placeholder="Please enter your phone" name="phone" id="phone" required>
  </label>

  <label>
    <span>Email*:</span>
    <input type="email" placeholder="youremail@mail.com" name="email" id="email" required>
  </label>

  <label>
    <span>Message*:</span>
    <textarea rows="4" cols="55" name="comment" id="comment" placeholder="Purpose of contacting"></textarea>
  </label>

  <input class="sendButton" type="submit" name="Submit" value="Send">
  <?php 
  {
    if (isset($_POST['name'])) 
    // Get values from the form
    $name=$_POST['name'];
    $phone=$_POST['phone'];
    $email=$_POST['email'];
    $comment=$_POST['comment'];

    $to = "#";
    $subject = "New Mail From Website";
    $message = " Name: " . $name .  "\r\n Phone: " . $phone . "\r\n Email: " . $email . "\r\n Message: " . $comment;
    //$message = $comment;

    $from = "#";
    $headers = "From:" . $from . "\r\n";
    $headers .= "Content-type: text/plain; charset=UTF-8" . "\r\n"; 

    if(@mail($to,$subject,$message,$headers,$email))
    {
      echo "<p class='contact-text'>Thank you for your email. I will contact you shortly!</p>";
    }else{
      echo "<p class='contact-text'>Error! Please try again.</p>";
    }
  } 
  ?>
</form>

姓名*:
电话*:
电邮*:
信息*:
用这个

<?php 
  if (isset($_POST['name'])) {
    // Get values from the form
    $name=$_POST['name'];
    $phone=$_POST['phone'];
    $email=$_POST['email'];
    $comment=$_POST['comment'];

    $to = "#";
    $subject = "New Mail From Website";
    $message = " Name: " . $name .  "\r\n Phone: " . $phone . "\r\n Email: " . $email . "\r\n Message: " . $comment;
    //$message = $comment;

    $from = "#";
    $headers = "From:" . $from . "\r\n";
    $headers .= "Content-type: text/plain; charset=UTF-8" . "\r\n"; 

    if(@mail($to,$subject,$message,$headers,$email))
    {
      echo "<p class='contact-text'>Thank you for your email. I will contact you shortly!</p>";
    }else{
      echo "<p class='contact-text'>Error! Please try again.</p>";
    }
  } 
?>

将php代码放在表单之外,然后再试一次。“邮件”之前的“@”是否会抑制任何错误代码?@user2983295:不,它会:“@”操作符抑制错误消息,这是一个教训,”->;因此,说“@mail”意味着“发送电子邮件。如果你不发送,就不要在意,继续吧”。@briosheje但它怎么能比我的其他项目更有效,而不是这个项目呢/@user2983295:可能有很多原因导致mail()函数无法工作。检查:并检查您的php.ini是否配置正确:)有时需要手动设置“mailfrom”和其他一些东西,例如端口!更新:检查这个,例如:(请注意这些东西通常取决于您安装的web服务器、防火墙等)好的,现在消息根本不显示。有什么想法吗?试着删除“@”并将此代码置于顶部:错误报告(E_ALL);然后你可以试着在php代码前面加上:(对不起:/