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

Selecione vários IDs de uma tabela


quando tu interpolares
"select * from info WHERE `id` IN ('$ids')"

com seus IDs, você obtém:
"select * from info WHERE `id` IN ('1,2,3,4,5')"

...que trata seu conjunto de IDs como uma única string em vez de um conjunto de inteiros.

Livre-se das aspas simples no IN cláusula, assim:
"select * from info WHERE `id` IN ($ids)"

Além disso, não se esqueça de verificar se há ataques de injeção de SQL . Seu código é atualmente muito perigoso e corre o risco de perda ou acesso a dados sérios. Considere o que pode acontecer se alguém chamar sua página da web com o seguinte URL e seu código permitir que eles executem várias instruções em uma única consulta:
http://www.example.com/myfile.php?theurl=1);delete from info;--