3 liste deroulante liées PHP/MYSQL/AJAX

1no -  
 Solution -
Bonjour,

j'ai un un problème qui me rend vraiment dingue.
voila j'ai 3 liste déroulante qui sont liée dont les données sont dans une base mysql.
cependant le code fonctionne parfaitement chez moi mais non chez l'hebergeur.
je ne sait pas ce qui peut engendré cela.

j'ai besoins de votre aide
A voir également:

12 réponses

bestcalinou
 
AVIS A LA POPULASSE:

faut mettre <%php et pas juste <% !!!!!

Allez, continuez de développer ...

A+
THE BOSS
1
doounia
 
Bonjour tout le monde,
est ce que qlq pourrais me donner le code pour les 3 listes liées, je l'ai déja fait avec 2 listes mais je galère pour passer a 3
Merci d'avance
1
Solution
 
Émail adress pour vous envoyer solution
0
doounia
 
Salut maguidi,
moi j'ai trouvé la solution ici:
https://www.developpez.net/forums/d176592/javascript/ajax/ajax-3-listes-chaine/
bonne journée
1
maguidi
 
merci dounia j vais y jeter un coup d'oeil
0
maguidi
 
salut dounia
J suis allé sur le lien que tu m''a doné mais ça marche pas est que tu peut me poster ton code s'il te plait
0
doounia > maguidi
 
Salut Maguidi,
On faite mon code va t'embrouiller plus,il ne ressemble plus au code sur le lien(c'est la version basic)
mais te l'envoi si tu le veux
peux -tu me donner ton adresse mail pour que je puisse t'envoyer mes pages
0
maguidi > doounia
 
mon mail c'est diengmaguy@hotmail.fr
j vais essayer de m débrouiiler avec ton code.
Merci pour ton aide c'est très gentil de ta part
0
bigjel Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   > doounia
 
slt Dounia,
stp, peux-tu mettre ton code à la disposition de tous. J'arrive à faire marche le code sur 2 listes mais pas sur 3listes.
Merci.
0
serpan2 Messages postés 178 Date d'inscription   Statut Membre Dernière intervention   6
 
keske tu veux dire par "non chez l'hebergeur" comment elle s'apparait ou tu nous donne le lien vers ton site
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sadigoun
 
je veux dire que ca ne marche pas chez l'hebergeur.
le fonctionnement est que normalement la 2ème doit se remplir en fonction de la première
et la troisième en fonction de la deuxième.
avec easyphp mon code fonctionne, mais ca ne marche pas chez l'hebergeur.
0
Amel
 
bonjour
j'ais le meme probleme , un travil urgent m'est demandé et je ne sais quoi faire je suis débutante en php
SVP
j'ai 3 tables
1 wilaya
2 Daira
3 Commune

une wilaya contien plusieurs daira
et une daira contient plusieurs commune

et je veux les récupere dans 3 liste liées
SVP aidez moi comment l'avez vous fai soi en php ou easy php SVP
merci
0
Chupachups23 Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   18
 
Je comprend pas la moitié de ce que vous dites mais pour lier des liste déroulante il suffit de mettre :
onchange='document.forms["choixcat"].submit();'

dans le select.Quand tu changer d'option , ça va envoyer le formulaire .
0
Amel
 
bonjour SVP
je vous explique
en php
une table contient les pays
une table contient les ville de chaque pays
et une table contrient les communes de chaque villes

je veux quand je choisi dans la liste pays , ça me donne dans la 2eme liste les ville de ce pays, et quand je choisi une ville de cette 2eme liste ça me donne dans la 3eme liste les communes de cette ville.
Biensure les pays, villes commune se trouvent dans une base de donnée
SVP si vous pouvez m'envoyer le code j'ai un travail urgent
merci
0
riad > Amel
 
bonjour ;
j'amerie savoir si vous avez trouvez une solution pour ce problem
je cherche une solution pour le même problem
0
kam
 
Bonjour;
je cherche la même solution et je n'y arrive pas! pourriez vous m'envoyer ta solution? pour l'adapté aprés!!!
voici mon mail: kamail8@yahoo.fr
un grand merci.
0
kam
 
désolé!!! votre solution? j'ai pas fait attention!!!
0
Chupachups23 Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   18
 
Je t'enverrais pas le travail tout fait mais c'est simple tu place des " onchange='document.forms["choixpays"].submit();'
" dans les select , ça enverra le formulaire quand tu changera de choix.
Donc ca envoie le 1er formulaire , tu récup sur ta bdd les villes de ce pays , tu affiche les ville , tu choisi une ville , ca va envoyer le formulaire , tu récup le nom des communes et tu les affiche .
0
Amel
 
bonjour et merci de m'avoir repondre
j'ai fait ce code d'aprés ce lien https://siddh.developpez.com/articles/ajax/#LIV-A
de deux liste
il ne marche pas:
[code]
CREATE TABLE `auteur` (
`id` tinyint(4) NOT NULL auto_increment,
`nom` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
);

insert into `auteur` values
(1,'Clive Cussler'),
(2,'Harlan Coben'),
(3,'Franck Herbert'),
(4,'Pierre Bordages');

CREATE TABLE `livre` (
`id` tinyint(4) NOT NULL auto_increment,
`titre` varchar(50) NOT NULL,
`idAuteur` tinyint(4) default NULL,
PRIMARY KEY (`id`)
) ;

insert into `livre` values
(1,'Odyssee',1),
(2,'Sahara',1),
(3,'Dragon',1),
(4,'Une chance de trop',2),
(5,'Ne le dis a personne',2),
(6,'Disparu à jamais',2),
(7,'Dune',3),
(8,'La barriere de santaroga',3),
(9,'Les guerriers du silence',4),
(10,'La citadelle hyponeros',4),
(11,'Terra mater',4);

/code

le fichier auteur.php
[code]
<html>
<head>
<title>Tutoriel Ajax (XHTML + JavaScript + XML)</title>
<script type='text/javascript'>

function getXhr(){
var xhr = null;
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
return xhr;
}

/**
* Méthode qui sera appelée sur le click du bouton
*/
function go(){
var xhr = getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function(){
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
if(xhr.readyState == 4 && xhr.status == 200){
leselect = xhr.responseText;
// On se sert de innerHTML pour rajouter les options a la liste
document.getElementById('livre').innerHTML = leselect;
}
}

// Ici on va voir comment faire du post
xhr.open("POST","ajaxLivre.php",true);
// ne pas oublier ça pour le post
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
// ne pas oublier de poster les arguments
// ici, l'id de l'auteur
sel = document.getElementById('auteur');
idauteur = sel.options[sel.selectedIndex].value;
xhr.send("idAuteur="+idauteur);
}
</script>
</head>
<body>
<form>
<fieldset style="width: 500px">
<legend>Liste liées</legend>
<label>Auteurs</label>
<select name='auteur' id='auteur' onchange='go()'>
<option value='-1'>Aucun</option>
<?
mysql_connect("localhost","root","root");
mysql_select_db("test");
$res = mysql_query("SELECT * FROM auteur ORDER BY nom");
while($row = mysql_fetch_assoc($res)){
echo "<option value='".$row["id"]."'>".$row["nom"]."</option>";
}
?>
</select>
<label>Livres</label>
<div id='livre' style='display:inline'>
<select name='livre'>
<option value='-1'>Choisir un auteur</option>
</select>
</div>
</fieldset>
</form>
</body>
</html>
/code

le fichier Ajaxlivre
[code]
<?php
echo "<select name='livre'>";
if(isset($_POST["idAuteur"])){
mysql_connect("localhost","root","root");
mysql_select_db("test");
$res = mysql_query("SELECT id,titre FROM livre
WHERE idAuteur=".$_POST["idAuteur"]." ORDER BY titre");
while($row = mysql_fetch_assoc($res)){
echo "<option value='".$row["id"]."'>".$row["titre"]."</option>";
}
}
echo "</select>";
?>
/code

ou est le probleme ici
0
abbescr7 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   > Amel
 
<option value='-1'>Aucun</option>
<?php ( a la plce de <? l'erreur ete la)
mysql_connect("localhost","root","root");
mysql_select_db("test");
0
Chupachups23 Messages postés 73 Date d'inscription   Statut Membre Dernière intervention   18
 
A toi de nous dire hein , y'a beaucoup de ligne , tu as pas plus d'infos ? Messages d'erreur ? Page blanche ? Et je pense que tu cherche quelque chose trop compliqué pour ce que tu souhaite .Utiliser un code que tu comprends pas , quel est l'intérêt ?
0
Amel
 
Bonjour et merci de m'avoir répondre
je suis débuttante en php
là ou je travail m'ont demandé ce travail
quand j'ai fait l'execution les listes déroulantes sont vides prkoi?
0
Tony85 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention  
 
Slt alors,

J'ai voulu réaliser 3 listes déroulantes mise a jour auto mais j'ai eu bocoup de mal mais apres des jorus de taf sa marche.
Si tu veu je peu t'envoyer sa par mail donc hésite pas a me donné ton mail car mettre sur le forum sa prends pas mal de place.

Moi ma premiere liste permet de choisir :
-> une classe la seconde -> un eleves la derniere -> le trimestre

Apres j'ai une validation avec bouton submit et selon l'eleves choisi tu à sa photo qui apparait avec plei nd'info.


Tien moi au courant


TCHOU LES TOPAINS
0
beegees
 
Bonjour Tony,

Je dois faire la même chose que toi, 3 listes déroulantes avec année, cours et type.

Penses-tu que je pourrais voir ton code ?

Merci d'avance.

beegees
0
Moaaaa
 
Salut Tony,

Je suis à peu près sur le même problème que toi et ça fait un moment que je tourne en rond... Pour expliquer en deux mots, j'ai une liste déroulante dans un formulaire qui va checker dans ma base de données.

L'acquisition des données fonctionne, le seul problème que je rencontre, c'est si je laisse des champs qui ne devraient pas être vides. A ce moment-là, je retourne le formulaire pseudo-complété en lui indiquant que les champs obligatoires ne sont pas tous remplis.

J'ai mis les variables en variables de session mais si j'appuie deux fois de suite sur le bouton submit pour transmettre le formulaire, il m'efface le contenu du menu déroulant malgré le contrôle du isset().

Aurais-tu une solution?
Voici mon code du formulaire, redis-moi si tu veux le code lors de l'acquisition du formulaire.

P.S. Merci à tous ceux qui pourraient m'aider, cette requête n'est pas exclusive ;-)

[code]
echo '<form method="POST" action="Ajout.php">';
echo '<caption><h2> Données pour le point d\'alimentation </h2></caption>';
echo '<table border =0><tr bgcolor=#ccccc>';
echo '<td width=150>Champ</td>';
echo '<td width=15>Valeur</td></tr>';
echo '<tr><td>Nom du point d\'alimentation: <sup> (*)</sup></td><td align="center"><input type = "text" name="ptAlim" size="25"';
if (isset($_SESSION['ptAlim'])) // Si on a le nom entré
{
echo 'value="' . $_SESSION['ptAlim'] . '"'; // On pré-remplit le champ
}
echo '/></td></tr>';
echo '<tr><td>Remarques: </td><td align="center"><textarea rows="4" name="remarque" size="25" maxlength="100">';
if (isset($_SESSION['remarque'])) // Si on a des remarques entrées
{
echo $_SESSION['remarque']; // On pré-remplit le champ
}
echo '</textarea></td></tr>';

// Affichage des types d'alimentation
echo '<tr><td>Type d\'alimentation: <sup> (*)</sup></td>';
if(isset($_POST['type']) && $_POST['type']!= "" && $_SESSION['type']){
if (isset($_POST['type']) || $_POST['type']!= ""){
$_SESSION['type'] = $champType = $_POST['type'];
}

} else {
$champType = '< Choisissez un type >';
echo '$champtype:' . $champType;
}
// test
if ($_POST['type']!= ""){
echo '$_POST[type]:' . $_POST['type'];
}

$db = new DbTools();
$db->connexionBase();

// Affichage des types depuis la table type_alimentation
$type='<td><select name="type">' ;
$type.='<option value="'.'">'. $champType .'</option>';
$requeteSQL="SELECT DISTINCT type_ali FROM type_alimentation";
$resultat = mysql_query($requeteSQL);
while ($donnees = mysql_fetch_object($resultat))
{
//la concatenation des champs se fait ici
$type.='<option value="'.$donnees->type_ali.'">'.$donnees->type_ali.'</option>';
}
echo $type . '</select></td>';

echo '<tr><td colspan="2" align="left"><input type="submit" value="Envoyer">';
echo '<input type="submit" name="resetValues" value="Remise à zéro" />';
echo '<tr><td><sup> (*)</sup>: champs obligatoires</td></tr>';
echo '</form>';
/code

    
0
charlot63
 
Bonjour,
Comme beaucoup d'autres j'ai ce problème de liaison avec des listes déroulantes.
Si vous voulez bien me transmettre votre solution cela me ferait gagner du temps même si je dois faire quelques adaptations avec le contenu des listes.
Merci et cordialement.

charlophil63@yahoo.fr
0
D@Mp!L
 
Salut Tony,

moi aussi j'ai le même problème.

merci de m'envoyer la solution sur mon e-email: <gras>d.hassanidrissi@gmail.com</gras>

à très bientôt.
0
hiddouche Messages postés 23 Date d'inscription   Statut Membre Dernière intervention  
 
slt je suis entrains de programer une seance pour une ecole je veut que vous m'aider pour la realisation de cette page j'ai 7 liste deroulante en ordre(semestre, jours , heure , salle, prof , groupe , matiere ) je veut realiser cette page a l'aide de ajax/mysq/php mais je trouve du soucis quand la page depasse 2 liste deroulante

merci de m'envoyer votre reponse sur mon email = hiddouche_simo@hotmail.fr
0
Tony85 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention  
 
Ouais sans souci mais le probleme ces que sa fait quand meme 5 page

Une page Connexion.php

Une page Liste.php

Une page ValideListe1.php

Une page ValideListe2.php

Une page ValideListe3.php

Le plus important ce sont tes requetes SQL

Envoi ton mail et je t'envoi tout sa

TCHOU

PS : Moi j'ai un souci avec autre chose mais je vais posé un Post qui s'appelle ( Liste Déroulante + Submit ) essaye d'aller faire un tour tu pourra peut etre m'aidé
0
AMEL01
 
BONJOUR

merci BCP voila mon email
amelchance@hotmail.com
0
débutantephp
 
Bonjour Tony85,

Je souhaite lier trois listes déroulantes avec du PHP, mais je n'y arrive pas.
J'ai pu le faire avec deux listes mais pas avec trois.
Pourrais-tu m'envoyer ta solution stp, à l'adresse suivante:

hazar_2002dz@yahoo.fr

et merci
0
idriss
 
bonjour je souhait faire une tel exemple sur mon projet

alors voici mon mail idriss860137@hotmail.com

merci
0
Tony85 Messages postés 72 Date d'inscription   Statut Membre Dernière intervention  
 
Pense à mettre ton probleme en résolu si les listes on marché pour toi

BYE BYE
0
maguidi
 
Bonjour,
SVP est ce que quelqu'un pourrait m'envoyer le code sur les 3 listes déroulantes liées, moi oci je dois faire 4 listes déroulantes liées et ça fait deux mois que je tourne en rond, j'arrive pas à le faire, je n'ai pu le faire qu'avec deux listes. Je suis vraiment désespéré.
0