HTML Mail发送工具在localhost上工作,但不在服务器上工作

时间:2014-01-22 22:03:08

标签: php

我有这个简单的邮件工具,允许用户输入接收主题并通过下拉菜单选择存储在文件夹中的html模板,Everything在我的localhost上运行良好,但是一旦我将Mail工具上传到服务器上它已停止工作不知道为什么代码是好的,因为它适用于本地主机试图谷歌问题,但仍然无法解决它

PHP代码:

<?php

function LoadTemplate()
    {
        $form='<select name="template">';
        $form.='<option value="" selected="selected">Select Template</option>';
            foreach(glob(dirname(__FILE__) . '/templates/*') as $filename)
        {
            $form.= "<option value='" . $filename . "'>" . basename($filename) . "</option>";
        }        
        $form.='</select>';
        return $form; 
    }

if(isset($_REQUEST['submit'])){
    $to = $_POST['recipient'];
    $subject = $_POST['subject'];
    $message = file_get_contents($_REQUEST['template'], "r") or exit("Unable to open file");
    $headers = "Content-type: text/html\r\n";
    $mail_send = mail($to, $subject, $message, $headers);
    if($mail_send){
     echo 'Mail Send ';
     }else{
     echo 'Try Later';
     }
}

?>

HTML:

<html>
<head></head>
<body>



    <h2>Mail</h2>
    <form name="form1" method="post" action="mail.php">
        Send To:
        <input type="text" id="recipient" name="recipient">
        <br>Subject:
        <input type="text" id="subject" name="subject">
        <br />

            <?php require( 'mail.php'); echo LoadTemplate(); ?>
            <br>

            <input type="submit" value="Send" name='submit'>

    </form>


    <a href="logout.php">Logout</a>
</body>
</html>

正如我所说,应用程序非常简单,但它在我的本地主机上工作得很好不知道为什么id在服务器上不起作用,任何人都可以提出解决方案

1 个答案:

答案 0 :(得分:2)

某些服务器具有某些功能,禁用用户无法启用它们。请咨询您的托管服务提供商,了解他们是否启用了mail()功能。