J'ai une table qui contient les noms des membres et un champ avec plusieurs numéros d'identification. Je souhaite créer une requête qui renvoie des résultats dans lesquels les valeurs des champs ID chevauchent toutes les valeurs du tableau.PHP While Loops from Arrays
Par exemple: lastname: Smith prenom: John id: 101, 103
Je Tableau # 1 avec les valeurs 101, 102, 103
Je veux la requête pour afficher tous les membres qui ont les valeurs 101 ou 102 ou 103 répertoriées dans leur champ id avec plusieurs identifiants répertoriés.
Array ( [0] => 101
[1] => 102
[2] => 103)
$sql="SELECT firstname, lastname, id
FROM members WHERE id LIKE '%".$array_num_1."%'";
$result=mysql_query($sql);
while ($rows=mysql_fetch_array($result)) {
echo $rows['lastname'].', '.$rows['firstname'].'-'.$rows['id'];
}
J'ai essayé de le simplifier. Les ID sont stockés dans une autre table et j'ai généré le tableau à partir de cette table.
$array_num_1 = array();
$sql_id="SELECT id FROM id_table WHERE id < 200";
$result_id=mysql_query($sql_id);
while($rows_id=mysql_fetch_array($result_id)){;
$array_num_1[] = $rows_id['id'];
}
Enregistrement d'une liste de valeurs et d'essayer d'écrire une requête contre elle est une * image * façon de modéliser une relation. Mon conseil est d'utiliser votre base de données comme base de données. Créer une table enfant pour la relation, puis il est trivial à interroger. – cletus
Les ID sont stockés dans une table distincte. Voir modifier ci-dessus. – Michael
Donc, vous devez vous débarrasser de ces id dans la table des membres –