Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL-在多值字段中搜索_Php_Mysql - Fatal编程技术网

Php MySQL-在多值字段中搜索

Php MySQL-在多值字段中搜索,php,mysql,Php,Mysql,在我的数据库表中,我有以下字段: 表供应商: 身份证 名字 车辆 一个供应商可以有多辆车。“车辆”字段将存储多个值。目前,我正在划分“管道”符号上的值,但如果需要,可以将其更改为逗号 在我的前端表单上,我有一个复选框列表-用户可以选择多个车辆。后端脚本需要执行搜索并带回包含任何指定车辆id的所有供应商 换句话说,我们在多值字段中搜索多个值 复选框列表名称为vehicle_type[],并将在$\u POST数组中结束,例如: 这可能吗?很明显,我可以使用联接表来实现这一点,但理想情况下,我希

在我的数据库表中,我有以下字段:

表供应商:

  • 身份证
  • 名字
  • 车辆
一个供应商可以有多辆车。“车辆”字段将存储多个值。目前,我正在划分“管道”符号上的值,但如果需要,可以将其更改为逗号

在我的前端表单上,我有一个复选框列表-用户可以选择多个车辆。后端脚本需要执行搜索并带回包含任何指定车辆id的所有供应商

换句话说,我们在多值字段中搜索多个值

复选框列表名称为vehicle_type[],并将在$\u POST数组中结束,例如:

这可能吗?很明显,我可以使用联接表来实现这一点,但理想情况下,我希望这样做。如果有帮助的话,我将使用PHP作为我的脚本语言

“车辆”字段将存储多个值。目前,我正在划分“管道”符号上的值,但如果需要,可以将其更改为逗号

请不要那样做。将分隔数据存储在文本字段中并不比将其存储在平面文件中更好。数据变得不可查询

你想要的

复选框列表名称为vehicle_type[],并将在$\u POST数组中结束,例如[…]这是否可行


这是很有可能的,也是个好主意。试试看,看看效果如何。

重复您的问题:,18分钟前发布。不是重复-只是不同的方法。
Array 
( 
    [0] => 1 
    [1] => 4 
    [2] => 6 
)
CREATE TABLE Suppliers (
    supplier_id INTEGER PRIMARY KEY,
    ...
);

CREATE TABLE Vehicles (
    vehicle_id INTEGER PRIMARY KEY,
    ...
);

CREATE TABLE Supplier_Vehicles (
    supplier_id INTEGER NOT NULL REFERENCES Suppliers(supplier_id),
    vehicle_id INTEGER NOT NULL REFERENCES Vehicles(vehicle_id),
    UNIQUE KEY(supplier_id, vehicle_id)
);

-- Grab all the Vehicles for Supplier 39
SELECT Vehicles.*
  FROM Vehicles, Supplier_Vehicles
 WHERE Supplier_Vehicles.supplier_id = 39
   AND Supplier_Vehicles.vehicle_id = Vehicles.vehicle_id