2016-07-29 23 views
2

我需要一些幫助。 所以我創建了一個通過cURL發送圖像數據的php腳本。 這裏是場景:將通過cURL接收的.tmp圖像轉換爲.jpeg

我已經上傳了一張圖片,然後我會通過cURL傳遞一個.jpeg文件擴展名的圖片。

在我的接收器上,我收到圖像,但圖像文件擴展名爲.tmp 在上傳它之前,我有辦法再次將它轉換爲.jpeg嗎?

這裏是我的代碼上傳遞的圖像:

$data = array(
    "filename"=>$first_param, 
    "transno"=>$transno, 
    "type"=>$type, 
    "refno"=>$refno, 
    "custno"=>$custno, 
    "imei"=>$imei 
); 
$dataFields = http_build_query($data, '', '&'); 
$fields = array('uploaded_file' => '@' . $_FILES['uploaded_file']['tmp_name'],  'filename'=>$_FILES['uploaded_file']['name']); 
$header = array('Content-Type: multipart/form-data'); 


$url = "http://url/directory/phpname.php?".$dataFields; 

$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $header); 
curl_setopt($ch, CURLOPT_INFILESIZE, $_FILES['uploaded_file']['size']); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 

$result = curl_exec($ch); 

curl_close($ch); 

現在,這裏是我的代碼爲接受它:

$filename = $_GET['filename']; 
$transno = $_GET['transno']; 
$type = $_GET['type']; 
$refno = $_GET['refno']; 
$custno = $_GET['custno']; 
$remarks=""; 
$imei = $_GET['imei']; 


$upload = new Upload(); 

$upload->Upload($filename, $transno, $type, $refno, $custno, $remarks,  $imei, $_FILES); 

接收到的圖像將是$ _FILES。 謝謝

回答

0

您直接從臨時目錄上傳它。您應該首先使用move_uploaded_file(),因此它具有正確的名稱,然後上傳它。