Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.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_Email_Forms - Fatal编程技术网

不使用PHP表单发送电子邮件

不使用PHP表单发送电子邮件,php,html,email,forms,Php,Html,Email,Forms,我有一个我以前用过的表单,它只是一个常规表单。您填写表单并点击提交,它将返回一个感谢页面。所以它从form.html到mailPage.php,然后是Thankyou.html。我已经用过两次同样的表格了,它通常工作正常,但由于某种原因,在这个新网站上它没有发送电子邮件。我知道邮件页面会被呼叫,因为它会将您发送到“谢谢”页面,但不会发送任何电子邮件。你知道是什么原因造成的吗。这是我的密码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 T

我有一个我以前用过的表单,它只是一个常规表单。您填写表单并点击提交,它将返回一个感谢页面。所以它从form.html到mailPage.php,然后是Thankyou.html。我已经用过两次同样的表格了,它通常工作正常,但由于某种原因,在这个新网站上它没有发送电子邮件。我知道邮件页面会被呼叫,因为它会将您发送到“谢谢”页面,但不会发送任何电子邮件。你知道是什么原因造成的吗。这是我的密码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Untitled 1</title>
</head>

<body>
<?php
  $email = $_REQUEST['eMail'] ;
  $comments = $_REQUEST['comments'] ;
  $year = $_REQUEST['year'] ;
  $make = $_REQUEST['make'] ;
  $model= $_REQUEST['model'] ;
  $zip = $_REQUEST['zip'] ;
  $state = $_REQUEST['State'] ;
  $city = $_REQUEST['City'] ;
  $address = $_REQUEST['Address'] ;
  $callTime = $_REQUEST['callTime'] ;
  $workNumber= $_REQUEST['workNumber'] ;
  $foundby = $_REQUEST['foundby'] ;
  $fullName = $_REQUEST['fullName'] ;
  $homeNumber = $_REQUEST['homeNumber'] ;

  mail( "XXXX@XXXXXXXXXXX", "Estimate Request",
    "From:\t$fullName\nEmail:\t$email\nHome Phone:\t$homeNumber\nWork Phone:\t$workNumber\nBest time to call:\t$callTime\nAddress:\n\t$address\n\t$city, $state $zip\nMake:                 $make\tModel:$model\tYear:$year\nFound us by:\t$foundby\n\nComments:\n$comments");
  header( "Location: thankyou.html" );
?>
</body>

</html>

无标题1

我唯一想到的是服务器上没有php邮件定义。。。像exim4之类。

我唯一想到的是服务器上没有php邮件定义。。。像exim4之类的。

您的跑步环境是什么?
它有邮件服务器吗

请提供一些有关这方面的信息
所以我可以给你一个正确的答案

像xampp这样的本地程序通常没有

邮件服务器已预装。

您的运行环境是什么?
它有邮件服务器吗

请提供一些有关这方面的信息
所以我可以给你一个正确的答案

像xampp这样的本地程序通常没有

邮件服务器已预装。

我一直使用PHP中添加的PEAR来发送邮件,因为我对它的操作有更多的控制权。它需要有以下两个包括:

require "Mail.php";
require "Mail/mime.php";
我通常在这两条注释之后从我的表单进行所有处理,然后使用以下代码集将其组合在一起:

    $server   = "mail.myserver.com";
    $username = "myusername@myserver.com";
    $password = "thisIsAPassword";
    $port     = "587";

    // Set Up The Mail Headers
    $hdrsUs = array(
                "From"        => $sender,
                "To"          => $receiverUs,
                "Subject"     => $subjectUs,
                "Return-Path" => $sender
              );

    // Configure the Mailer Mechanism
    $smtp = Mail::factory("smtp",
              array(
                "host"     => $server,
                "username" => $username,
                "password" => $password,
                "auth"     => true,
                "port"     => $port
               )
            );

    $textUs =
      "This is a text version of the e-mail.";

    $htmlUs =
      "<html>
         <body>
           <center>
             <b>This is the HTML version of the e-mail.</b>
           </center>
         </body>
       </html>";

  $mimeUs = new Mail_mime($crlf);

  $mimeUs->setTXTBody($textUs);
  $mimeUs->setHTMLBody($htmlUs);

  // Do not EVER Try to Call These Lines in Reverse Order
  $bodyUs = $mimeUs->get();
  $hdrsUs = $mimeUs->headers($hdrsUs, true);

  // Send the Message
  $mailUs   = $smtp->send($receiverUs, $hdrsUs, $bodyUs);

  if (PEAR::isError($mailUs))
  {
    echo ($mailThem->getMessage());
  }
  else
  {
    echo "&nbsp;<br /><center><b>The Mail Has Sent.</b></center>\n";
  } 
$server=“mail.myserver.com”;
$username=”myusername@myserver.com";
$password=“thissisapassword”;
$port=“587”;
//设置邮件标题
$hdrsUs=阵列(
“发件人”=>$sender,
“致”=>$receiverUs,
“主题”=>$subjectUs,
“返回路径”=>$sender
);
//配置邮件发送机制
$smtp=Mail::factory(“smtp”,
排列(
“主机”=>$server,
“用户名”=>$username,
“密码”=>$password,
“auth”=>正确,
“端口”=>$port
)
);
$textUs=
“这是电子邮件的文本版本。”;
$htmlUs=
"
这是电子邮件的HTML版本。
";
$mimeUs=新邮件的mime($crlf);
$mimeUs->setTXTBody($textUs);
$mimeUs->setHTMLBody($htmlUs);
//永远不要试图以相反的顺序调用这些行
$bodyUs=$mimeUs->get();
$hdrsUs=$mimeUs->headers($hdrsUs,true);
//发送消息
$mailUs=$smtp->send($receiverUs、$hdrsUs、$bodyUs);
如果(PEAR::isError($mailUs))
{
echo($mailtems->getMessage());
}
其他的
{
echo“
邮件已发送。\n”; }
我一直使用PHP中添加的PEAR来发送我的邮件,因为我可以更好地控制它的工作。它需要有以下两个包括:

require "Mail.php";
require "Mail/mime.php";
我通常在这两条注释之后从我的表单进行所有处理,然后使用以下代码集将其组合在一起:

    $server   = "mail.myserver.com";
    $username = "myusername@myserver.com";
    $password = "thisIsAPassword";
    $port     = "587";

    // Set Up The Mail Headers
    $hdrsUs = array(
                "From"        => $sender,
                "To"          => $receiverUs,
                "Subject"     => $subjectUs,
                "Return-Path" => $sender
              );

    // Configure the Mailer Mechanism
    $smtp = Mail::factory("smtp",
              array(
                "host"     => $server,
                "username" => $username,
                "password" => $password,
                "auth"     => true,
                "port"     => $port
               )
            );

    $textUs =
      "This is a text version of the e-mail.";

    $htmlUs =
      "<html>
         <body>
           <center>
             <b>This is the HTML version of the e-mail.</b>
           </center>
         </body>
       </html>";

  $mimeUs = new Mail_mime($crlf);

  $mimeUs->setTXTBody($textUs);
  $mimeUs->setHTMLBody($htmlUs);

  // Do not EVER Try to Call These Lines in Reverse Order
  $bodyUs = $mimeUs->get();
  $hdrsUs = $mimeUs->headers($hdrsUs, true);

  // Send the Message
  $mailUs   = $smtp->send($receiverUs, $hdrsUs, $bodyUs);

  if (PEAR::isError($mailUs))
  {
    echo ($mailThem->getMessage());
  }
  else
  {
    echo "&nbsp;<br /><center><b>The Mail Has Sent.</b></center>\n";
  } 
$server=“mail.myserver.com”;
$username=”myusername@myserver.com";
$password=“thissisapassword”;
$port=“587”;
//设置邮件标题
$hdrsUs=阵列(
“发件人”=>$sender,
“致”=>$receiverUs,
“主题”=>$subjectUs,
“返回路径”=>$sender
);
//配置邮件发送机制
$smtp=Mail::factory(“smtp”,
排列(
“主机”=>$server,
“用户名”=>$username,
“密码”=>$password,
“auth”=>正确,
“端口”=>$port
)
);
$textUs=
“这是电子邮件的文本版本。”;
$htmlUs=
"
这是电子邮件的HTML版本。
";
$mimeUs=新邮件的mime($crlf);
$mimeUs->setTXTBody($textUs);
$mimeUs->setHTMLBody($htmlUs);
//永远不要试图以相反的顺序调用这些行
$bodyUs=$mimeUs->get();
$hdrsUs=$mimeUs->headers($hdrsUs,true);
//发送消息
$mailUs=$smtp->send($receiverUs、$hdrsUs、$bodyUs);
如果(PEAR::isError($mailUs))
{
echo($mailtems->getMessage());
}
其他的
{
echo“
邮件已发送。\n”; }
最常见的问题是电子邮件的输入名称不同。请你做一下好吗-

echo $email; die("");

如果您能看到正确显示的电子邮件,它将与服务器上的SMTP设置有关

最常见的问题是电子邮件的输入名称不同。请你做一下好吗-

echo $email; die("");

如果您能看到正确显示的电子邮件,它将与服务器上的SMTP设置有关

我正在1和1.com上运行它。我没想到会是他们,但我现在看到了他们的支持,我正在1和1.com上运行它。我没想到会是他们,但我现在看到了他们的支持。它确实支持邮件定义。我查看了他们的FAQ,他们给出的使用php邮件的示例与我的做法相同,它确实支持邮件定义。我查看了他们的FAQ,他们给出的使用php邮件的示例与我的做法相同。