这是我的代码:
<?php
if ( isset($_POST['send']) ) {
$name = $_POST['name'];
$to = 'kiarash@gmail.com';
$subject = 'Test Sending';
$message = 'This is Test for sending Mail';
$header = 'Content-type: text/plain; charset="utf-8"' . "\r\n" .
'From: test@site.ir' . "\r\n" .
'Replt-To: test@site.ir' . "\r\n";
$mailsent = mail($to, $subject, $message, $header);
echo "this is mail sent---> " . $mailsent;
}
?>
和这个HTML代码:
<form action="#" method="post" name="frm">
<input type="text" name="name" />
<input type="submit" value="send" name="send" />
</form>
我的主人在并行Plesk上......但邮件没有发送给......
我的问题是什么?你对我有什么想法或建议吗?
这是完整的代码:
<!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>
<?php
if ( isset($_POST['send']) ) {
$name = $_POST['name'];
ini_set('error_reporting', E_ALL);
error_reporting(E_ALL);
$to = 'kiarash@gmail.com';
$subject = 'Test Sending';
$message = 'This is Test for sending Mail';
$header = 'Content-type: text/plain; charset="utf-8"' . "\r\n" .
'From: info@site.ir' . "\r\n" .
'Reply-To: info@site.ir' . "\r\n";
$mailsent = mail($to, $subject, $message, $header);
if($mailsent){
echo "success";
}else{
echo "not sent";
}
}
?>
<form action="#" method="post" name="frm">
<input type="text" name="name" />
<input type="submit" value="send" name="send" />
</form>
</body>
</html>
答案 0 :(得分:1)
尝试放
ini_set('error_reporting', E_ALL);
error_reporting(E_ALL);
在PHP代码的顶部。
另外,替换
echo "this is mail sent---> " . $mailsent;
与
if($mailsent){
echo "success";
}else{
echo "not sent";
}
因为$mailsent
不是字符串,所以你不应该尝试回应它。
制作php_info()
文件并检查邮件参数也可能有所帮助。
答案 1 :(得分:1)
试试这个,你的标题很时髦。经过测试,它确实有效。
<?php
ini_set('error_reporting', E_ALL);
error_reporting(E_ALL);
?><!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>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
if (isset($_POST['send'])) {
$name = $_POST['name'];
$from = "info@site.ir";
$to = 'kiarash@gmail.com';
$subject = 'Test Sending';
$message = 'You got a message from '. $name;
$headers = array(
'MIME-Version: 1.0',
'Content-Type: text/html; charset="UTF-8";',
'Content-Transfer-Encoding: 7bit',
'Date: ' . date('r', $_SERVER['REQUEST_TIME']),
'From: ' . $from,
'Reply-To: ' . $from,
'Return-Path: ' . $from
);
$mailsent = mail($to, $subject, $message, implode("\n", $headers));
if($mailsent){
echo "success";
}else{
echo "not sent";
}
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="frm">
<input type="text" name="name" />
<input type="submit" value="send" name="send" />
</form>
</body>
</html>