2013-06-04 174 views
-1

如何在刷新頁面後提交表單並完成一些php內容。下面是我的表單和php。刷新頁面php

<form class="removeform"action='peteadd.php'method='post' enctype='multipart/form- 
data' name='image_remove_form' > 
    <?php 
     include '../inc/connect.php'; 
     $q = "SELECT * FROM gallerythumbs WHERE gallery = 1"; 
     if($r = mysql_query($q)){ 
      while($row=mysql_fetch_array($r)){ 
      echo "<div class='thumb'>", 
      "<input type='checkbox' name='remove[{$row['id']}]'>", 
      "<label for='Remove'><span class='text'>Remove</span></label>", 
      "<br />", 
      "<img class='thumbnail' src='{$row['filename']}' 
        alt='{$row['description']}' />", 
     "</div>"; 
     } 

    } 
      else{ 
       echo mysql_error(); 
      } 
     ?> 
      <input type='submit' name='submit' value='Remove' /> 
      </form> 
      </div> 
      <?php 
       include '../inc/connect.php'; 
       //if delete was checked, delete entries from both tables 
       if(isset($_POST['remove'])){ 
        $chk = (array) $_POST['remove']; 
        $p = implode(',',array_keys($chk)); 
        $t = mysql_query("SELECT * FROM galleryimages WHERE id IN ($p)"); 
       $r = mysql_query("SELECT * FROM gallerythumbs WHERE id IN ($p)"); 
        $url=mysql_fetch_array($t); 
        $image=$url['filename']; 
        $url2=mysql_fetch_array($r); 
        $image2=$url2['filename'];  
        if ($t){ 
         unlink($image); 
       unlink($image2); 
         $q = mysql_query("DELETE FROM galleryimages WHERE id IN ($p)"); 
         $s = mysql_query("DELETE FROM gallerythumbs WHERE id IN ($p)"); 

        } 

        else{ 
         echo "<span class='text'> 
         There has been a problem, go back and try again. 
         <br /> 
         <a href='peteadd.php'>Back</a> 
         </span>"; 
        } 
       } 
       else{ 
        echo "<span class='title'> 
         There are no images in the gallery 
         <br /> 
         <a href='peteadd.php'>Add Images</a> 
         </span>"; 
       } 
      ?> 

這將顯示一些縮略圖,保存在mysql中,刪除複選框在上面。當我檢查他們,然後提交從表格中刪除的direcotries和mysql表ok,但我怎麼刷新頁面,所以刪除是明顯的?

感謝您尋找

+0

不頁面刷新時提交表單存在嗎? – David

+0

也許你需要重新排列你的代碼。首先檢查'$ _POST'並刪除圖像。接下來閱讀圖庫和打印表單。 – furas

回答

1

你所描述的聽起來像是你正在顯示你的頁面,並且你在其中運行一些額外的代碼 - 像刪除 - 所以當你發佈你的表單時,你最終與圖像從數據庫中拉出來,然後刪除

你應該首先運行你的邏輯,然後才顯示頁面 - 這樣你將首先刪除你的記錄,然後當它從數據庫中獲取數據時,它會得到正確的數據記錄已經被刪除)

任何其他soultion將是什麼,但哈克的方式來繞過問題souldn't擺在首位:)

+0

非常感謝你,通過把我的邏輯首先它的工作,因爲它應該! –

+0

你能幫我多做一件事嗎? –

+0

那將是...? – Ochi

0

不能直接刷新頁面,使用PHP,但你可以回聲出一個刷新標記這樣

echo '<meta http-equiv="refresh" content="0">' 

,或者你可以用JavaScript做它,就像

location.reload(true);