J'ai une petite tâche où j'ai une table mysql "boutiques" .Il contient une colonne "catégories". Chaque champ de catégories contient des valeurs différentes comme "22,44,33,55,24,33,22" Maintenant, en prenant chaque valeur de ce champ, j'ai besoin d'obtenir la valeur d'une colonne "parent" dans une autre table. (lien avec les identifiants) Je sélectionne toute la chaîne, mais je veux sélectionner chaque numéro. S'il vous plait, j'ai besoin de votre aide avec ceci.exploser et sélectionner chaque élément du tableau
$db_selected = mysql_select_db("",$con);
$sql = "SELECT categories from shops";
$array = mysql_query($sql,$con);
while($row=mysql_fetch_array($array)){
foreach($row as $value){
$result= explode(" ", $value);
foreach($result as $newvalue){
$query="SELECT parent FROM categories where categories.id=$newvalue<br/>";
echo $query;
}
}
}
mysql_close($con);
?>
Et c'est pourquoi vous normaliser votre base de données avec une table 'shops_categories' distincte pour enregistrer cette relation au lieu de bourrer des nombres séparés par des virgules dans le même champ. – deceze
je suis désolé, je ne peux pas normaliser ma base de données, mais besoin d'une solution pour cela ... – user1694724
vérifier la fonction MySQL ['find_in_set'] (http://dev.mysql.com/doc/refman/5.0/fr/string-functions. html # function_find-in-set) – air4x