Mysql 此查询的输出值/类型是什么?
我一直在尝试获取一篇文章的分数,它存储在MySQL数据库中。我已经能够使用以下代码完成此操作:Mysql 此查询的输出值/类型是什么?,mysql,sql,mysqli,Mysql,Sql,Mysqli,我一直在尝试获取一篇文章的分数,它存储在MySQL数据库中。我已经能够使用以下代码完成此操作: $query_getpostscore = mysqli_query($con,"SELECT score FROM theshitp_posts.mainfeed WHERE id ='$postid'"); $row = mysqli_fetch_array($query_getpostscore, MYSQLI_ASSOC); $score = mysqli_real_escape_string
$query_getpostscore = mysqli_query($con,"SELECT score FROM theshitp_posts.mainfeed WHERE id ='$postid'");
$row = mysqli_fetch_array($query_getpostscore, MYSQLI_ASSOC);
$score = mysqli_real_escape_string($con,$row['score']);
然而,我想知道为什么简单地写以下内容是行不通的:
$query_getpostscore = mysqli_query($con,"SELECT score FROM theshitp_posts.mainfeed WHERE id ='$postid'");
当然,这应该给出存储在数据库中的分数的数值,其中id=$id
为什么第一个示例有效,而第二个示例无效?即使您可能在一行中获得一列,
mysqli\u查询将向您返回一个resultset(一个mysqli\u result
对象)。您可能“知道”这只会是一个值,但计算机无法知道情况总是如此。即使您可能在一行中得到一列,mysqli\u query
将向您返回一个resultset(一个mysqli\u result
对象)。您可能“知道”这只会是一个值,但计算机无法知道情况总是如此。转义主要是为了防止SQL注入。。你为什么要逃避那些你已经从db那里弄来的东西。。删除最后一行你不需要它。好吧,不要删除它,只需删除转义<代码>$score=$row['score']代码>转义主要是为了防止SQL注入。。你为什么要逃避那些你已经从db那里弄来的东西。。删除最后一行你不需要它。好吧,不要删除它,只需删除转义<代码>$score=$row['score']代码>