尝试在MySQL查询中使用用户定义的php变量

尝试在MySQL查询中使用用户定义的php变量,php,mysql,Php,Mysql,$teamval是用户定义的值,通过在下拉列表中选择它来定义(所有选择都来自数据库) 我得到的是“警告:mysql\u num\u rows()期望参数1是资源,布尔值在第44行的C:\Program Files(x86)\wamp\www\processlvl1.php中给出” 有什么解决办法吗 编辑:$teamval的变量不是列,而是列中的变量 数据库表如下所示: 名字姓氏团队 卢武铉 杰克·哈维·卢武铉 杰罗姆·米卡恩 基本上,试图让它只输出与用户选择的特定团队配对的名称,如果请求失败,则

$teamval是用户定义的值,通过在下拉列表中选择它来定义(所有选择都来自数据库)

我得到的是“警告:mysql\u num\u rows()期望参数1是资源,布尔值在第44行的C:\Program Files(x86)\wamp\www\processlvl1.php中给出”

有什么解决办法吗

编辑:$teamval的变量不是列,而是列中的变量

数据库表如下所示:

名字姓氏团队 卢武铉 杰克·哈维·卢武铉 杰罗姆·米卡恩


基本上,试图让它只输出与用户选择的特定团队配对的名称,如果请求失败,则查询返回false,而不是资源。因此,这个错误就是您的查询

尝试:


他们将向您解释错误所在

是否为正确的数据库列$teamval您应该在新代码中使用MySQLi@DaniellZarcaro或PDO。如果你使用准备好的语句,你甚至不会面临这个问题。不太确定准备好的语句是什么,抱歉,伙计,上周才开始学习这个东西,它是为“order子句”中的一个类未知列“ANA”准备的,不确定它从哪里得到“order子句”,但ANA不是一个列,它是列中的一个变量,所以我猜我排序错了?所以你试图按一个不存在的字段对结果排序(区分大小写)。是的,顺序必须集中在列的名称上。是的,我猜。基本上,“ANA”是“team”列下的一个团队,但我只想让它显示该团队中的每个人(在另一个名为“First_Name”的列中)。这就是我写错的方式吗?
$SQL="SELECT * FROM stats ORDER BY $teamval";

$result=mysql_query($SQL);

$num_results=mysql_num_rows($result);
mysql_query($SQL) or die(mysql_error());