2016-12-04 56 views
1

即時使用jquery小冊子Moleskine Notebook with jQuery Booklet來製作一個日誌,併爲每個頁面上傳一些圖片。 即時通訊工作是即時通訊循環在PHP中的每一頁的div作爲即時通訊從數據庫調用數據,但當我試圖使用文件上傳形式如下,它只能在第一頁上。上傳按鈕出現在其他頁面上,但它什麼都不做,甚至沒有調用上傳窗口。使用PHP循環文件上傳表格

每頁都有自己的log_id $row['log_id']

所以任何解決方案非常感謝。

if (mysqli_multi_query($conn, $sql)) { 
do { 
    if ($result = mysqli_store_result($conn)) { 
    while ($row = mysqli_fetch_array($result)){ 

echo '<div>'; 
echo ' <form method="post" name="upload_form" id="upload_form" enctype="multipart/form-data" action="php/multiple_upload.php">'; 
echo '  <input type="hidden" name="form_submit" value="1"/>'; 
echo '  <input type="file" class="hidden" name="images[]" id="upload-images" multiple >'; 
echo '  <input name="log_id" type="hidden" value="'.$row['log_id'].'">' ; 
echo ' </form>'; 
echo '</div>' ; 
      } 
     mysqli_free_result($result); 
     } 
    } while (mysqli_next_result($conn)); 
} 

和這裏是如果你使用的ID $('#upload_form').ajaxForm({***});調用形式

$(document).ready(function(){ 
$('#upload-images').on('change',function(){ 
    $('#upload_form').ajaxForm({ 
     beforeSubmit:function(e){ 
      $('.progress').show(); 
     }, 
     success:function(e){ 
      $('.progress').hide(); 

       location.reload(true);    
     }, 
     error:function(e){ 

      } 
     }).submit(); 
    }); 
}); 

回答

2

腳本。這隻會發現和目標的第一個#upload_form

而且,如果您使用的類如$('.upload_form').ajaxForm({***});。這將找到並定位all表單類別.upload_form

您需要定義您正在尋找哪個form。在這種情況下,您只需要找到.upload-images表格的最接近/父母。如下所示。

這樣做。

$(document).ready(function(){ 
$('.upload-images').on('change',function(){ 
    $(this).closest('form').ajaxForm({ // target the parent form 
     beforeSubmit:function(e){ 
      $('.progress').show(); 
     }, 
     success:function(e){ 
      $('.progress').hide(); 

       location.reload(true);    
     }, 
     error:function(e){ 

      } 
     }).submit(); 
    }); 
}); 
+0

請您多解釋一下,這對我的情況有何幫助? – Mavia

+0

檢查我的編輯。如果你不明白我的解釋,我很抱歉。英語不是我的母語。 – synz

+0

,解決了沒有工作的按鈕,但是當我按任何一個它打開很多上傳窗口不僅一個。 – Mavia