2015-08-21 99 views
0

我的cron工作不起作用,如果有任何PHP代碼會阻止它成形,我就會徘徊。 我知道它是如何工作的,但我想知道什麼樣的代碼不會在PHP代碼中讀取。Cron工作:代碼你不能有PHP

我找到的一個代碼不起作用,它是sessionstart()$_SESSION,因爲它像cookie一樣將它保存在服務器上,而cron作業不通過服務器或其他東西。

因此,有沒有其他的代碼,不會從你自己的知識,如可能file_get_contentsfopen()工作(我不知道,如果這些不工作,只是讓想法)

編輯

<?php 
$dbhost = "localhost"; 
$dbuser = "it32_2015"; 
$dbpass = "it32_2015"; 
$conn = mysql_connect($dbhost, $dbuser, $dbpass); 
if(! $conn) 
{ 
    die('Could not connect: ' . mysql_error()); 
} 
$sql = 'SELECT Title, Pubdate, Link FROM ytable'; 
mysql_select_db('it32_2015'); 
$retval = mysql_query($sql, $conn); 
if(! $retval) 
{ 
    die('Could not get data: ' . mysql_error()); 
} 
while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) 
{ 
$status .= "速報ニュース:". 
     "{$row['Title']} : ". 
     "ここでチェック!". 
     "{$row['Link']}". 
     "時間:". 
     "{$row['Pubdate']}". 
      " #yahoonews END"; 

} 
$statusarray = explode(" END",$status); 


$result = mysql_query('SELECT MIN(ID) AS min, MAX(ID) AS max FROM ytable') or exit(mysql_error()); 
$row = mysql_fetch_assoc($result); 


$check = file_get_contents('/home/www2/it32.lady2.itall.co.jp/www/counter.php'); 

if($check < $row['max']){ 
    if (is_numeric($check)){ 
     $counter = ++$check; 
    } 
    } 


$fp = fopen('/home/www2/it32.lady2.itall.co.jp/www/counter.php',"w+"); 
fwrite($fp, $counter); 
fclose($fp); 


require("/home/www2/it32.lady2.itall.co.jp/www/tweet.php"); 
?> 

在我的代碼中是否有任何代碼不能用於cron。

+1

你的代碼在哪裏?發佈'cron job'腳本的代碼。 – Hassaan

回答

1

Cron作業,即計劃任務是定期運行的腳本。因此,腳本並不打算與用戶進行交互。這只是爲了執行一項行動。所以會話不能與cron作業一起工作的原因是因爲沒有用戶啓動會話。任何需要用戶工作的PHP函數(例如,setcookie(),session_start())都不起作用。所有其他功能將會。

編輯:按預期

所有腳本中的功能會有效。

+0

非常感謝。我只是好奇,因爲它沒有工作時,我有會議,所以我擔心其他事情可能會阻止它的工作 –