2016-04-07 21 views
0

Birkaç ay önce, 5.5 sürümüyle bot yolumdan fotoğraf yükleyebilirim. Şimdi PHP'mi 5.6'ya yükselttim ve nedenini bilmiyorum ama artık yapamam.PHP'de geliştirilen Telegram bot ile sorun

$url = "https://api.telegram.org/bot".Token."/sendPhoto?chat_id=".$chat_id; 

     $post_fields = array(
       'photo'  => new CURLFile(realpath("test.png")) 
      ); 

     $ch = curl_init(); 
     curl_setopt($ch, CURLOPT_HTTPHEADER, array(
      "Content-Type:multipart/form-data" 
     )); 
     curl_setopt($ch, CURLOPT_URL, $url); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
     curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields); 
     $output = curl_exec($ch); 
+0

Ne hatalar alabilirim: istediğiniz yere

function makeHTTPRequest($method, $types = []){ $url = 'https://api.telegram.org/bot'.Token.'/'.$method; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($types)); $res = curl_exec($ch); if (curl_error($ch)){ var_dump(curl_error($ch)); } else { return json_decode($res); } } 

Sonra diyoruz Bu benim kod oldu? Ne oluyor? Herhangi bir uyarı gösteriliyor mu? Simge hala geçerli mi? Lütfen daha fazla bilgi verin. –

+0

Test edildi. Scriptiniz php 5.6'da sorunsuz çalışıyor. Benedict'in dediği gibi, betik davranışı hakkında daha fazla bilgi verin ve hata oluştu. – fusion3k

+0

Saygılarımızla, herhangi bir hata mesajı almıyorum, bir fotoğraf göndermeye çalıştığımda yaklaşık bir günlüğüne botumu çevrimdışı duruma getiriyorum. Evet, belirteç hala geçerli çünkü botum bu sorun dışında mükemmel çalışıyor. – Gianluca

cevap

0

Kullanım i CURL için yazdığı bu fonksiyon:

var_dump(makeHTTPRequest('sendPhoto', [ 
    'chat_id' => $chat_id, 
    'photo' => new CURLFile('test.png') 
]));