2015-06-23 39 views
-1

我有一個表單上傳兩個圖像並在數據庫中保存路徑。在上傳和顯示錯誤的路徑名稱時報告的錯誤

if (isset($_POST['add_artimage'])) { 
    if ($_FILES["front"]) { 
     upload_file("front"); 
    } 
    if ($_FILES["back"]) { 
     upload_file("back"); 
    } 
    $front = upload_file($front); 
    $back = upload_file($back); 
    echo "image_front is $front <br> image_back is $back"; 
} 

function upload_file($name) { 
    $folder = "prod-images/"; 
    $folder2 = "users/"; 
    $open_type_upload = ".jpg"; 

    $file_name = $_FILES[$name]['name']; 
    $file_tmp = $_FILES[$name]['tmp_name']; 
    $file_size = $_FILES[$name]['tmp_size']; 
    $file_type = $_FILES[$name]['type']; 
    $rand_file_name = rand(1000000000, 9999999999999); 

    $newfile_name = $rand_file_name.$file_name; 
    $open_types = array(
     "image/jpg", 
     "image/jpeg", 
     "image/png", 
     "image/gif"); 
    $upload = move_uploaded_file($file_tmp, $folder.$rand_file_name.$open_type_upload); 
    echo "ok"; 
    $image = "$folder2$folder$rand_file_name$open_type_upload"; 
    return $image; 
} 

這是我的HTML

<td>image_front:</td> 
<td><input name='front' type='file' id='ufile' /></td> 
</tr> 
<tr> 
<td>image_back:</td> 
<td><input name='back' type='file' id='ufile' /></td> 

當我嘗試上傳,但上傳文件到目錄,但也報告類似下面的一些錯誤:

注意:未定義變量:正面

注意:未定義變量:back

注意:未定義的變量:指數

echo荷蘭國際集團從他們以假亂真的路徑,image_frontimage_back,它echo期不同名稱的上傳目錄。

+0

你上哪兒去定義那些'variable's? –

+0

我改進了第一個代碼塊的格式,糾正了錯誤消息的格式(消息不應該格式化爲代碼塊),並重新標題以更好地解釋您的問題。 – Harry

回答

0

$front並沒有定義$back,你應該考慮以下幾點:

if (isset($_POST['add_artimage'])) { 

    $front = $back = 'not uploaded'; 

    if ($_FILES["front"]) 
     $front = upload_file("front"); 

    if ($_FILES["back"]) 
     $back = upload_file("back"); 

    echo "image_front is $front <br> image_back is $back"; 
} 
+0

我沒有看到它,工作得很好謝謝! – user2769031