【发布时间】:2015-09-30 16:49:58
【问题描述】:
基本上我使用 php 和 mysql 来扩展邮件客户端的功能,使用 curl 将数据发送到我的服务器,然后输入到我数据库中的表 A 中,然后我选择表 A 中的所有数据匹配今天的日期,如果日期匹配,则将其插入表 B:
$date = $_POST['dateAdded'];
$today = date("Y-m-d");
if ($date === $today) {
$link->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql="INSERT INTO `$tableB` (`$fields`) SELECT * FROM $tableA WHERE date_Added='$today'";
$link->exec($sql);
此 IF 语句中还运行了其他代码,但我认为它与问题无关。我知道此代码还有其他问题,例如不转义帖子值等,但这是我将在不久的将来解决的问题。问题是,每当此代码作为 cron 作业的一部分运行时,它只会将一行插入 $tableB 但是当我从 tableA 清除 tableB 和一个匹配 $today 的值并重新运行它每次都有效的代码时(即,如果我运行手动),唯一一次它不起作用是通过 cron 作业。如果需要更多代码,我很乐意提供,欢迎提供任何帮助。
cron 作业使用 curl 运行,因为数据位于不同的服务器上。
这可能与 curl 最初通过 cron 发送数据的方式有关吗? 还是SQL语句本身的问题?
谢谢。
【问题讨论】: