通过PHP使用域服务器电子邮件发送电子邮件

通过PHP使用域服务器电子邮件发送电子邮件,php,Php,.大家好,有谁能指导我如何创建一个PHP表单,使用我的域服务器提供的电子邮件向所需的收件人发送电子邮件 <?php if($_POST['submit']) { $name = $_POST['name']; $message = $_POST['message']; if($name&&$message) { $namelen = 20; $messagelen = 300; if(str

.大家好,有谁能指导我如何创建一个PHP表单,使用我的域服务器提供的电子邮件向所需的收件人发送电子邮件

<?php

if($_POST['submit'])
{
    $name = $_POST['name'];
    $message = $_POST['message'];

    if($name&&$message)
    {
        $namelen = 20;
        $messagelen = 300;
        if(strlen($name)<=$namelen&&strlen($message)<=$messagelen)
        {
            $to = "myemail@yahoo.com";
            $subject = "Test Email";
            $headers = "From: my server provided email here";

            ini_set("SMTP", "/*i placed my domain server here");

            $body = "This is an email from $name\n\n$message";

            mail($to, $subject, $body, $headers);
            die();
        }
        else
        die("Max length for name is $namelen, and max length for message is $messagelen.");
    }
    else
    die("You must enter a name <u>and</u> message");
    /*echo $name.' '.$message;*/
}
?>


<!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 http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<form action='mailpush.php' method='POST'>
    Name:<input type='text' name='name' maxlength='20'><br>
    Message:<br /><textarea name='message'></textarea><p>
    <input type='submit' name='submit' value='Send me this'></p>
</form>
</body>
</html>

无标题文件
名称:
消息:

.这是我目前掌握的密码。但是当我尝试发送时,我没有收到任何东西

当我尝试发送时,我没有收到任何东西

所以实际上,您的问题不在于编写代码,而在于诊断代码失败的原因

首先要注意的是,您没有检查mail()调用的返回值

ini_集(“SMTP”,“/*我把我的域服务器放在这里”)

这是什么意思?没有所谓的“域服务器”。有域名服务器、SMB域主机、SMTP服务器

接下来,您没有提供运行此操作系统的详细信息,也没有提供php.ini中的邮件配置:尽管您显式地设置SMTP主机(设置为什么?是否可解析?),但SMTP_端口的设置是什么?您可以远程登录到指定机器上运行PHP代码的端口吗


在你的代码和邮箱之间有很多技术方面的东西——其中很多可能会导致邮件传递的问题——你看过这些了吗?您的本地SMTP服务器只是链中的下一个跃点,您是否检查了您的电子邮件是否在那里排队?如果是,那么它与PHP无关。

只需使用PHP ini_set(“SMTP”,“mys SMTP server here:25”)的邮件功能,我就可以在windows xp上运行它。