在php中组合来自两个不同数组的记录

在php中组合来自两个不同数组的记录,php,mysql,arrays,Php,Mysql,Arrays,我有一个2字段表单,用于选择某些产品的类别和供应商: <input type="checkbox" name="category[]" value="<?php echo $categories_id?>"/> <input type="checkbox" name="supplier[]" value="<?php echo $produttori_id?>"/> 如何实现这一点?您可以通过()中的本机mysql函数实现这一点。 有了它,您可以

我有一个2字段表单,用于选择某些产品的类别和供应商:

<input type="checkbox" name="category[]" value="<?php echo $categories_id?>"/>
<input type="checkbox" name="supplier[]" value="<?php echo $produttori_id?>"/>

如何实现这一点?

您可以通过()中的本机mysql函数实现这一点。 有了它,您可以查询以下内容

WHERE supplier IN('supplier1','supplier2','supplier3')
因此,在您的示例中,它可以如下所示:

'SELECT * FROM PRODUCTS WHERE supplier IN('.implode(',', $_POST['supplier']).')'

您可以通过()中的本机mysql函数实现这一点。 有了它,您可以查询以下内容

WHERE supplier IN('supplier1','supplier2','supplier3')
因此,在您的示例中,它可以如下所示:

'SELECT * FROM PRODUCTS WHERE supplier IN('.implode(',', $_POST['supplier']).')'

请看这篇文章。我想你是想找到类似这篇文章的东西

请看一下这篇文章。我猜您正在试图找到类似这样的东西

您可以通过在中使用SQL运算符和PHP函数infrade、array\u map和intval来实现这一点。intval用于防止sql注入攻击

if(!empty($_POST['category']) && !empty($_POST['supplier'])) {
    $categories = implode(",", array_map('intval', $_POST['category']));
    $suppliers = implode(",", array_map('intval', $_POST['supplier']));
    $sql = "SELECT * FROM PRODUCTS WHERE supplier IN (" + $suppliers + ") AND category IN (" + $categories + ")";
    //use the sql
    //show results
}

可以通过在中使用SQL运算符和PHP函数infrade、array_map和intval来实现这一点。intval用于防止sql注入攻击

if(!empty($_POST['category']) && !empty($_POST['supplier'])) {
    $categories = implode(",", array_map('intval', $_POST['category']));
    $suppliers = implode(",", array_map('intval', $_POST['supplier']));
    $sql = "SELECT * FROM PRODUCTS WHERE supplier IN (" + $suppliers + ") AND category IN (" + $categories + ")";
    //use the sql
    //show results
}

您可以使用php函数
内爆

“从产品中选择*,其中供应商位于('.内爆(',',$发布[“供应商”])和类别位于('.内爆(',',$发布[“类别”])))。


但是首先验证输入以防止sql注入

您可以使用php函数
内爆

“从产品中选择*,其中供应商位于('.内爆(',',$发布[“供应商”])和类别位于('.内爆(',',$发布[“类别”])))。


但是首先验证输入以防止sql注入

为什么不在查询之前进行验证呢。如果是(在数组供应商中)和(在数组分类中),那么使用supplier=和category=,PHP函数在数组(item,array)中进行选择,为什么不在查询之前进行此操作呢。如果(在数组供应商中)和(在数组分类中)然后使用supplier=和category=进行选择,则_数组(item,array)中的PHP函数不这样做,它很容易被注入,即使您验证了它,您也应该使用带有绑定参数的prepared语句,然后只使用绑定参数进行查询。永远不要像那样直接插入。不要这样做,它很容易被注入,即使您验证它,您应该使用带有绑定参数的准备语句,然后只使用绑定参数进行查询。不要像那样直接插入。可以是评论也可以是评论