首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新mySQL查询不起作用

更新mySQL查询不起作用
EN

Stack Overflow用户
提问于 2014-02-15 10:51:48
回答 5查看 286关注 0票数 1

我一直在开发一些学生管理系统,其中学生登录和注册课程,登录后运行良好,显示了学生姓名、id等,要求注册课程,学生选课时应将选课内容更新到数据库中,提交页面需要从上一页获取学生id和课程,并相应更新数据库。

提交后,它只更新课程为$fresh :S

以下是submit.php代码:

代码语言:javascript
复制
<?php
$dbhost = 'localhost';
$dbuser = 'username';
$dbpass = '123';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}

$fresh = $_REQUEST["fresh"]; 
$user_id= $_REQUEST["user_id"]; 


$sql = 'UPDATE courses
    SET fresh="$fresh"
    WHERE user_id=$user_id';

mysql_select_db('registrations');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close($conn);
?>
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-02-15 10:52:53

单引号下的变量将永远不会被解析。

你的实际查询是这样的。

代码语言:javascript
复制
$sql = 'UPDATE courses SET fresh="$fresh" WHERE user_id=$user_id';
       ^----- This one                        This one ---------^

所以重写它就像

代码语言:javascript
复制
$sql = "UPDATE `courses`
    SET `fresh`='$fresh'
    WHERE `user_id`=$user_id";
票数 0
EN

Stack Overflow用户

发布于 2014-02-15 11:39:31

试试这段代码。

代码语言:javascript
复制
<?php
    $dbhost = 'localhost';
    $dbuser = 'username';
    $dbpass = '123';
    $database='registrations';
    $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$database);
    if (!$conn || $conn==null) die('Could not connect: ' . mysqli_error($conn));

    $fresh = $_REQUEST["fresh"]; 
    $user_id= $_REQUEST["user_id"]; 


    $sql = "UPDATE courses
        SET fresh='$fresh'
        WHERE user_id=$user_id";

    $retval = mysqli_query($conn, $sql);
    if(! $retval )
    {
      die('Could not update data: ' . mysqli_error($conn));
    }
    else{
    echo "Updated data successfully\n";
    }
    mysqli_close($conn);
    ?>
票数 4
EN

Stack Overflow用户

发布于 2014-02-15 10:54:45

您需要将php变量放在引号中。

试试这个sql

代码语言:javascript
复制
$sql = "UPDATE courses
    SET fresh='$fresh'
    WHERE user_id='$user_id'";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21796509

复制
相关文章

相似问题

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