我正在尝试从外部网站检索数据,该网站有1行文字/网址,每5分钟更改一次。现在我想获取此URL并使用此URL提交表单(每5分钟一次)并将其存储到我的数据库(php文件中的Cron作业?)或者直接将其插入我的mysql数据库。
这甚至可能吗?
答案 0 :(得分:2)
据我了解,您希望获得2项任务:
1)从外部页面获取URL并将其存储在数据库中
2)每5分钟执行一次以上。
他们是:
1)CURL是一种很好的方式,应该可以在所有服务器上使用。您也可以尝试使用file_get_contents,它不受您服务器的限制。卷曲功能如下所示:
<?php
function curl_get_file_contents($URL)
{
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_URL, $URL);
$contents = curl_exec($c);
curl_close($c);
if ($contents) return $contents;
else return FALSE;
}
?>
此函数返回包含页面内容的字符串。您可能需要从那里提取URL,如果URL具有恒定长度,则使用PHP SUBSTR或STRPOS。获取URL后,将其存储在数据库中 - 不需要使用表单。
2)每5分钟执行一次脚本的最简单方法是使用javascript。它会是这样的:
<html>
<head>
<script type="text/JavaScript">
<!--
function timedRefresh(timeoutPeriod) {
setTimeout("location.reload(true);",timeoutPeriod);
}
// -->
</script>
</head>
<body onload="JavaScript:timedRefresh(300000);">
<?php // your code here
此页面每5分钟刷新一次(30万毫秒)并且每次都会执行PHP脚本 - 但是你必须在浏览器中不断打开它。这是一个问题,使用CRON(我几乎没用过它,所以我没有帮助)。