Comment utiliser la fonction implode()?

mariam -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
bonjour j'ai un petit souci dans mon code php, alors j'ai un formulaire qui contient un select
<select class="form-control " name="Chambre[]" multiple="multiple">


donc je stock la variable id_chambre dans ma base de donnée sous forme d'un tableau
$id_chambre=implode(',', $_REQUEST['Chambre']);


le problem c'est que je doit faire un test sur le champ id_chambre mais ça marche pas, le test SQL est :
$sql = "SELECT c.* 
FROM chambre AS c
LEFT JOIN reservation_client AS rc
  ON c.id = rc.id_chambre AND rc.start < '$en' AND rc.end > '$str' AND chek!=2
WHERE rc.id_chambre IS NULL";

ici je doit afficher seulement les chambres disponible entre la date start et end <br>
PS: quant j'utilise pas implode() et je stocke une seule chambre le test marche très bien mais j'ai besoin de stocker plusieurs chambres
A voir également:

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, tu expliques peu, et tu nous montres encore moins. difficile, ainsi, de t'aider.
si tu décides de partager ton code, sois attentif à utiliser les balises de code.
je pense qu'au lieu d'utiliser implode, tu peux faire ainsi:
foreach ($_REQUEST['Chambre'] as $id_chambre)
{
                    // traitement d'une chambre
}
0
mariam
 
bon pour bien expliquer j'ai un formulaire qui contient un select pour sélectionner les chambres disponibles entre deux dates et je met le test SQL si dessus pour afficher seulement les chambres disponibles alors quand je stock une seule chambre le teste marche bien mais quant je stock plusieurs id_chambre par exemple id_chambre(1,2,8) je trouve dans les chambres disponible c'elle qui a l'id 8 et 2 alors qu'elles sont pas disponibles donc le test marche seulement avec une chambre comment je peut faire dans le cas de plusieurs chambres
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > mariam
 
pour bien expliquer, tu devrais utiliser un autre vocabulaire.
je pense comprendre que tu as du code PHP qui exécute une requête SQL et qui utilise la réponse à cette requête pour envoyer du code HTML contenant un formulaire.
je ne comprends pas qui stocke quoi où, ni où tu trouves quoi de disponible. je ne comprends pas "stocker dans une ligne".
pourquoi nous caches-tu ton code PHP?
0
mariam
 
et est ce que
foreach ($_REQUEST['Chambre'] as $id_chambre)
{
// traitement d'une chambre
}

va me permet de stocker plusieurs id dans une seule ligne?
0