2012-05-09 68 views
0

我想要做的是當管理員試圖創建一個新的產品上傳到服務器的圖像,因爲它的名稱是產品id.jpg。我搜索谷歌沒有結果。代碼似乎是正確的。有人能幫助我嗎?我使用燈作爲本地測試服務器。上傳文件映像到服務器失敗

<?php 
// Parse the form data and add inventory item to the system 
if (isset($_POST['product_name'])) { 

    $product_name = mysql_real_escape_string($_POST['product_name']); 
    $price = mysql_real_escape_string($_POST['price']); 
    $details = mysql_real_escape_string($_POST['details']); 
    $category = mysql_real_escape_string($_POST['category_choice']); 
    $condition= mysql_real_escape_string($_POST['condition']); 
    $supplier_choice= mysql_real_escape_string($_POST['supplier_choice']); 
    $handling_time= mysql_real_escape_string($_POST['handling_time']); 
    $weight= mysql_real_escape_string($_POST['weight']); 
    $information_box= $_POST['information']; 

    $pid = mysql_insert_id(); 
    // Place image in the folder 
    $newname = "$pid.jpg"; 
    move_uploaded_file($_FILES['my_photo']['tmp_name'], "../inventory_images/$newname"); 


    header("location: products.php"); 
    exit(); 

} 

?>

  <form action="add_product.php" enctype="multipart/form-data" name="my_Form" id="my_Form" method="post"> 


      <tr> 
       <td>Φωτογραφία</td> 
       <td> 
        <label> 
         <input type="file" name="my_photo" id="my_photo"/> 
        </label> 
       </td> 
      </tr> 

      <tr> 
       <td>&nbsp;</td> 
       <td> 
        <label> 
         <input type="submit" name="button" id="button" value="Αποθήκευση" /> 
        </label> 
       </td> 
      </tr> 

     </table> 

     </form> 
+0

你給你的腳本寫權限到你的圖像將被移動的文件夾? – ppp

+0

如果有人上傳一個php文件,當你非常小心地使用mysql_real_escape_string時,你不關心嗎? var_dump($ _ FILES ['my_photo'] ['error'])'說什麼? –

+0

我怎麼能在我的PHP權限給文件夾? – JimmyV

回答

0

正如您所說,您正在使用燈泡,請檢查您上傳文件的目錄的權限。另外,還要檢查目標路徑中提到的所有文件夾的權限。

上傳文件的目錄和路徑中的所有目錄必須具有寫權限。

如果move_uploaded_file不起作用,則嘗試複製功能。 同時檢查您上傳的路徑是否正確。

0

我認爲你將有更好的運氣得到的答案,如果你瘦不下來的代碼只包含那些與問題相關的部分。這樣做後,你可能會看到自己問題的答案。

例如,文件是否成功上傳?如果沒有,那麼mysql_xxx代碼和大部分表單都與您的問題無關。

相關問題