如何从SQL查询中获取整数输出

AKo*_*Kor 3 php mysql sql

我有一个SQL查询如下:

    $tagID = mysql_query("SELECT tagID FROM tags WHERE tagName = '$tag'");
     echo $tagID;
Run Code Online (Sandbox Code Playgroud)

我希望$ tagID包含类似3,或5或任何整数的东西.但当我回应它时,输出是:

resource id #4
Run Code Online (Sandbox Code Playgroud)

我怎样才能使它成为一个简单的整数?

Sta*_*asM 6

$result = mysql_query("SELECT tagID FROM tags WHERE tagName = '$tag'"); // figure out why an existing tag gets the ID zero instead of 'tagID'
$row = mysql_fetch_assoc($result);
echo $row["tagID"];
Run Code Online (Sandbox Code Playgroud)

mysql_query()返回结果资源,而不是查询中的值.您必须使用获取函数来获取实际数据.

如果您希望此代码更清晰,请检查$result不是false(查询错误)而$row不是false(找不到任何内容).

  • @ Col.Shrapnel你不必在每个快速修复中都适合完整的comp.sci和安全课程.问题是关于具体的查询,答案也是如此.如何过滤$ tag是完全不同的主题,这里没有讨论. (4认同)
  • sql注入易受攻击的解决方案被接受和upvoted.为什么我不感到惊讶? (2认同)