Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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
mysql到php电子邮件设置_Php_Mysql_Email - Fatal编程技术网

mysql到php电子邮件设置

mysql到php电子邮件设置,php,mysql,email,Php,Mysql,Email,我正在尝试向mysql表中的一个电子邮件地址发送一封包含该行信息的电子邮件。我的代码在日期、时间和发送支票时停止。我不确定这条线。请看下面我的代码。这是一个PHP专用文件,因为它将成为一个cron作业 我的日期和时间由输入数据的人输入。 日期格式:2015-05-07 时间格式:14:32 我得到了这个错误 您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行的“:06 | | sent=NULL”附近使用的正确语法 <!DOCTYPE html PUBLIC "

我正在尝试向mysql表中的一个电子邮件地址发送一封包含该行信息的电子邮件。我的代码在日期、时间和发送支票时停止。我不确定这条线。请看下面我的代码。这是一个PHP专用文件,因为它将成为一个cron作业

我的日期和时间由输入数据的人输入。 日期格式:2015-05-07 时间格式:14:32

我得到了这个错误 您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行的“:06 | | sent=NULL”附近使用的正确语法

<!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" />


<?php

require ('class.phpmailer.php');
require ('login.php');

$link = mysql_connect($REMINDER_DB_HOST, $REMINDER_DB_USER, $REMINDER_DB_PASSWORD);

if (!link) {
die('Could not connect: ' . mysql_error());
}
$db_selected = mysql_select_db($REMINDER_DB_NAME, $link);

if (!db_selected) {
die('Can\'t use ' . DB_NAME . ' : ' . msql_error());
}
$today = date("Y-m-d");
$now = date("H:i");

echo $today;
echo $now;

$sql = mysql_query("SELECT * FROM alert WHERE date < $today || time < $now || sent = NULL") or die(mysql_error());

while($row = mysql_fetch_assoc($sql)) {


$name = $row['name'];
$to = $row['email'];
$date = $row['date'];
$time = $row['time'];
$eslticket = $row['eslticket'];
$notes = $row['notes'];

$mail = new PHPMailer;

$g_smtp_connection_mode   = 'ssl';
$g_phpMailer_method        = 2;
$g_smtp_host              = 'smtp.gmail.com';
$g_smtp_port              = 465;
$g_smtp_username          = $mailuser;
$g_smtp_password          = $mailpassword;



$subject = 'ESL Ticket Reminder: ' .$eslticket;
$msg = 'Good Day, '.$name.'\n'.'You have requested an alert email to be sent to you about '.$eslticket.' on '.$date.' at '.$time.'. Please see below to review your notes on this ticket.'.'\n'.'\n'.$notes;

if(mail($to, $subject, $msg)) {
$sql = "INSERT INTO alert (sent) VALUES ('1')";
} else {

}

}
?>
</head>
<body>
</body>
</html>

$sql=mysql\u查询(“从警报中选择*日期<'$today'或时间<'$now'或sent=NULL”)或死亡(mysql\u错误());

replicate-欢迎再次发布。不要忘了点击答案左边的粗框将其设置为已解决。zeflex 2个问题:为什么它没有循环,为什么它没有在发送列中输入1?
while($row=mysql\u fetch\u assoc($sql))
>>执行变量转储以检查$row的输出。2) 您正在调用PhpMailer,但您使用
if(mail($to,$subject,$msg))
>而不使用PhpMailer。3)
$sql=“插入警报(已发送)值('1')”
这很酷,但是
mysql\u查询
指令在哪里?此外,我猜您更希望更新行,而不是插入新行。4) 慢慢来,一步一步地调试代码1)我的var_dump只给了我一行代码,2)我将我的邮件更新到$mail->addAddress($to)$邮件->主题='ESL票务提醒:'。$eslticket$mail->Body='Good Day,'.$name'.
。'您已请求在'.$date'和'.$time'向您发送一封有关'$eslticket'的提醒电子邮件。'。请参阅下面的内容,查看您在该车票上的备注。'

。'$notes;如果(!$mail->send()){echo'消息无法发送。;;echo'邮件错误:'.$mail->ErrorInfo;}其他{echo'消息已发送';$sql=“插入警报(发送)值('1')”;}1)是否返回一行?2) 关于phpmailer代码,我无法在这里的评论中阅读,太难了。但是为什么要使用插入而不是更新。。。哪里语法?您只需添加一个带有INSERT的条目,该条目与之前执行的SELECT查询无关。同样在
$sql='之后插入。。。(最好使用更新)
,运行
mysql\u查询($sql)
$sql = mysql_query("SELECT * FROM alert WHERE date < '$today' OR time < '$now' OR sent = NULL") or die(mysql_error());