2013-07-09 48 views
1

我想旁邊有我的頁面上的每個配方的上傳按鈕,所以我需要圖片上傳過程中通過配方ID值,使圖像路徑會保存在我的數據庫中每個食譜旁邊。但由於種種原因,我一直得到同樣的錯誤:變量沒有被圖像中正確地傳遞上傳

Notice: Undefined index: recipe_id in C:\xampp\htdocs\upload.php on line 4 

4號線:$recipe_id = $_POST['recipe_id'];

下面是HTML表單:

<div class="upload_icon"> 
    <form id="<?php echo $recipe_id ?>" action="upload.php" method="POST" 
    enctype="multipart/form-data"> 
    <input type="file" name="image" value="<?php echo $recipe_id ?>"/></input> 
    <button type="submit" name="submit" value="add">Add image!</button> 
    </form> 
</div> 

PHP部分(upload.php的):

if ($_SERVER["REQUEST_METHOD"] == "POST"); 
    { 

    $recipe_id = $_POST['recipe_id']; 
    $name = $_FILES ['image'] ['name']; 
    $tmp_name = $_FILES ['image'] ['tmp_name']; 

    $location = "uploads/$name"; 
    move_uploaded_file($tmp_name, $location); 

    $update = query("UPDATE menu SET recipe_pic = '".$location."' WHERE recipe_id = 
    '$recipe_id' "); 
    } 

?> 

我在做什麼錯?

+1

你試圖傳遞變量在文件輸入。用表單提交PHP的名稱和值創建一個不同的(隱藏的)輸入。 – Jon

回答

1

你是不是傳遞變量的名稱recipe_id到PHP腳本 - 有在你的窗體名稱的輸入。試試這個:

<form id="<?php echo $recipe_id ?>" action="upload.php" method="POST" enctype="multipart/form-data"> 
<input type="file" name="image" /> 
<input name="recipe_id" type="hidden" value="<?php echo $recipe_id ?>"> 
<button type="submit" name="submit" value="add">Add image!</button> 
</form> 
2

在您呈現的HTML中沒有提及recipe_id。試試這個:

<input type="hidden" name="recipe_id" value="<?php echo $recipe_id ?>"> 
2
<input type="hidden" name="recipe_id" value="<?php echo $recipe_id; ?>">