我想更新特定行的表,需要一些关于我的 php 语句的建议
我用这条语句调用客户的信息
<?php
$host="localhost"; // Host name
$username="****"; // Mysql username
$password="****"; // Mysql password
$db_name="****"; // Database name
$tbl_name="members"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// get value of id that sent from address bar
$id=$_GET['id'];
// Retrieve data from database
$sql="SELECT * FROM $tbl_name WHERE member_msisdn='$query'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
?>
这很好地回应了我需要的信息并且能够改变它。
<form name="form1" method="post" action="control_clientupdated.php">
这是指我的 Action php脚本
我需要帮助的问题是如何通知我的操作脚本使用运行查询时所用的相同 ID 来更新该行。
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// update data in mysql database
$sql="UPDATE $tbl_name SET member_name='$member_name',
member_surname='$member_surname', member_msisdn='$member_msisdn', cid='$cid',
cofficenr='$cofficenr', cfax='$cfax', e2mobile='$e2mobile' WHERE member_msisdn='$query'";
$result=mysql_query($sql);
我已将 WHERE 语句放在更新的末尾
我只是说它显示完成,但它根本没有更新表格
最佳答案
首先,您需要将您的 ID 存储到表单中的隐藏表单元素中。
<form method="post" action="control_clientupdated.php">
<input type="hidden" name="member_msisdn" value="<?=$query?>" />
...
</form>
这将允许您传递第一个 php 脚本的值。
然后在你的control_clientupdated.php
你需要使用 $_POST
恢复您的值(value)。
// Store the $_POST value for my query ID
$query = $_POST['member_msisdn'] ;
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// update data in mysql database
$sql="UPDATE $tbl_name SET member_name='$member_name',
member_surname='$member_surname', member_msisdn='$member_msisdn', cid='$cid',
cofficenr='$cofficenr', cfax='$cfax', e2mobile='$e2mobile' WHERE member_msisdn='$query'";
$result=mysql_query($sql);
这应该是您需要的 - 请注意您不能使用 $_GET
检索表单传递的变量,因为您使用 method="post"
发送它属性,您必须使用 $_POST
而不是 $_GET
关于php - 更新 SQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15410183/