2017-09-07 32 views
0

嗨,我有一个PHP代码发送电子邮件与机器人API。 现在我有一个问题使用curl来实现文件路径。 问题是:当我通过api重新加载页面发送照片消息它的作品,但是当我在我的主机创建新的cron作业它不发送照片。 我觉得在主机中使用cron作业时,curl文件路径必须更改吗?

<?php 
 

 

 

 
$boturl='https://api.telegram.org/bot' . $botToken .'/'; 
 

 

 
$cfile = new CURLFile(realpath("upload2/$file")); //first parameter is YOUR IMAGE path 
 
    $data = [ 
 
     'chat_id' => $chat_id , 
 
     'document' => $cfile, 
 
\t \t 'caption' => $matn, 
 
     ]; 
 

 
    $ch = curl_init($boturl.'sendDocument'); 
 
    curl_setopt($ch, CURLOPT_HEADER, false); 
 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
 
    curl_setopt($ch, CURLOPT_POST, 1); 
 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
 
    $result = curl_exec($ch); 
 
    curl_close($ch); 
 

 

 
?>

,其中使用cron作业时的问题问题是从文件的curlpath? tnx

+0

tnx thats true dude :)) – areff

回答

1

使用完整路径而不是相对。

例如:

$cfile = new CURLFile(realpath(__DIR__ . "/upload2/$file")); 

因为相对路径,从那里你执行脚本依赖。

+0

tnx thats truee dude :)))) – areff