Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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_Json_Email - Fatal编程技术网

php邮件联系表

php邮件联系表,php,json,email,Php,Json,Email,你好,我需要帮助。我试图在联系人表单中提交信息,但返回解析错误。提交表单应该在用户单击“发布作业”按钮后将详细信息发送到我的电子邮件地址。代码如下: <?php $send_email_to = "email@example.com"; function send_email($name,$email,$phone,$subject,$message) { global $send_email_to; if($message=='message')$message='';

你好,我需要帮助。我试图在联系人表单中提交信息,但返回解析错误。提交表单应该在用户单击“发布作业”按钮后将详细信息发送到我的电子邮件地址。代码如下:

<?php 
$send_email_to = "email@example.com";

function send_email($name,$email,$phone,$subject,$message)
{
  global $send_email_to;  
  if($message=='message')$message='';
  $headers = "MIME-Version: 1.0" . "\r\n";
  $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
  $headers .= "From: ".$email. "\r\n";
  $message = "<strong>Email = </strong>".$email."<br>";  
  $message .= "<strong>Name = </strong>".$name."<br>";     
  $message .= "<strong>Phone = </strong>".$phone."<br>";     
  $message .= "<strong>Message = </strong>".$message."<br>";
  @mail($send_email_to, $subject, $message,$headers);
  return true;
}

function validate($name,$email,$phone,$message,$subject)
{
  $return_array = array();
  $return_array['success'] = '1';
  $return_array['name_msg'] = '';  
  $return_array['email_msg'] = '';
  $return_array['phone_msg'] = '';
  $return_array['message_msg'] = '';
  $return_array['subject_msg'] = '';

 if($email == '')
  {
    $return_array['success'] = '0';
    $return_array['email_msg'] = 'email is required';
  }
  else
  {
    $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
    if(!preg_match($email_exp,$email)) {
      $return_array['success'] = '0';
      $return_array['email_msg'] = 'Enter valid email.';  
    }
  }

  if($name == '')
  {
    $return_array['success'] = '0';
    $return_array['name_msg'] = 'Name is required';
  }
  else
  {
     $string_exp = "/^[A-Za-z .'-]+$/";
    if (!preg_match($string_exp, $name)) {
      $return_array['success'] = '0';
     $return_array['name_msg'] = 'Enter valid Name.';
    }
  }

  if($phone == '')
  {
    $return_array['success'] = '0';
    $return_array['phone_msg'] = 'Phone is required';
  }
  else
  {
    $string_exp = "/^[A-Za-z .'-]+$/";
     if (!preg_match($string_exp, $phone)) {
       $return_array['success'] = '0';
     $return_array['phone_msg'] = 'Enter valid Phone.';
    }
  }

  if($subject == '')
  {
    $return_array['success'] = '0';
    $return_array['subject_msg'] = 'Subject is required';
  }

  if($message == '')
  {
    $return_array['success'] = '0';
    $return_array['message_msg'] = 'Message is required';
  }
  else
  {
    if (strlen($message) < 2) {
      $return_array['success'] = '0';
      $return_array['message_msg'] = 'Enter valid Message.';
    }
  }  

  return $return_array;
}

$name = $_POST['name'];
$phone = $_POST['phone'];
$email = $_POST['email'];
$message = $_POST['message'];
$subject = $_POST['subject'];

$return_array = validate($name,$email,$phone,$message,$subject);
if($return_array['success'] == '1')
{
  send_email($fname,$email,$phone,$subject,$message);
}

header('Content-type: text/json');
echo json_encode($return_array);
die();

?>

这对我来说已经在许多服务器上工作了很多年。 在-fmailer@之后会发生什么并不重要。ps.com无效

  $mailheaders = "From:  your@email_address.com <> \n";
  $mailheaders .= "Reply-To: your@email_address.com \n\n";
  if (mail($to,$subject, $message, $mailheaders, "-fmailer@ps.com")){
    success
  }
  else{
    fail
  }
$mailheaders=“发件人:your@email_address.com\n“;
$mailheaders.=“回复:your@email_address.com\n\n“;
如果(邮件($to、$subject、$message、$mailheaders)-fmailer@ps.com")){
成功
}
否则{
失败
}
如果传送有问题,您可能会或可能不会收到无法传送的消息。电子邮件服务器通常不会回复无效用户


至于验证,只需在您的电子邮件中包含一个链接,请他们单击该链接以验证他们是否收到了该邮件。在联系人表记录中添加一个已验证字段,说明电子邮件已验证,验证后不再包含验证消息。

最好提供您的错误。我建议不要对电子邮件地址验证过于严格。例如,允许电子邮件地址包含
+
字符,但在您的代码中它将失败。此外,像
.co.jp
这样的域也会失败。通常情况下,如果地址在at标志后正好有一个
@
,并且至少有一个
,就您的代码而言,这可能是正常的。您是否指定了您的电子邮件地址