通过mysql数据库中的php更新数据

巴斯·施罗德(Bas Schreuder)

我在WWW和论坛上四处浏览,但是找不到工作的答案。我想更新我在........... / post.php?id = 19上的帖子

这是我的功能:

function update_user($conn) {

    if(isset($_GET['id'])) {
        $id = $_GET['id'];
        $name = $_POST['name'];
        $age = $_POST['age'];
        $sql = "UPDATE users SET name =':name', age = ':age' WHERE id=':id'";
        $query = $conn->prepare($sql);
        $query->execute( array( ':name'=>$name, ':age'=>$age, ':id' => $id ));
        }
 }

这是我的表格:

 <h3>Update a user</h3>
 <?php update_user($conn) ?>
 <form name="myForm2" method="POST" action= "">
 <label>Name:</label><input type="text" id="name" name="name">
 <label>Age:</label><input type="text" id= "age" name="age">

 <input type="submit" value="add" name="update">

我没有错误,但是POST仅返回旧记录,而没有填写我的更新。

希望有人能帮助我,谢谢一百万。巴斯

PS。$ conn是正确的,并且在插入或打印帖子时有效。

将B.

夫妻问题是,设置了1个用于查看个人资料页面的文件$_GET['id'],因此无论是否提交表单,它都会执行update_user函数。您应该检查另一个值,以确保提交表单。另一个问题是带有命名参数的SQL不应使用引号。

<?php
function update_user($conn)
{
    if(isset($_POST['id'])) {
        $id = $_POST['id'];
        $name = $_POST['name'];
        $age = $_POST['age'];
        $sql = "UPDATE users SET name = :name, age = :age WHERE id = :id";
        $query = $conn->prepare($sql);
        $query->execute(array(':name' => $name, ':age' => $age, ':id' => $id));
    }
}
?>

 <h3>Update a user</h3>
 <?php update_user($conn) ?>
 <form name="myForm2" method="POST" action= "">
 <label>Name:</label><input type="text" id="name" name="name">
 <label>Age:</label><input type="text" id= "age" name="age">
 <input type="hidden" name="id" value="<?php echo $_GET['id'] ?>">
 <input type="submit" value="add" name="update">
 </form>

我为id添加了一个隐藏的输入字段,并更改了update_user检查POST ID而不是GET ID的条件。

出于对编程的全部热爱,请在将$ _POST数据发送到数据库之前对其进行验证。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过PHP在MySQL数据库请求后更新XML文件

来自分类Dev

PHP MySql数据库阵列更新

来自分类Dev

PHP SQL中的更新不会更新数据库

来自分类Dev

通过python更新Mysql数据库时出错

来自分类Dev

通过Codeigniter和PHP更新SQL数据库

来自分类Dev

如何让Button更新php中的mysql数据库

来自分类Dev

如何通过拖放JavaScript和PHP中的外部事件来更新数据库中的事件?

来自分类Dev

在Ruby on Rails中,更新的gem导致先前通过Capybara测试的mysql数据库回滚

来自分类Dev

PHP更新数据库

来自分类Dev

如何使用php从mysql数据库中获取数据

来自分类Dev

在php中显示mysql数据库

来自分类Dev

MySQL Query不更新PHP数据库中的值

来自分类Dev

PHP-更新MySQL数据库

来自分类Dev

数据未插入php的mysql数据库中

来自分类Dev

通过php从数据库上传数据

来自分类Dev

无法从MySQL数据库更新数据

来自分类Dev

使用php从mysql数据库中获取数据

来自分类Dev

PHP SQL中的更新不会更新数据库

来自分类Dev

使用<select>标记通过提交按钮更新PHP中的数据库

来自分类Dev

PHP:在表中显示mysql数据库中的数据

来自分类Dev

如何更新mySQL数据库中的数据?

来自分类Dev

通过PHP从mysql数据库中获取数据

来自分类Dev

尝试更新php中的mysql数据库形式

来自分类Dev

MYSQL和PHP数据库更新不会更新数据库

来自分类Dev

如何使用php更新数据库中的数据

来自分类Dev

PHP - 更新/编辑数据库表中的数据/记录

来自分类Dev

通过 PHP 更新数据库

来自分类Dev

通过php将多个文件中的数据插入到mysql数据库中

来自分类Dev

无法使用php更新mysql数据库中的值