Php 过滤MySQL查询&引用;及;操作人员

Php 过滤MySQL查询&引用;及;操作人员,php,mysql,Php,Mysql,我从数据库中选择了过多的行。但是,当我尝试使用和lt_num过滤数据时,它根本没有选择任何内容。有什么问题吗 $w = $_POST['pal_num']; $w = "'".implode("','",$_POST['pal_num'])."'"; $r = mysql_query("SELECT * FROM pl_tab WHERE pal_num AND lt_num in (".$weights.");"); 我猜你需要做两个这样的比较: SELECT * FROM

我从数据库中选择了过多的行。但是,当我尝试使用
和lt_num
过滤数据时,它根本没有选择任何内容。有什么问题吗

$w = $_POST['pal_num'];
$w = "'".implode("','",$_POST['pal_num'])."'";
$r = mysql_query("SELECT * FROM pl_tab WHERE pal_num AND lt_num in (".$weights.");");

我猜你需要做两个这样的比较:

SELECT 
    * 
FROM 
    pl_tab 
WHERE 
    pal_num in (".$weights.")
    AND lt_num in (".$weights.");
例如,不能说
column1和column2=3
。如果您想要两行都等于3的行,则需要在查询中使用
column1=3和column2=3

此外,您可能需要阅读一段时间,其中涵盖了许多基本的SQL查询,并从中展开

编辑:

如果查询中有
$weights
,则可以将其设置在某个位置,或者希望它与此处显示的变量相同:

$weights = $_POST['pal_num'];
$weights = "'".implode("','",$_POST['pal_num'])."'";

这就是你的意思吗?

你的意思是用
$w
代替
$weights
?,
$weights
是在哪里定义的?是的,我的意思是用
$w
代替
$weights
。我把它改成了
(“从pal_num in(.$weights.”)的pl_选项卡中选择*,然后在(.$weights)中选择lt_num但它仍然不起作用。我错过什么了吗?谢谢你的链接,我真的应该看看。是的,这就是我的意思<代码>$weights
,而不是
$w