Euh en fait c'est bon je viens de régler le problème. Maintenant les valeurs des checkbox cochées sont bien dans le tableau caractérisé par la variable $antecedent, et aussi elles sont bien séparées par une virgule grâce à la fonction join. J'ai même viré la boucle parce qu'apparemment j'en ai même pas besoin. ^^
Le seul problème qui me reste à gérer c'est l'insertion des données dans ma base. J'ai rajouté un "or die('Erreur')" au mysql_query et le serveur me renvoie ce message d'erreur. Je pense que c'est à cause du join tout de même, car la seule séparation est la virgule, donc plus concrètement ça ferait :
select id_antecedent from antecedent where libelle_antecedent IN (antecedent1,antecedent2);
En gros, il manque les quotes. En passant la séparation ("','",$antecedent) au join, les valeurs sont affichées comme Antecedent1','Antecedent2, et non comme je voudrais 'Antecedent','Antecedent2'. C'est possible de gérer ce problème seulement avec la fonction join ?
EDIT :
"'".join(("','",$antecedent)."'";
J'obtiens bien : 'Antecedent','Antecedent2'.
Mais toujours mon problème de requête, je la poste au cas où si quelqu'un voit une erreur...
1 2 3 4
| $sql_insertion = ("insert into details_patient (Patient, antecedent) Values(
(select id_patient from patient where patient.nom like '".$nom."' and patient.prenom like '".$prenom."')
(select id_antecedent from antecedent where libelle_antecedent IN ('".$chaine_in."'))
); |
Partager