在PHP

时间:2015-06-14 06:58:40

标签: php mysql

我在Php中有一个多行的页面,在每行的右侧有一个保存按钮,在编辑任何行后点击保存如何将指定的记录ID发布到另一个页面以更新此记录的MySQL。

谢谢

2 个答案:

答案 0 :(得分:1)

通过php在“页面”中创建表格时,您可以注意将每一行创建为html表单,并将“保存”按钮定义为提交按钮。然后单击该按钮将导致表单作为请求发送。

另一种方法是使用javascript:您可以为按钮的click事件添加处理函数。在处理程序内部,您可以知道单击了哪个按钮(以及哪一行),并且可以使用选择器从行中收集所有的vallues。然后,您可以对某个脚本发出post请求,或者甚至更优雅地发出后台ajax请求。这样就可以在不必重新加载整个页面的情况下确认保存操作是否成功。

这两种方法的许多示例都可以在StackExchange或简单的谷歌搜索中找到。另外,浏览php文档是一个非常好的起点:http://php.net/manual/en/tutorial.forms.php

答案 1 :(得分:0)

这是我的代码

editing.php

$query="SELECT * FROM emp";
$result=mysql_query($query);

$num=mysql_numrows($result);

mysql_close();
?>

<div align = "center">
<table cellspacing="0" border = "2" cellpadding = "4" class="page-break" width="100%">
<form method="POST" action="update.php">
<tr>
<th></th>
<th><font size = "3"  >name</font></th>
<th><font size = "3"  >ID</font></th>

</tr>

<?php
$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"ID_e");
$f2=mysql_result($result,$i,"name");
?>

<tr>
<td ><input type="submit" value="save" name="B1" ></td>
<td align = "center"><input type="text" size="8px" value = "<?php echo $f2; ?>" name="T2"></td>
<td align = "center"><input type="text" size="8px" value = "<?php echo $f1; ?>" name="T1"></td>

</tr>
<?php
$i++;
}
?>

Update.php

if (isset($_POST['B1'])) {

    $id = $_POST['T1'];         //.... how to get updated row ID ?
    $name = $_POST['T2'];


    mysql_query("UPDATE emp SET ID_e = '$id', name = '$name' WHERE ID_e = '$id' ");
}


?>
<script type="text/javascript">
window.location = 'editing.php';