如何在php表单中编辑/删除数组数据使用按钮?

时间:2016-06-22 02:35:59

标签: php mysql arrays database

我从动态字段表单中插入了数组数据。这是我的文件

dbconn.php

<?php
$mysql_db_hostname = "localhost";
$mysql_db_user = "root";
$mysql_db_password = "";
$mysql_db_database = "try";

$connection = mysql_connect($mysql_db_hostname, $mysql_db_user, $mysql_db_password) or die("Could not connect database");
mysql_select_db($mysql_db_database, $connection) or die("Could not select database");
?>

它将显示并从此文件中输入

的index.php

<?php
require("dbconn.php");
?>

<html>
<head>
<title></title>
<script type="text/javascript" src="../js/jquery-1.7.0.min.js"></script>
<script type="text/javascript">
var counter = 1;
$(function(){
 $('#add_field').click(function(){
 counter += 1;
 $('#container').append(
 '<div><strong>Hobby No. ' + counter + '</strong><br />'
 + '<input id="field_' + counter + '" name="dynfields[]' + '" type="text" required /> <button type="button" href="#" class="remove_field">-</button><br /></div>' );

 });
 $('#container').on("click",".remove_field", function(e){ //user click on remove text
        e.preventDefault(); $(this).parent('div').remove(); counter--;
    })
});
</script>

<body>

<?php
if (isset($_POST['submit_val'])) {
if ($_POST['dynfields']) {
foreach ( $_POST['dynfields'] as $key=>$value ) {
$values = mysql_real_escape_string($value);
$query = mysql_query("INSERT INTO prefix (ipfx,cid) VALUES ('$values','123')", $connection );

}
}

echo "<i><h2><strong>" . count($_POST['dynfields']) . "</strong> Hobbies Added</h2></i>";

 mysql_close();
}
?>
<?php 
if (!isset($_POST['submit_val'])) { ?>

<?php 
    $result = mysql_query("SELECT * FROM prefix WHERE cid = '123'")
            or die(mysql_error());

            echo "<form method='post'><table border='1' cellpadding='7'>";
            echo "<tr>
                    <th><font color='Red'>CID</font></th>
                    <th><font color='Red'>Hobi</font></th>
                  </tr>";

            $row = mysql_fetch_array( $result );
            echo '<tr>
                        <td><font color="#333">' . strtoupper($row['cid']) . '</font></td><td><table>';

            $no=1;
            while($row = mysql_fetch_array( $result ))
            {
                echo '
                        <tr><td><input type="text" value="' . $row['ipfx'] . '"><hr></td></tr>';

                        ////////////////////////////////////


                        }

                echo '</table></td></tr></table>';
            $no++;
        ?>
 <h1>Add your Hobbies</h1>
 <form method="post" action="">

 <div id="container">
 <strong>Hobby No. 1</strong><br /><input id="field_1" name="dynfields[]" type="text" required/> <button type="button" id="add_field" href="#">+</button>
 </div><br />

 <input type="submit" name="submit_val" value="Submit" />
 </form>
<?php } ?>

</body>
</html>

我的问题是如何使用php格式的onclick按钮编辑/删除该数据?

谢谢

1 个答案:

答案 0 :(得分:0)

有很多方法可以做到这一点。

  1. 您可以使用ajax提交删除/编辑数据

  2. 或者您可以直接提交

  3. 对于第1点 - 首先添加编辑/删除按钮,每行具有唯一ID(您可以使用带有任何文本的ipfx编号)&amp;然后你可以调用任何js方法来提交它&amp;动态地改变它。提交时,您可以使用该唯一身份证和数据收集数据。可以通过ajax提交轻松操纵它。

    像这样 - 内循环

    <button id="edit_<?php echo $row['ipfx']; ?>" name="edit" type="button" onclick='edit_data("<?php echo $row['ipfx']; ?>");'/>
    

    在js部分 -

    function edit_data(id){
    var data1 = $('#id').val();
     $.ajax({
         "data": {"data1": data1},
         "type": "POST",
         "url": "test.php"
     });
    }
    

    希望你现在可以很容易地完成它。