首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用PHP从MySQL数据库更新记录

问无法使用PHP从MySQL数据库更新记录
EN

Stack Overflow用户
提问于 2015-03-05 11:02:00
回答 2查看 90关注 0票数 0

我试图使用PHP代码更新MySQL数据库中的记录。问题是,如果只有一条记录正在更新,但是对于表中的多条记录,相同的代码不会更新其中的任何一条。我不知道为什么。下面是来自页面edit.php的PHP代码的一部分(“user”可能会引起混淆;它是关于一个使用密码登录并可以更改其他用户数据的管理用户)

代码语言:javascript
复制
session_start();
$user = $_SESSION['username'];
$pass = $_SESSION['password'];

if (isset($_POST ['updateuser'])){
$UpdateQuery="UPDATE user SET email='$_POST[email]', name='$_POST[name]', surname='$_POST[surname]', grade='$_POST[grd]'";
mysql_query($UpdateQuery, $link);};

if(isset($_POST ['Edit']))
{ $sql = "SELECT * FROM user WHERE idUser = '$user'";
  $p = mysql_query($sql, $link);
  echo '<table border=1 >
  <tr>
  <th>email</th>
  <th>name</th>
  <th>surname</th>
  <th>grade</th>
  </tr>';
  while($record=mysql_fetch_array($p)){
  echo '<form action=edit.php method=post>';
  echo '<tr>';
  echo '<td><input type=text  name=email value=" '.$record['email']. '"></td>';
  echo '<td><input type=text name=name value=" '.$record['name']. '"></td>';
  echo '<td><input type=text name=surname value=" '.$record['surname']. '"></td>';
  echo '<td><input type=text name=grd value=" '.$record['grade']. '"></td>';
  echo '<td><input type=hidden name=hidden value=" ' .$record['idUser']. '"></td>';
   echo '<td><input type=submit name=updateuser value=Update></td>';
          echo '</form>';
         }
         echo '</table>';}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-05 11:08:20

您忘记在更新查询中添加条件子句。尝尝这个

代码语言:javascript
复制
$UpdateQuery="UPDATE user SET email='$_POST[email]', name='$_POST[name]', surname='$_POST[surname]', grade='$_POST[grd]' WHERE idUser = '$user'";

而不是

代码语言:javascript
复制
$UpdateQuery="UPDATE user SET email='$_POST[email]', name='$_POST[name]', surname='$_POST[surname]', grade='$_POST[grd]'";
票数 1
EN

Stack Overflow用户

发布于 2015-03-05 11:08:14

您的更新查询没有WHERE子句,请使用以下代码

代码语言:javascript
复制
$UpdateQuery="UPDATE user SET email='$_POST[email]', name='$_POST[name]', surname='$_POST[surname]', grade='$_POST[grd]' WHERE idUser = '$user'";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28876308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档