Raptor... relis mon dernier message please. Le 18, je l'ai modifié.
Raptor... relis mon dernier message please. Le 18, je l'ai modifié.
PDO, une soupe et au lit !
Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020
Bonjour Raptor92,
Et avec cette ligne que Dendrite a rajouté?
Code : Sélectionner tout - Visualiser dans une fenêtre à part <select name="choix_color" id="choix_color" multiple onChange="this.parentNode.submit()">
Car ca doit venir de session['couleur_choisi'] qui est null, le reste du code est bon
@Dendite
Je ne vois pas l'intérêt de $_SESSION['couleurs'] et $_SESSION['dims'] pour le traitement du formulaire (puisqu'on récupère ces données de la bdd).
SEUL $_SESSION['couleurs_choisies'] provient bien du formulaire, et sert effectivement à sauvegarder les choix effectués, et à les afficher dans le textarea (bien qu'on puisse se passer de SESSION ici).
@Raptor92
Ce serait bien de préciser ce que tu cherches réellement à obtenir.
Car l'affichage dans le textarea des option choisies peut se faire très simplement via JavaScript, SANS soumettre le formulaire (avec ou sans Ajax).
Je n'ai toujours pas compris à quoi sert le(s) textarea...
Dernière modification par Invité ; 25/05/2018 à 17h57.
Un exemple d'affichage des choix en javaScript :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <form name="form1" class="style_input1" method="post" action=""> <p>Couleurs : <select name="choix_color" multiple onchange="affiche_choix(this,'colors_selected');"> <option value="10">bleu</option> <option value="999">vert</option> <option value="20">jaune</option> <option value="21">orange</option> <option value="11">rouge</option> <option value="0">violet</option> </select> Couleurs choisies : <span id="colors_selected"></span> </p> <p>Dims : <select name="choix_dim" multiple onchange="affiche_choix(this,'dims_selected');"> <option value="10">10</option> <option value="15">15</option> <option value="50">50</option> <option value="100">100</option> </select> Dims choisies : <span id="dims_selected"></span> </p> </form>
Code javaScript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 function affiche_choix(elmt,id) { var values = new Array(); for(var i=0; i<elmt.options.length; i++) { if(elmt.options[i].selected == true) { values[values.length] = elmt.options[i].innerHTML; // texte de l'option } } document.getElementById(id).innerHTML = values.join(' - '); }
Dernière modification par Invité ; 28/05/2018 à 11h13.
Bonjour,
Je me permets deux petites remarques:
1)
Lorsque tu cites un message d'erreur, il est judicieux de remplacer le numéro de ligne renvoyé lors du test par celui de la portion de code posté dans la question. Ceci arrive souvent lorsqu'on fait un copier/coller d'une portion de code. C'est plus facile pour celui qui vient en aide. En #1, l'erreur n'est pas à la ligne 38 mais à la ligne 14.Notice: Undefined index: choixcolor in C:\wamp\www\TDS_Construction\Test.php on line 38
2)
En #4,Lorsque le navigateur affiche ce type d'erreur, cela signifie en général, qu'il attend autre chose avant le caractère inattendu. C'est presque toujours un signe de ponctuation tel que virgule, point-virgule, parenthèse, etc.Parse error: syntax error, unexpected '{' in C:\wamp\www\TDS_Construction\Test.php on line 38
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.
Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]
si c'est pour modifier les variable récupérées je crois
Bonsoir
En effet, c'est pour éventuellement les modifier lors de la créations d'un article
Je suis en train de vérifier mon code en fonction de vos remarques
Mille merci pour cela
Bien à vous
Raptor92
Dominique
Aucune aide par MP, utilisez le forum.
Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Raptor92
Dominique
Aucune aide par MP, utilisez le forum.
Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
1- Alors des checkbox suffisent (au lieu du select).
2- Sinon, le code que j'ai donné va bien aussi (sans textarea).
Mais on va attendre que tu saches vraiment ce que tu veux faire...
Quand tu sauras, tu nous expliqueras. Clairement.
Dans ce cas faudrait que t'agrandisse le text area
(Je suppose que la liste est évolutive)
car sinon tu vas te retrouver avec un texte a faire défiler.
Bonjour à Tous
Je tenais à vous remercier pour votre aide précieuse, après lecture et test, je suis arrivé à la solution, non sans peine, mais avec votre aide
Merci à tous et excellente journée
Voici le code (global, mais que j'ai bien décomposé selon les fichier css et js)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 <body> <?php if(empty(session_id())) session_start(); if(! isset($_SESSIONS['couleurs']) || ! isset($_SESSION['dims'])){ try { include 'bdd_connexion.php'; $requete = $sql->query("SELECT COL_CODE FROM COULEURS"); $_SESSIONS['couleurs']=array(); while ($donnee = $requete->fetch(PDO::FETCH_ASSOC)){ $_SESSIONS['couleurs'][]=$donnee; } $_SESSIONS['couleurs_choisies']=array(); $req = $sql->query("SELECT DIM_CODE FROM DIMENSIONS"); $_SESSION['dims']=array(); while ($donnee = $req->fetch(PDO::FETCH_ASSOC)){ $_SESSION['dims'][]=$donnee; } $_SESSION['dims_choisies']=array(); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } } ?> <style> select, textarea { display: block; width: 200px; } </style> <script type="text/javascript"> function affiche_choix(elmt,id) { var values = new Array(); for(var i=0; i<elmt.options.length; i++) { * *if(elmt.options[i].selected == true) { * * *values[values.length] = elmt.options[i].innerHTML; } } *document.getElementById(id).innerHTML = values.join(' - '); } </script> <form name="form1" class="style_input1" method="post" action=""> <p>Coloris :<br> <select name="choix_color" id="choix_color" multiple onChange="affiche_choix(this,'colors_selected');"> <?php foreach($_SESSIONS['couleurs'] as $row){ echo '<option value="'.$row['COL_CODE'].'">'.$row['COL_CODE'].'</option>'; } ?> </select> Sélection : <span id="colors_selected"></span> </p> <p>Dimension : <br> <select name="choix_dim" id="choix_dim" multiple onchange="affiche_choix(this,'dims_selected');"> <?php foreach($_SESSION['dims'] as $row){ echo '<option value="'.$row['DIM_CODE'].'">'.$row['DIM_CODE'].'</option>'; } ?> </select> Sélection : <span id="dims_selected"></span> </p> </form> </body>
Raptor92
Dominique
Aucune aide par MP, utilisez le forum.
Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Bonjour
Une dernière question, est-ce que quelqu'un peut m'expliquer ce que veut dire ce message, tout fonctionne, mais ce message s'affiche
Bien à vous
Code : Sélectionner tout - Visualiser dans une fenêtre à part Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at C:\wamp\www\TDS_Construction\ArticleCreate.php:307) in C:\wamp\www\TDS_Construction\Combo.php on line 2
Raptor92
Dominique
Aucune aide par MP, utilisez le forum.
Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Bonjour,
1- Il ne faut pas de code HTML avant session_start. Lis la DOC.
2- ton code est un patchwork des solutions qu'on t'a données.
Mais comme tu n'es pas très locace, on ne peut pas l'optimiser pour tes besoins.
3- Perso, je pense qu'il y a trop de choses inutiles...
Notamment l'usage de sessions... qu'on écrit $_SESSION (pas $_SESSIONS !).
Bonjour
En fait, j'aurais du lire en effet avant de poster cette dernière demande, j'ai compris que j'avais déjà un appel par ailleurs
Tout fonctionne parfaitement
Et pour répondre à votre demande, je suis débutant en PHP (mais cela vous le saviez), et je me suis lancé dans la création d'une application devant remplacer un CRM que j'avais écrit avec Windev, et spécialisé dans le domaine du textile (fabrication, achat et logistique)
L'importance de ce type de liste résulte dans la capacité à sélectionner l'ensemble des composants nécessaires à la fabrication et pour cela l'utilisateur à besoin de visualiser ses choix
Bien à vous
Raptor92
Dominique
Aucune aide par MP, utilisez le forum.
Mon guide du débutant pour apprendre à programmer en Java - N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
si ca fonctionne c'est deja bien
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager