Bonjour, je suis novice et j'ai un souci:
j'ai deux pages: page.php et form.php.
page.php est composée de deux listes déroulantes liées (départements et villes).
Si aucun département n'est sélectionné il est impossible de sélectionner de ville (jusqu'ici tout va bien).
Une fois le clique 'OK' de page.php on est redirigé vers form.php pour finaliser le remplissage du formulaire. Or les éléments sélectionnés dans page.php de sont pas gardé par form.php.
j'aimerais donc que les éléments sélectionnés sur page.php soient gardé pour pré-remplir ces même champs sur form.php.
Voici donc le contenu de page.php:
(suite en commentaire)[/i][/i]
j'ai deux pages: page.php et form.php.
page.php est composée de deux listes déroulantes liées (départements et villes).
Si aucun département n'est sélectionné il est impossible de sélectionner de ville (jusqu'ici tout va bien).
Une fois le clique 'OK' de page.php on est redirigé vers form.php pour finaliser le remplissage du formulaire. Or les éléments sélectionnés dans page.php de sont pas gardé par form.php.
j'aimerais donc que les éléments sélectionnés sur page.php soient gardé pour pré-remplir ces même champs sur form.php.
Voici donc le contenu de page.php:
<html>
<body>
<section id="form" class="row">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
<p style="text-align:center;font-size:18px;color:#FFFFFF;margin:15px 0;"><strong>Si ce produit vous intéresse contactez-nous</strong></p>
</div>
<form action="form.php" method="post">
<div class="col-xs-12 col-sm-12 col-md-5 col-lg-5">
<div class="form-group">
<select name="departement" id="departement" class="form-control">
<option value="0">Sélectionnez votre Département</option>
<option value="01">01 - Ain</option>
<option value="02">02 - Aisne</option>
<option value="03">03 - Allier</option>
<option value="04">04 - Alpes-de-Haute-Provence</option>
<option value="05">05 - Hautes-Alpes</option>
<option value="06">06 - Alpes-Maritimes</option>
<option value="07">07 - Ardèche</option>
<option value="08">08 - Ardennes</option>
<option value="09">09 - Ariège</option>
<option value="10">10 - Aube</option>
<option value="11">11 - Aude</option>
<option value="12">12 - Aveyron</option>
<option value="13">13 - Bouches-du-rhône</option>
<option value="14">14 - Calvados</option>
<option value="15">15 - Cantal</option>
<option value="16">16 - Charente</option>
<option value="17">17 - Charente-Maritime</option>
<option value="18">18 - Cher</option>
<option value="19">19 - Corrèze</option>
<option value="21">21 - Côte-d'Or</option>
<option value="22">22 - Côtes-d'Armor</option>
<option value="23">23 - Creuse</option>
<option value="24">24 - Dordogne</option>
<option value="25">25 - Doubs</option>
<option value="26">26 - Drôme</option>
<option value="27">27 - Eure</option>
<option value="28">28 - Eure-et-Loir</option>
<option value="29">29 - Finistère</option>
<option value="30">30 - Gard</option>
<option value="31">31 - Haute-Garonne</option>
<option value="32">32 - Gers</option>
<option value="33">33 - Gironde</option>
<option value="34">34 - Hérault</option>
<option value="35">35 - IIlle-et-Vilaine</option>
<option value="36">36 - Indre</option>
<option value="37">37 - Indre-et-Loire</option>
<option value="38">38 - Isère</option>
<option value="39">39 - Jura</option>
<option value="40">40 - Landes</option>
<option value="41">41 - Loir-et-Cher</option>
<option value="42">42 - Loire</option>
<option value="43">43 - Haute-Loire</option>
<option value="44">44 - Loire-Atlantique</option>
<option value="45">45 - Loiret</option>
<option value="46">46 - Lot</option>
<option value="47">47 - Lot-et-Garonne</option>
<option value="48">48 - Lozère</option>
<option value="49">49 - Maine-et-Loire</option>
<option value="50">50 - Manche</option>
<option value="51">51 - Marne</option>
<option value="52">52 - Haute-Marne</option>
<option value="53">53 - Mayenne</option>
<option value="54">54 - Meurthe-et-Moselle</option>
<option value="55">55 - Meuse</option>
<option value="56">56 - Morbihan</option>
<option value="57">57 - Moselle</option>
<option value="58">58 - Nièvre</option>
<option value="59">59 - Nord</option>
<option value="60">60 - Oise</option>
<option value="61">61 - Orne</option>
<option value="62">62 - Pas-de-Calais</option>
<option value="63">63 - Puy-de-Dôme</option>
<option value="64">64 - Pyrénées-Atlantiques</option>
<option value="65">65 - Haute-Pyrénées</option>
<option value="66">66 - Pyrénées-Orientales</option>
<option value="67">67 - Bas-Rhin</option>
<option value="68">68 - Haut-Rhin</option>
<option value="69">69 - Rhône</option>
<option value="70">70 - Haute-Saône/option>
<option value="71">71 - Saône-et-Loire</option>
<option value="72">72 - Sarthe</option>
<option value="73">73 - Savoie</option>
<option value="74">74 - Haute-Savoie</option>
<option value="75">75 - Paris</option>
<option value="76">76 - Seine-Maritime</option>
<option value="77">77 - Seine-et-Marne</option>
<option value="78">78 - Yvelines</option>
<option value="79">79 - Deux-Sèvres</option>
<option value="80">80 - Somme</option>
<option value="81">81 - Tarn</option>
<option value="82">82 - Tarn-et-Garonne</option>
<option value="83">83 - Var</option>
<option value="84">84 - Vaucluse</option>
<option value="85">85 - Vendée</option>
<option value="86">86 - Vienne</option>
<option value="87">87 - Haute-Vienne</option>
<option value="88">88 - Vosges</option>
<option value="89">89 - Yonne</option>
<option value="90">90 - Territoire de Belfort</option>
<option value="91">91 - Essonne</option>
<option value="92">92 - Hauts-de-Seine</option>
<option value="93">93 - Seine-Saint-Denis</option>
<option value="94">94 - Val-de-Marne</option>
<option value="95">95 - Val-d'Oise</option>
</select>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-5 col-lg-5">
<div class="form-group">
<div id="ville" ></div>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-2 col-lg-2">
<button type="submit" class="btn btn-default width">OK</button>
</div>
</form>
</section>
<!-- /form -->
</main><!-- /primary -->
</div><!-- /wrapper-content -->
<script type="text/javascript">
function generation_liste2(){
var dep={
'01':["Belley","Bourg-en-Bresse","Nantua","Gex"],
'02':["Chateau-Thierry","Laon","Saint-Quentin","Soissons","Vervins"],
'03':["Montluçon","Moulins","Vichy"],
'04':["Barcelonnette","Castellane","Digne-les-Bains","Forcalquier"],
'05':["Briançon","Gap"],
'06':["Grasse","Nice"],
'07':["Largentière","Privas","Tournon-sur-Rhône"],
'08':["Charleville-Mézières","Rethel","Sedan","Vouziers"],
'09':["Foix","Pamiers","Saint-Girons"],
'10':["Bar-sur-Aube","Nogent-sur-Seine","Troyes"],
'11':["Carcassonne","Limoux","Narbonne"],
'12':["Millau","Rodez","Villefranche-de-Rouergue"],
'13':["Aix-en-Provence","Arles","Istres","Marseille"],
'14':["Bayeux","Caen","Lisieux","Vire"],
'15':["Aurillac","Mauriac","Saint-Flour"],
'16':["Angoulême","Cognac","Confolens"],
'17':["Jonzac","La Rochelle","Rochefort","Saint-Jean-d'Angély","Saintes"],
'18':["Bourges","Saint-Amand-Montrond","Vierzon"],
'19':["Brive-la-Gaillarde","Tulle","Ussel"],
'21':["Beaune","Dijon","Montbard"],
'22':["Dinan","Guingamp","Saint-Brieuc","Lannion"],
'23':["Aubusson","Guéret"],
'24':["Bergerac","Nontron","Périgueux","Sarlat-la-Canéda"],
'25':["Besançon","Montbéliard","Pontarlier"],
'26':["Die","Nyons","Valence"],
'27':["Bernay","Évreux","Les Andelys"],
'28':["Chartres","Châteaudun","Dreux","Nogent-le-Rotrou"],
'29':["Brest","Châteaulin","Morlaix","Quimper"],
'30':["Alès","Le Vigan","Nîmes"],
'31':["Muret","Toulouse","Saint-Gaudens"],
'32':["Auch","Condom","Mirande"],
'33':["Arcachon","Blaye","Bordeaux","Langon","Lesparre-Médoc","Libourne"],
'34':["Béziers","Montpellier","Lodève"],
'35':["Fougères","Rennes","Redon","Saint-Malo"],
'36':["Châteauroux","Le Blanc","La Châtre","Issoudun"],
'37':["Chinon","Loches","Tours"],
'38':["Grenoble","La Tour du Pin","Vienne"],
'39':["Dole","Lons-le-Saunier","Saint-Claude"],
'40':["Dax","Mont-de-Marsan"],
'41':["Blois","Romorantin-Lanthenay","Vendôme"],
'42':["Montbrison","Roanne","Saint-étienne"],
'43':["Brioude","Le Puy-en-Velay","Yssingeaux"],
'44':["Ancenis","Châteaubriant","Nantes","Saint-Nazaire"],
'45':["Montargis","Orléans","Pithiviers"],
'46':["Cahors","Figeac","Gourdon"],
'47':["Agen","Marmande","Nérac","Villeneuve-sur-Lot"],
'48':["Florac","Mende"],
'49':["Angers","Cholet","Saumur","Segré"],
'50':["Avranches","Cherbourg-Octevillet","Coutances","Saint-Lô"],
'51':["Châlons-en-Champagne","épernay","Reims","Sainte-Menebould","Vitry-le-François"],
'52':["Chaumont","Langres","Saint-Dizier"],
'53':["Château-Gontier","Laval","Mayenne"],
'54':["Briey","Lunéville","Nancy","Toul"],
'55':["Bar-le-Duc","Commercy","Verdun"],
'56':["Lorient","Pontivy","Vannes"],
'57':["Boulay-Moselle","Château-Salins","Forbach","Metz","Sarrebourg","Sarreguemines","Thionville"],
'58':["Château-Chinon","Clamecy","Cosne-Cours-sur-Loireh","Nevers"],
'59':["Avesnes-sur-Helpe","Cambrai","Dunkerque","Douai","Lille","Valenciennes"],
'60':["Beauvais","Clermont","Compiègne","Senlis"],
'61':["Alençon","Argentan","Mortagne-au-Perche"],
'62':["Arras","Béthune","Boulogne-sur-Mer","Calais","Lens","Montreuil-sur-Mer","Saint-Omer"],
'63':["Ambert","Clermont-Ferrand","Issoire","Riom","Thiers"],
'64':["Bayonne","Oloron-Sainte-Marie","Pau"],
'65':["Argelès-Gazost","Bagnères-de-Bigorre","Tarbes"],
'66':["Céret","Perpignan","Prades"],
'67':["Haguenau","Molsheim","Saverne","Sélestat","Strasbourg","Wissembourg"],
'68':["Altkirch","Colmar","Guebwiller","Mulhouse","Ribeauville","Thann"],
'69':["Lyon","Villefranche-sur-Saône"],
'70':["Lure","Vesoul"],
'71':["Autun","Chalon-sur-Saône","Charolles","Louhans","Mâcon"],
'72':["La Flèche","Le Mans","Mamers"],
'73':["Albertville","Chambéry","Saint-Jean-de-Maurienne"],
'74':["Annecy","Bonneville","Saint-Julien-en-Genevois","Thonon-les-Bains"],
'75':["Paris"],
'76':["Dieppe","Le Havre","Rouen"],
'77':["Fontainebleau","Melun","Meaux","Torcy","Provins"],
'78':["Mantes-la-Jolie","Rambouillet","Saint-Germain-en-Laye","Versailles"],
'79':["Bressuire","Niort","Parthenay"],
'80':["Abbeville","Amiens","Montdidier","Péronne"],
'81':["Albi","Castres"],
'82':["Castelsarrasin","Montauban"],
'83':["Brignoles","Draguignan","Toulon"],
'84':["Avignon","Apt","Carpentras"],
'85':["Fontenay-le-Comte","La Roche-sur-Yon","Les-Sables-d'Olonne"],
'86':["Châtellerault","Montmorillon","Poitiers"],
'87':["Bellac","Limoges","Rochechouart"],
'88':["Épinal","Neufchâteau","Saint-Dié-des-Vosges"],
'89':["Auxerre","Avallon","Sens"],
'90':["Belfort"],
'91':["Évry","Palaiseau","Étampes"],
'92':["Antony","Boulogne-Billancourt","Nanterre"],
'93':["Bobigny","Le Raincy","Saint-Denis"],
'94':["Créteil","L'Haÿ-les-Roses","Nogent-sur-Marne"],
'95':["Argenteuil","Cergy","Pontoise","Sarcelles"]
},
choix=document.getElementById('departement').value, // Le d?partement actuellement s?lectionn?e nous permet d'obtenir
tab=(typeof dep[choix]!=='undefined')?dep[choix]:null, // le tableau correspondant
list='',elt,sel,opt,i;
elt=document.getElementById('ville');
while(elt.hasChildNodes())elt.removeChild(elt.lastChild); // Supprime la liste d?roulante
// Nouvelle liste d?roulante
sel=document.createElement('select');
sel.className = "form-control";
// Cr?? et ajoute l'?l?ment vide s?lectionn? par d?faut de la liste d?roulante
opt=document.createElement('option');
opt.setAttribute('value','');
opt.appendChild(document.createTextNode('Selectionnez la ville la plus proche de chez vous'));
sel.appendChild(opt);
// Cr?? et ajoute les ?l?ments de la liste d?roulante
if(tab){
for(i=0;i<tab.length;i++){
opt=document.createElement('option');
opt.setAttribute('value',tab[i]);
opt.appendChild(document.createTextNode(tab[i]));
sel.appendChild(opt);
}
}
elt.appendChild(sel); // Ajoute la liste d?roulante dans le document
sel.disabled=(tab==null); // La d?sactiver si aucun choix n'a ?t? fait
}
window.onload=function(){ // Executer une fois le document charg?
// Associer l'?venement onchange de la balise select
document.getElementById('departement').onchange=generation_liste2;
// Appeler la fonction pour mise ? jour de la deuxième liste
generation_liste2();
};
</script>
</body>
</html>
(suite en commentaire)[/i][/i]