我有从动态字段形式插入的数组数据。这是我的档案
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按钮编辑/删除该数据?
谢谢
最佳答案
有很多方法可以做到这一点。
您可以使用ajax提交数据以进行删除/编辑
或者您可以直接提交
对于第1点-首先在每行添加具有唯一ID的编辑/删除按钮(您可以使用带有任何文本的ipfx数字来完成此操作),然后可以调用任何js方法提交并动态更改它。提交时,您可以使用该唯一ID收集数据,并可以通过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"
});
}
希望现在您可以很轻松地完成它。