我一直在写一个脚本,以便使用php从表单更新MySQL中的字段。
我有一个问题,当我尝试使用mysqli从php更新字段时,我的数据库没有任何变化。这是代码,我用了2页。Search.php和Update.php。
这段代码显示了我的搜索结果,并且运行良好。
Search.php
$searchValue=$_GET["txtSearch"];
$connection=mysqli_connect($db_host, $db_user, $db_password, $db_name);
$query="select UserID, LastName, FirstName, UserName, Phone from User where UserID='$searchValue'";
$recordset=mysqli_query($connection, $query);
while($row=mysqli_fetch_array($recordset, MYSQLI_ASSOC))
{
$UserID=$row['UserID'];
$LastName = $row['LastName'];
$FirstName = $row['FirstName'];
$UserName = $row['UserName'];
$Phone=$row['Phone'];
echo "<form action='Update.php' method='get'>";
echo "<input type='text' name='txtUserID' value='$UserID' disabled> <br/> <br/>";
echo "<input type='text' name='txtLastName' value='$LastName'> <br/> <br/>";
echo "<input type='text' name='txtFirstName' value='$FirstName'> <br/> <br/>";
echo "<input type='text' name='txtUserName' value='$UserName'> <br/> <br/>";
echo "<input type='text' name='txtPhone' value='$Phone'> <br/> <br/>";
echo "<input type='submit' name='btnUpdate' value='Update Values' />";
echo "</form>";
}问题出在这里,当我执行查询时,数据库上没有任何变化。我不知道原因。查询是否错误??或者有另一种方法可以在WHERE条件中使用INT字段作为参数来更新php中的字段?提前谢谢你。
这是Update.php
$userID=$_GET["txtUserID"];
$lastName=$_GET["txtLastName"];
$firstName=$_GET["txtFirstName"];
$userName=$_GET["txtUserName"];
$phone=$_GET["txtPhone"];
$connection=mysqli_connect($db_host, $db_user, $db_password, $db_name);
$query="UPDATE User SET LastName='$lastName', FirstName='$firstName', UserName='$userName', Phone=$phone
WHERE UserID=$userID";
$recordset=mysqli_query($connection, $query);
echo "<h1> Succesfull Operation. </h1>";发布于 2017-01-31 08:09:20
尝试使用以下命令:
$mysqli = new mysqli($db_host, $db_user, $db_password, $db_name);
$results = $mysqli->query("Select UserID, LastName, FirstName, UserName, Phone from User where UserID=".$searchValue." ") or mysqli0;
if(!$results){
echo '<script>alert("not working"); </script>';
}"我认为mysqli的执行有一个问题,这就是我使用mysqli的方式。
发布于 2017-01-31 01:00:01
您可以通过将最后一段代码更改为
if (!($recordset=mysqli_query($connection, $query))) {
echo "<pre>Error:".mysqli_error($link)."</pre>";
}更好地了解哪里出了问题。
https://stackoverflow.com/questions/41941005
复制相似问题