Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, tudo certinho ?
To precisando de um código que funcionasse tipo como o WHERE = $variavel na linha de busca no PHP, mas que essa variável fosse vários números, vou dar um exemplo abaixo:
<?php
$id = '5';
$sql = "SELECT * FROM mural ORDER BY acaoid DESC WHERE id = '$id'";
$sqq = mysql_query($sql) or die (mysql_error());
$bsg = mysql_fetch_assoc($sqq);
O que preciso, é que em vez dele buscar somente a ID 5, que ele busque com outras ID's que eu irei definir , pensei em fazer com uma array mas não deu certo =(
Amigo, deu o seguinte erro:
'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE emailusuario IN (1, 6, 7, 10, 12)' at line 1'
'WHERE emailusuario IN (1, 6, 7, 10, 12)
emailusuario é um campo do tipo INT ? Se não for você tem que usar 'aspas' para os campos, nesse caso você está passando apenas numeros inteiros ...
É INT sim, porem já testei com varchar e da o mesmo erro !
posta a query toda que vem dando erro pois esta diferente da que postou inicialmente
<?php
$idArray = array(1,6,7,10,12);
$idList = join(', ', $idArray);
$sql = "SELECT * FROM mural ORDER BY acaoid DESC LIMIT $elimit WHERE emailusuario IN ($idList)";
$sqq = mysql_query($sql) or die (mysql_error());
$bsg = mysql_fetch_assoc($sqq);
?>Falta de atenção, minha:
>
$sql = "SELECT * FROM mural ORDER BY acaoid DESC WHERE id IN ($idList)"
Está errado mesmo... :assobiando:
O correto é assim:
$sql = "SELECT * FROM mural WHERE id IN ($idList) ORDER BY acaoid DESC"
Vaaaaaleu cara, está rodando beleza, mas se não for pedir demais, com o LIMIT ? fica como ?
Update ----
Agora foi falta de atenção minha , :nataltongue:
bom, o cod. ficou assim, se alguém precisar:
<?php
$idArray = array(1,6,7,10,12);
$idList = join(', ', $idArray);
$sql = "SELECT * FROM mural WHERE emailusuario IN ($idList) ORDER BY acaoid DESC LIMIT 30";
$sqq = mysql_query($sql) or die (mysql_error());
$bsg = mysql_fetch_assoc($sqq);
?>Que bom que resolveu
Imaginei que estava errado alguma coisa na query pois o trecho que havia postado estava super correto
Parabéns
Use o MySQL IN: