如何在PHP中更新表单

如何在PHP中更新表单,php,forms,Php,Forms,我想用GET方法更新php中的记录,但每当我点击“更新按钮”时,它不会改变任何东西,只是刷新页面。数据保持不变。下面是代码。请告诉我哪里做错了。谢谢 <?php include_once"dbconfig.php"; if(isset($_GET['edit'])) { $id=$_GET['edit']; echo $id; $sql_query="SELECT * FROM users WHERE user_id='$id' "; $result_se

我想用GET方法更新php中的记录,但每当我点击“更新按钮”时,它不会改变任何东西,只是刷新页面。数据保持不变。下面是代码。请告诉我哪里做错了。谢谢

<?php
include_once"dbconfig.php";
if(isset($_GET['edit']))
{
    $id=$_GET['edit'];
    echo $id;
    $sql_query="SELECT * FROM users WHERE user_id='$id' ";

    $result_set=mysql_query($sql_query);
    $fetched_row=mysql_fetch_array($result_set);


}
 if(isset($_POST['btn-update']))
 {
     // variables for input data
     $first_name=$_POST['first_name'];
     $last_name=$_POST['last_name'];
     $city_name=$_POST['city_name'];

     //sql query to update into database
    $sql_query="UPDATE users SET first_name='$first_name',last_name='$last_name',user_city='$city_name' WHERE user_id='$id' ";
    mysql_query($sql_query);
    //if(!$sql_query)
        //die('data can not update'.mysql_error());
    //else
        //echo 'data updated successfully';


 }
 ?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
 <link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<center>

<form method="post">
<table align="center">
<tr>
<td><input type="text" name="first_name" placeholder="First Name" value="<?php echo $fetched_row['first_name']; ?>"required />  </td>
</tr>
<tr>
<td><input type="text" name="last_name" placeholder="Last Name" value="<?php echo $fetched_row['last_name']; ?>" required /> </td>
</tr>
<tr>
<td><input type="text" name="city_name" placeholder="City" value="<?php echo $fetched_row['user_city']; ?>" required /> </td>
</tr>
<tr>
<td>
<button type="submit" name="btn-update"><strong>UPDATE</strong></button>
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
更改

mysql_query($sql_query);

您没有发送id(表单操作属性丢失更改

mysql_query($sql_query);


您没有发送id(每次在新代码中使用数据库扩展时,form action属性都会丢失。

,它已被弃用多年,在PHP7中永远消失。如果您只是在学习PHP,请花费精力学习
PDO
mysqli
数据库扩展。
,您不能像这样嵌入PHP变量。您可以r脚本面临着这样的风险:当接口db已经为它编写了框架时,甚至使用最好的东西都会发生什么,它更安全,也更容易:)除了以上所有高度有效的语句之外。简短的回答是你不能,因为PHP是服务器端。越长越深入,需要更多研究的答案是…AJAX。你需要在不刷新页面的情况下使用新请求再次调用PHP,所以你需要一种方法来实现这一点。AJAX会有所帮助。每次使用数据库扩展时在新代码中,它已被弃用多年,并在PHP7中永远消失。如果您只是在学习PHP,请将精力花在学习
PDO
mysqli
数据库扩展上。
,您不能像这样嵌入PHP变量。您的脚本有风险,即使使用最好的瘦脚本,也会看到发生了什么g当接口数据库已经被编写为该框架时使用,它更安全,也更容易:)除了以上所有高度有效的语句之外,简短的回答是你不能,因为PHP是服务器端。越长越深入,需要更多研究的答案是…AJAX。你需要在不刷新页面的情况下使用新请求再次调用PHP,所以你需要一个方法来实现这一点。AJAX会有所帮助。edit_data.PHP?edit=$row[0]'该行正确吗我知道id未发送edit_data.php?edit=$row[0]”该行正确吗我知道id未发送
mysql_query($sql_query) or die (mysql_error()) ;