【发布时间】:2015-08-18 11:35:03
【问题描述】:
我正在努力使用由 Cronjob 激活并包含重定向的 PHP 脚本。
脚本在我的数据库中查找记录,发送适当的电子邮件,然后重定向到已编译的 URL,以便将记录的详细信息导入外部系统。
电子邮件部分通过 Cronjob 可以正常工作,但重定向不能,我知道这是因为 Cronjobs 不在浏览器中运行,但我不确定重定向到 URL 的最佳替代方法是什么。
下面的简化代码:
<?php
// Connect to DB
require_once($_SERVER['DOCUMENT_ROOT']."/admin/inc/dbconnect.php");
// Check DB for quotes that have not been sent to this client
$query_quotes = "SELECT * FROM quotes WHERE sent_client = 0 LIMIT 1";
$view_request = mysqli_query($GLOBALS['db_connect'], $query_quotes);
// Send to external system and email customer with quote
while ($quotes = mysqli_fetch_array($view_request)){
$Body = "Email Content";
// Send email via Swift Mailer
// Send quote information to third party system via URL redirect
header('Location: http://exampleurl/?FirstName='.rawurlencode($quotes['name']).'&businessName='.rawurlencode($quotes['company_name']).'.');
}
?>
【问题讨论】:
-
使用 cURL php.net/manual/en/book.curl.php 可能会有更好的运气。
-
谁能帮我解决在这种情况下如何使用 cURL 的问题?我可以在服务器上制作一个简单的 cURL 脚本,但尝试复制重定向似乎会导致超时错误,我想是因为它期待的响应不会出现?
-
我不太明白你所说的重定向是什么意思?从您的示例来看,一个简单的 HTTP 请求就足够了。