我尝试使用php mail()函数从localhost发送电子邮件到我的雅虎电子邮件帐户,返回说我成功发送了电子邮件,但我没有收到任何电子邮件.我一直在阅读并尝试许多所谓的"简单方式"来发送电子邮件,但结果令人失望,它们都不适合我.以下是代码,配置和错误消息.有人可以用这个启发我吗?谢谢.
PHP代码
<?php
$to = 'myemail@yahoo.com';
$subject = 'Fake sendmail test';
$message = 'If we can read this, it means that our fake Sendmail setup works!';
$headers = 'From: myemail@egmail.com' . "\r\n" .
'Reply-To: myemail@gmail.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if(mail($to, $subject, $message, $headers)) {
echo 'Email sent successfully!';
} else {
die('Failure: Email was not sent!');
}
?>
Run Code Online (Sandbox Code Playgroud)
配置php.ini(我正在使用gmail邮件服务器)
SMTP = smtp.gmail.com
smtp_port = 587
sendmail_from = myemail@gmail.com
sendmail_path ="\"C:\ xampp\sendmail\sendmail.exe \" - t"
sendmail.ini的配置
smtp_server …
嗨,我有下面的脚本问题.我认为问题在于需要通过AJAX发送到php的数据.
jQuery的
$('.send').live("click", function(){
$.ajax({
url:'foobar.php',
type:'post',
data: 'id=' + $(this).attr('id'),
dataType:'json',
contentType: 'application/json; charset=utf-8',
success: function(data) {
switch (data.status)
{
case "a":
alert(data.text);
break;
case "b":
alert(data.text);
break;
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert ("error: "+textStatus);
}
})
}
Run Code Online (Sandbox Code Playgroud)
而且,PHP
$id = $_REQUEST['id'];
switch ($id) {
case "foo":
$data["status"] = "a";
$data["text"] = "foo-foo";
echo json_encode($data);
break;
case "bar":
$data["status"] = "b";
$data["text"] = "bar-bar";
echo json_encode($data);
break;
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我这样做
//data: 'id=' + $(this).attr('id'),
Run Code Online (Sandbox Code Playgroud)
并改变这一点
$id = …Run Code Online (Sandbox Code Playgroud) 我很难理解不同的浏览器如何以不同的方式处理我的脚本。首先请看一下我用于验证用户的这个简单代码。
<?php
session_start ();
if (!isset($_SESSION["login"] , $_SESSION['email']))
{
header("location: index.php");
};
include ("DBconn.php");
?>
Run Code Online (Sandbox Code Playgroud)
会话成功创建并进入页面后,发生的情况是当我重新加载页面时,以某种方式销毁/丢失之前创建的登录会话并重定向到登录页面。我尝试检查会话 ID,但它没有改变。此问题在 FF 和 Chrome 最新版本中发生,在 Opera 18 或 Chrome 旧版本中不会发生。请有人提供一些帮助来解决这个问题。非常感谢。
这是我完整的 login.php。
<?php
session_start ();
include ("DBconn.php");
$email = mysql_real_escape_string ($_REQUEST['email']);
$pass = mysql_real_escape_string ($_REQUEST['pass']);
$passi_db = md5 ($_REQUEST['pass']);
$query = "SELECT * FROM members WHERE email = '$email'";
$mail = mysql_query ($query);
if (mysql_num_rows ($mail) == 1)
{
$query = "SELECT * FROM members WHERE email = '$email' AND pass_db = '$pass_db' AND …Run Code Online (Sandbox Code Playgroud)