2012-12-03 97 views
-4

我有一個簡單的HTML表單與幾個字段(如id,名稱,聯繫人和電子郵件)。一旦用戶填寫並提交表單,數據將存儲在數據庫中,同時(即使在同一頁面上),表格將顯示已存儲的數據。如何更新HTML表單數據?

現在,我想把一個更新按鈕放在表格的底部。當用戶點擊它時,他們可以查看預先填入他們之前輸入的數據的表格,因此他們不需要輸入數據兩次。

我該怎麼做?我怎麼能基於ID字段捕獲其他領域?

+1

提供您的代碼! –

+1

到目前爲止你做了什麼? –

+0

好吧,我已經完成,直到更新按鈕!通過點擊它,它可以重新定向到空的表單。不知道如何打印數據裏面的數據.. :( – atiquratik

回答

1

一旦點擊表格數據,將其ID傳遞給它。然後檢查ID &從數據庫中獲取數據並以html格式設置值。如果傳遞了一個ID,那麼更新應該去並且沒有ID,它應該是一個新的插入。

1

這些是簡單的數據庫操作。網上有很多的教程,谷歌它。 您可以參考this

1

如果你想顯示網頁上有新的項目而無需刷新頁面使用AJAX ..
否則刷新頁面,並使用Select query顯示新的條目。
對於第二個問題..上更新按鈕按使用Select query,然後echovalue各領域的HTML input fields
這是一個簡單的方法來做到這一點..

// php code 
$result = mysql_query('Select * from table_name WHERE id = 1'); 
$row = mysql_fetch_assoc($result); 
// use loop if query return multiple rows 
// HTML code 
<input type = "textbox" name="age" value="<?php echo $row['age'] ?>"> 
+0

感謝您的回覆。我的表就像[link](http://www.mediafire.com/view /?8uxcan87ac8pf2d)。因此,通過點擊更新按鈕,我怎樣才能得到這些數據的形式?我的意思是我怎樣才能通過ID來抓住? – atiquratik

+0

在HTML中使用它之前,您應該真的使用'htmlspecialchars'來轉義從數據庫中提取的數據。 – toxalot

1

與更新按鈕的形式需要hidden字段爲id。然後,PHP需要從數據庫中選擇與該ID相對應的記錄並將其顯示在表單中。

如果每個頁面只有一條記錄,您可以將預填表格放在div與表格相同的頁面上。然後,您可以使用JavaScript隱藏頁面加載時的 div,並在用戶單擊更新按鈕時顯示div

3

您將不得不使用javascript和ajax代碼,如下所述。嘗試理解它。

<script type="text/javascript"> 
$(document).ready(function(e) { 
    $.ajax({ 
     //Your ajax here... 
     success: function(response) { 
      //Your code of showing inserted data in table.... 
      //get the inserted userid from response and set update button's ONCLICK attribute as mentioned below 
      var userid = getuseridfromresponse; 
      $("#updatebuttonid").attr("onclick","updaterecord("+userid+")"); 
     } 
    }); 
}); 
function updaterecord(userid){ 
    $.ajax({ 
     //your ajax here you 
     //send all the details from php code using JSON or whatever you are using. 
     success: function(response) { 
      //store all the data into js variables. 
      var userid = response.userid; 
      var fullname = response.fullname; 
      // and so on.. 
      $("#fullname").val(fullname); //this will set the textbox value to fullname 
      //and so on.. 
      $("#userid").val(userid); //this is a hidden input in inser form. by default it will be zero. you will need it while updating. 
      $("#actionname").val("update"); //this is also hidden input in insert form. default value would be "insert" 
      // you just need to check in php that which actionname you are getting. 

      //if you will get actionname = insert Do insert code 
      //if you will get actionname = update Do update code. 
     } 
    }); 
} 
</script>