2014-09-01 62 views
0

我想使用此代碼上傳文件到服務器:上傳唯一名稱的文件 - 我的代碼出了什麼問題?

$data = substr($_POST['imageData'], strpos($_POST['imageData'], ",") + 1); 
$decodedData = base64_decode($data); 
$name = uniqid(rand(), true) . '.jpg'; 
$fp = fopen('"imgdownload/'.$name.'"', 'wb'); 
fwrite($fp, $decodedData); 
fclose($fp); 

文件不上傳這樣,只有當我把默認的名稱,如

$fp = fopen("imgdownload/myfile", 'wb'); 

工作我得到這樣的響應:

警告:的fopen(" imgdownload/1892454042e0263cf14.94958715.jpg "):未能打開流:無效的論點C:\ XAMPP \ htdocs中\ OrlenOla \ API \ process.php上線

警告:fwrite的()預計參數1是資源,在布爾C中給出:\ XAMPP \ htdocs中\ OrlenOla \ API \ process.php上線

警告:FCLOSE()預計參數1是資源,在布爾C中給出:\ XAMPP \ htdocs中\ OrlenOla \ API \ process.php在線

我正在翻看代碼,我沒有看到問題可能是什麼。有人幫忙嗎?

回答

4

爲錯誤說:

警告:的fopen( 「imgdownload/1892454042e0263cf14.94958715.jpg」):未能 打開流:在 Ç無效參數:\ XAMPP \ htdocs中\ OrlenOla \ API \第6行的process.php

您在文件名中有「嵌套」引號。

$fp = fopen('"imgdownload/' . $name . '"', 'wb'); 
//   ^      ^
//   nested quotes should not be here 

試試這個:

$fp = fopen('imgdownload/' . $name, 'wb'); 
+0

是的,就是這樣,謝謝!當選項可用時我會接受(12分鐘)。 – oneday 2014-09-01 08:36:13

+0

@oneday乾杯和祝你好運。 – BlitZ 2014-09-01 08:36:35

相關問題