为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 SQL 更新记录

如何使用 SQL 更新记录

PHP
梵蒂冈之花 2021-08-27 09:16:23
我正在尝试使用来自表单的新用户名记录更新用户名记录。在我执行该语句后,我的数据库中的一条记录被删除,但它没有被来自表单的新记录替换。我不明白为什么。索引.php:<form action="change.php">    <input type="text" name="txtNewUsername" id="txtNewUsername" placeholder="new username"><br/>    <button>Change username</button></form>更改.php:<?phpsession_start();require_once __DIR__.'/connect.php';$txtNewUsername = $_POST['txtNewUsername'];$sUsername = $_SESSION['txtUsername'];try{    $stmt = $db->prepare('UPDATE users SET username = :sNewUsername WHERE username = :sOldUsername');    $stmt->bindValue('sNewUsername', $txtNewUsername);    $stmt->bindValue(':sOldUsername', $sUsername);    $stmt->execute();    echo $txtNewUsername;}catch(PDOEXception $ex){    echo $ex;}我想用来自表单的用户名替换连接用户的用户名。
查看完整描述

2 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

我看到的第一件事是您没有指定表单方法。没有 amethod=?默认是GET在这里阅读

您正在尝试使用POST检索更新的

更改<form action="change.php"><form action="change.php" method="post">

话虽如此……由于使用get方法是一种简单的技巧,因此最好post在将信息从一个页面传递到另一个页面时使用。

您可能还想更改<button>Change username</button><input type="button" name="submit" value="Change username" />

快乐编码!


查看完整回答
反对 回复 2021-08-27
?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

$stmt->bindValue('sNewUsername', $txtNewUsername);

我不知道这是否导致您的问题,但您缺少“:”sNewUsername


查看完整回答
反对 回复 2021-08-27
  • 2 回答
  • 0 关注
  • 154 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信