簡體   English   中英

將值從 html 表保存到數據庫

[英]save values from html table to database

我有一個 html 表,顯示數據庫中的值。 我有一個 javascript 可以讓我編輯這些數據,但后來我不知道如何使用 php 將它保存回數據庫。 我發現了一些我應該使用 xmlhttprequests 的信息,但我不知道如何做到這一點。 有什么建議? 非常感謝您的幫助。 代碼如下;

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Untitled Document</title>
    <script type="text/javascript"><!--

    function edit_input(obj) {
    var is_checked = obj.checked;
    while (obj.tagName!='TR')
    obj = obj.parentNode;

    var td = obj.getElementsByTagName('TD');
    var len = td.length;

    if (!is_checked) {

    for (var i=0; i<len; i++)
    if (td[i].className=='editable')
    td[i].innerHTML = td[i].firstChild.value;


    } else {

    var input;

    for (var i=0; i<len; i++)
    if (td[i].className=='editable') {
    input = document.createElement('INPUT');
    input.value = td[i].innerHTML;
    td[i].innerHTML = '';
    td[i].appendChild(input);
    }
    }

    }


    --></script>


    </head>

    <body>
    <table border="1">
    <tr>
         <th width="56">Branch ID</th>
    <th width="75">Branch Name</th>
         <th width="75">Branch Personnel</th>                            
         <th width="105">Branch Headquaters</th>
    <th width="50">Edit</th>
    </tr>
<?php

$result = mysql_query($query );
    while ($row= mysql_fetch_array($result)) { ?>
         <tr>
             <td class="editable"><?php echo $row['branchid'];?></td>
             <td class="editable"><?php echo $row['branchname'];?></td>     
             <td class="editable"><?php echo $row['branchpersonnel'];?></td>
             <td class="editable"><?php echo $row['branchhq'];?></td>   
        <td><input type="checkbox" onclick="edit_inpu(this);">Edit</td>  
         </tr>                                          
<?php } ?>
    <tr><td><input type="submit" name="editbranch" class="button2"       value="Update"/></td></tr> 
</table>    
    </body>
    </html>

如果使用 jQuery 不是問題,也許使用JEdi​​table 之類的東西是一個解決方案。 當您單擊表格中的單元格時,它會變成一個文本字段,當按下 Enter 鍵或離開焦點時,它會向服務器發出 Web 請求,您可以在其中進行更改。

參見例如這個jsfiddle 腳本。 它真的很容易使用。 您唯一需要做的另一件事是為表格單元格提供一個 id,該 id 也會發送到您正在保存它的頁面。

讓您的腳本通過XMLHttpRequest向 PHP 腳本發送 Ajax 請求,該腳本將值保存回數據庫。

URL 可能是這樣的: updatetable.php?row=0&col=0&data=1234

您可以使用 jquery,它非常流行。

您必須下載 lib 並將其包含在標題中

http://code.jquery.com/jquery-1.7.min.js

這是你如何在 jquery 中使用 ajax 請求:

http://api.jquery.com/jQuery.ajax/

url 參數是您發送值以像帖子一樣保存它們的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM