Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Sql seleciona os elementos que correspondem ao array e os exibe em uma linha


O que você deve fazer aqui é usar o IN CLAUSE . Converta o $_POST[] para uma string separada por vírgula.
$choices = implode(', ', $_POST['choices']);

SELECT name, item, price, images FROM `my-tb` WHERE item IN ($choices)

O que produzirá uma consulta como:
SELECT name, item, price, images FROM `my-tb` WHERE item IN (a,b,d)

Isso também fará com que você não faça um loop sobre seu $_POST e executar várias consultas desnecessariamente.

Nota lateral

Não tenho certeza se sua tabela real se chama my-tb mas se você tiver hyphens no nome da sua tabela você deve usar backticks para encapsular o nome da string.