升级MySql数据库

时间:2016-08-09 16:02:42

标签: php mysql database sql-update

基本上,我正在尝试使用表单更新数据库。但它没有更新。不确定错误是什么。我遇到的问题是,即使我编辑表单并点击提交,信息也保持不变。如果你能看到我做错了什么,我将不胜感激! 谢谢!

<?php
session_start();
include_once 'dbconnect.php';

$query = $DBcon->query("SELECT * FROM user WHERE user_id=".$_SESSION['userSession']);
$userRow=$query->fetch_array();
//$query = $DBcon->query("SELECT * FROM user WHERE user_id=".$_SESSION['userSession']);
//$userRow=$query->fetch_array();

if(!empty($_POST)){

    echo '<div id="updated">we just updated the record...</div>';
    $results = $DBcon->query(" UPDATE user SET username= '" . $_POST['username'] . "', password='".$_POST['password']."' WHERE user_id='".$_POST['user_id']."' ");
    echo $results;

    //$sql = "UPDATE daves_table SET first_name ='$_POST['last_name']' WHERE id = '$_POST['rowid']'";
    //UPDATE `david_schema`.`daves_table` SET `last_name`='$_POST['last_name']' WHERE `id ='$_POST['rowid']';
    //print_r($_GET)
}

$user_id = $_GET['user_id'];
if(empty($user_id)){echo 'no id provided.';die;}
$result = mysqli_query($DBcon,"SELECT * FROM user WHERE user_id = '". $user_id ."'");

while($row = mysqli_fetch_array($result))
    {
        ?>
        <form action="change_info.php?user_id=<?php echo $_GET['user_id']; ?>" method="post">
        <input type="hidden" name="rowid" id="rowid" value="<?php echo $row['user_id']; ?>" />
        <br>
        <input type="text" name="username" id="username" value="<?php echo $row['username']; ?>" />
        <br>
        <input type="text" name="password" id="password" value="<?php echo $row['password']; ?>" />
        <br>
        <input type="submit" name="submit"/>

        <?php } ?>

1 个答案:

答案 0 :(得分:1)

UPDATE查询中,$_POST['user_id']应该是$_GET['user_id'],因为您在表单的操作中有?user_id=<?php echo $_GET['user_id'];?>。网址参数位于$_GET,而不是$_POST

或者您可以使用$_POST['rowid']从隐藏字段中获取它。