你能用div标签更新吗?

时间:2015-04-10 09:11:57

标签: php html

我对某事有点疑问。我有一些表单,我将输入发送到MySQL数据库。我从数据库中获得了一些div标签的返回。这里我有2个按钮。按钮编号1可以删除行,按钮编号2应该有一个功能,如果我想更改行的内容,我可以更新特定的行。但是我可以更新div标签吗?我可以在网上看到,很多人都使用表来做到这一点。

<html>
<head>
    <link rel="stylesheet" type="text/css" href="css/arrangeTables.css">
</head>

<body>

<?php
    include 'connection.php';

    if(isset($_POST['addto'])){
        // Insert to database
        $date = $_POST['date'];
        $day = $_POST['day'];
        $fromtime = $_POST['fromtime'];
        $totime = $_POST['totime'];

        $sql = "INSERT INTO addWorkTime(date, day, fromtime, totime) VALUES('$date', '$day', '$fromtime', '$totime')";

        $result = mysql_query($sql, $dbhandle) or die(mysql_error($dbhandle));
        // Update of the row
            if(isset($_POST['update'])){
                $hidden = mysql_real_escape_string($_POST['hidden']);
                $UpdateQuery = "UPDATE addWorkTime 
                SET     date='$_POST[date]',
                        day='$_POST[day]', 
                        fromtime='$_POST[fromtime]', 
                        totime='$_POST[totime]' 
                WHERE   p_id='$_POST[hidden]'"; 
                $update = mysql_query($UpdateQuery, $dbhandle) or die(mysql_error($dbhandle)); 

                if($update) {
                    echo "Succes";
                } else {
                    echo "Der er en fejl";
                }

            }; // brace for if(isset($_POST['update']))
            if($result){
               echo "Insert successful.";
            }

        }; // brace for if(isset($_POST['addto']))

        if(isset($_POST['delete'])){
           $hidden = mysql_real_escape_string($_POST['hidden']);
           $DeleteQuery = "DELETE FROM addWorkTime WHERE p_id=$hidden";          
           $delete = mysql_query($DeleteQuery, $dbhandle) or die(mysql_error($dbhandle));

            if($delete){
                echo "Delete successful";
            }
        }
        //Return records from database
        $result = mysql_query("SELECT p_id, date, day, fromtime, totime FROM addWorkTime");
?>

    <form method="post">
        <h3>Add your worktime to database</h3><br>
        Date:
        <input type="date" name="date"><br><br>

        Day
        <select name="day">
            <option value="Mandag">Mandag</option>
            <option value="Tirsdag">Tirsdag</option>
            <option value="Onsdag">Onsdag</option>
            <option value="Torsdag">Torsdag</option>
            <option value="Fredag">Fredag</option>
            <option value="Lørdag">Lørdag</option>
            <option value="Søndag">Søndag</option>
        </select>

        From time:
        <input type="time" name="fromtime">
        To time:
        <input type="time" name="totime">
        <input type="submit" name="addto" value="submit"><br><br>



        <!-- Return from the database -->
        <h3>Return from database:</h3><br>

        <!-- headers -->

        <table>
            <tr>
                <th class="column0">Primary Key</th>
                <th class="column1">Date</th>
                <th class="column2">Day</th>
                <th class="column3">From</th>
                <th class="column4">To</th>
            </tr>
        </table>

    </form>

    <!--loop through through the database -->

    <?php while($row = mysql_fetch_array($result)): ?>

    <form method="post">
          <table>
            <tr>
                <td class="resultcolumn0"><?php echo $row{'p_id'};?></td>
                <td class="resultcolumn1"><?php echo $row{'date'};?><br></td>
                <td class="resultcolumn2"><?php echo $row{'day'};?></td>
                <td class="resultcolumn3"><?php echo $row{'fromtime'};?></td>
                <td class="resultcolumn4"><?php echo $row{'totime'};?></td>

                <td><input type="hidden" name="hidden" value="<?php echo $row{'p_id'}?>"><?php echo $row{'p_id'}?></td>
                <td><input type="submit" name="update" value="Update"></td>
                <td><input type="submit" name="delete" value="Delete"></td>
            </tr>
         </table>
    </form>
    <?php endwhile; ?>

</body>
</html>

1 个答案:

答案 0 :(得分:0)

如果您想像recording一样更新您的手机信息表,您可以像这段代码片段那样做一些棘手的事情:

&#13;
&#13;
function change1() {
    var inp1 = document.getElementById('myTable').rows[1].cells[0];
    inp1.innerHTML = "<input type='text' name='inp1'>";
    var inp2 = document.getElementById('myTable').rows[1].cells[1];
    inp2.innerHTML = "<input type='text' name='inp2'>";
}

function change2() {
    var inp1 = document.getElementById('myTable').rows[2].cells[0];
    inp1.innerHTML = "<input type='text' name='inp1'>";
    var inp2 = document.getElementById('myTable').rows[2].cells[1];
    inp2.innerHTML = "<input type='text' name='inp2'>";
}
&#13;
table, td {
    border: 1px solid black;
}
&#13;
<table id="myTable">
    <tr>
        <td>column 1</td>
        <td>column 2</td>
        <td>action</td>
    </tr>
    <tr>
        <td>Row2 cell1</td>
        <td>Row2 cell2</td>
        <td>
            <button onclick="change1()">Update</button>
        </td>
    </tr>
    <tr>
        <td>Row3 cell1</td>
        <td>Row3 cell2</td>
        <td>
            <button onclick="change2()">Update</button>
        </td>
    </tr>
</table>
<button onclick="alert('whatever function to save the edit')">Save</button>
&#13;
&#13;
&#13;

您可以改进这一点,为<form>标记提供<table>标记,并使用其他保存按钮保存。或者您可以使用if条件更新按钮更改为textfield并将其发布到数据库。

<form method="post" action='function_to_update_or_delete.php'>
      <table>
        <tr>
            <td class="resultcolumn0"><?php echo $row{'p_id'};?></td>
            <td class="resultcolumn1"><?php echo $row{'date'};?><br></td>
            <td class="resultcolumn2"><?php echo $row{'day'};?></td>
            <td class="resultcolumn3"><?php echo $row{'fromtime'};?></td>
            <td class="resultcolumn4"><?php echo $row{'totime'};?></td>

            <td><input type="hidden" name="hidden" value="<?php echo $row{'p_id'}?>"><?php echo $row{'p_id'}?></td>
            <td><button onclick="<?php echo change($some_information_to_your_cell)?>">Update</button></td>
            <td><input type="submit" name="delete" value="Delete"></td>
        </tr>
     </table>
</form>

并且,请尝试动态地创建每一行的功能,不要像function change1(), function change2(), function change3(), etc

那样对其进行硬编码

希望这会帮助你。 :)