A voir également:
- Php tableau et requete utilisateur
- Php tableau et requete utilisateur ✓ - Forum - PHP
- Afficher résultat requête sql php tableau - Forum - PHP
- PHP PDO - résultat requête sous forme de tableau - Forum - Webmaster
- Tableau et requete php/mysql ✓ - Forum - PHP
- [PHP] Resultat de requête dans un tableau ✓ - Forum - PHP
14 réponses
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
déja tu peux simplifier en mettant en un seul array avec index chaine au lieu de numerique
$liste_villes_CP=array( "lons"=>"39000", "dole"=>"39100", "saint-claude"=>"39200", "Lavans"=>"39200" ...);
Posotaz
- Messages postés
- 489
- Date d'inscription
- samedi 23 juin 2007
- Statut
- Membre
- Dernière intervention
- 19 juin 2011
Bonjour Awaba,
Bonjour Alain_42,
Si tu es dans l'impossibilité de simplifier la liste comme le suggère Alain_42 (je suppose que le "choix" de deux listes séparées dépend d'un identifiant indépendant du code postal), tu peux essayer d'y accéder par l'instruction imbriquée suivante :
$liste_CP[$liste_villes_CP["ville"]]
Je n'ai pas testé (ça fait un bon moment que je ne touche plus à du PHP) mais en toute logique si on fait $liste_villes_CP["lons"] ça donne "1" et $liste_CP["1"] donne "39000".
Bonjour Alain_42,
Si tu es dans l'impossibilité de simplifier la liste comme le suggère Alain_42 (je suppose que le "choix" de deux listes séparées dépend d'un identifiant indépendant du code postal), tu peux essayer d'y accéder par l'instruction imbriquée suivante :
$liste_CP[$liste_villes_CP["ville"]]
Je n'ai pas testé (ça fait un bon moment que je ne touche plus à du PHP) mais en toute logique si on fait $liste_villes_CP["lons"] ça donne "1" et $liste_CP["1"] donne "39000".
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
Bonjour,
Merci pour vos réponses.
Je suis obligée de maintenir 2 listes.
J'ai fait une page php que j'ai mis sur mon serveur mais ça ne marche pas : voilà le code
<?php
$liste_CP=array(
"1"=>"39000",
"2"=>"39100",
"3"=>"39200"
...);
$CP_par_ville=array(
"dole"=>"2",
"lons"=>"1",
"saint-claude"=>"3",
Lavans=>"3"
...);
?>
<FORM method="POST" action=" que dois je mettre ???">
J'habite à <input type=text size=30 name=ville>
<input type=submit value=Envoyer>
<input type=hidden name=afficher value=ok>
</FORM>
<?php
echo $liste_CP[$liste_villes_CP["ville"]] ;
?>
Vraiment merci de m'éclairer car je n'ai pas le temps pour l'instant d'apprendre le code php mais j'ai besoin de ce petit bout de code.
Awaba
Merci pour vos réponses.
Je suis obligée de maintenir 2 listes.
J'ai fait une page php que j'ai mis sur mon serveur mais ça ne marche pas : voilà le code
<?php
$liste_CP=array(
"1"=>"39000",
"2"=>"39100",
"3"=>"39200"
...);
$CP_par_ville=array(
"dole"=>"2",
"lons"=>"1",
"saint-claude"=>"3",
Lavans=>"3"
...);
?>
<FORM method="POST" action=" que dois je mettre ???">
J'habite à <input type=text size=30 name=ville>
<input type=submit value=Envoyer>
<input type=hidden name=afficher value=ok>
</FORM>
<?php
echo $liste_CP[$liste_villes_CP["ville"]] ;
?>
Vraiment merci de m'éclairer car je n'ai pas le temps pour l'instant d'apprendre le code php mais j'ai besoin de ce petit bout de code.
Awaba
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
<FORM method="POST" action=" <?php echo $_SERVEUR['PHP_SELF']; ?>">
mais si l'utilisateur ne saisit pas exactement le nom de la ville ???
ton script ne marchera pas
il faudrait que tu proposes une liste déroulante des villes qui sont dans ton array
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
Ah oui, c'est vrai,merci pour la remarque mais comment dois-je faire une liste déroulante ?
Awaba
Awaba
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
C'est encore moi, j'ai trouvé un script en javascript pour réaliser une liste déroulante. Pour cela ça cevrait aller.
Mais par contre, à partir du choix que l'utilisateur fera dans la liste "des villes", je ne sais pas comment faire pour renvoyer à l'utilisateur la réponse?
Merci
Awaba
Mais par contre, à partir du choix que l'utilisateur fera dans la liste "des villes", je ne sais pas comment faire pour renvoyer à l'utilisateur la réponse?
Merci
Awaba
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
Pourquoi en Javascript ??
voilà une solution en php
voilà une solution en php
<?php //initialisation des array $liste_CP=array( "1"=>"39000", "2"=>"39100", "3"=>"39200" ); $CP_par_ville=array( "dole"=>"2", "lons"=>"1", "saint-claude"=>"3", "Lavans"=>"3" ); //le script s'appelle lui meme donc on va recuperer la ville qd on a envoye la page if(isset($_POST['ville'])){$ville=$_POST['ville'];}else{$ville="";} ?> <form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>"> J'habite à: <br /> <select name="ville"> <?php foreach($CP_par_ville as $cle=>$value){ //pour creer la liste on parcours l'array des villes, $cle contient le nom de la ville, $value son num correspondant 1 , 2 ,3 $option= "<option value=\"".$value."\""; if($ville==$value){ $option.="selected"; } //ça c'est pour conserver la selection au reaffichage de la page $option.=">".$cle."</option>"; echo $option; } ?> </select><br /><br /> <input name="envoyer" type="submit" value="Envoyer"> </form> <?php if(isset($_POST['envoyer'])){ //on ne peux afficher ça que qd on a clique sur envoyer echo "Votre code postal: ".$liste_CP[$ville] ; } ?>
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
Merci Alain 42,
Je ne comprends pas, j'ai copié collé ton message et ça ne marche pas , je n'ai rien ...
Que puis-je faire ?
Awaba
Je ne comprends pas, j'ai copié collé ton message et ça ne marche pas , je n'ai rien ...
Que puis-je faire ?
Awaba
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
Je viens de trouver mon erreur, dans la liste des villes oubli d'un =>
J'ai encore un problème, lorsque je clique sur ok , ça ouvre une page de mon site !
ça ne me donne pas le CP ?
Avez-vous une idée ?
Merci...
Awaba
J'ai encore un problème, lorsque je clique sur ok , ça ouvre une page de mon site !
ça ne me donne pas le CP ?
Avez-vous une idée ?
Merci...
Awaba
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
parce que tu as intégré je suppose ce code dans ta page
action="$_SERVER['PHP_SELF']" veut dire appelle le script appelant
donc la page s'appelle elle même c'est normal
et attention à l'initialisation des array
action="$_SERVER['PHP_SELF']" veut dire appelle le script appelant
donc la page s'appelle elle même c'est normal
et attention à l'initialisation des array
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
Alain,
Excuse moi mais je suis plus que débutante , alors pourrais-tu m'expliquer ce que je dois mettre après action et que signifie la remarque "attention à l'initialisation des array ?"
Vraiment merci, je pense que je suis prêt du but !!!
J'ose encore demander un petit coup de pouce, ensuite j'aimerais que l'utilisateur soit redirigé sur une page différente en fonction du CP, est-ce possible ?
Déjà merci pour toutes les précieuses aides que tu m'a apporté.
Bon week end
Awaba
Excuse moi mais je suis plus que débutante , alors pourrais-tu m'expliquer ce que je dois mettre après action et que signifie la remarque "attention à l'initialisation des array ?"
Vraiment merci, je pense que je suis prêt du but !!!
J'ose encore demander un petit coup de pouce, ensuite j'aimerais que l'utilisateur soit redirigé sur une page différente en fonction du CP, est-ce possible ?
Déjà merci pour toutes les précieuses aides que tu m'a apporté.
Bon week end
Awaba
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
donnes moi le nom de la page et le code de cette page dans laquelle tu as intégré le bout de code que je t'ai fait
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
voilà la page :
https://www.eglisejura.com/?p=317
En fait, j'ai copié ton code dans une page php que j'ai chargé dans l'interface du site.
Je ne sais pas si je suis très claire.
https://www.eglisejura.com/?p=317
En fait, j'ai copié ton code dans une page php que j'ai chargé dans l'interface du site.
Je ne sais pas si je suis très claire.
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
et si tu mets dans
ensuite pour ce que tu exposait plus haut
tu veux que selon la ville choisie on n'affiche pas le code postal mais qu'on ouvre une page différente en fonction du code postal ?
<form method="POST" action="?p=317">
ensuite pour ce que tu exposait plus haut
tu veux que selon la ville choisie on n'affiche pas le code postal mais qu'on ouvre une page différente en fonction du code postal ?
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
Super!!!!!!!!!!!! Vraiment merci....Seul je n'y serais pas arrivée ....
Juste un petit truc, parfois, lorsque je choisis une ville dans la liste déroulante, la réponse est bonne mais elle affiche ensuite une autre ville dans la liste ! J'aimerais que la ville choisie reste tant qu'un autre choix n'est fait !
Et j'aimerais enfin écrire la réponse mais que la réponse est un lien sur une autre page. Est-ce que je peux mettre mes liens dans le tableau array, si oui, quelle est la syntaxe ?
Je profite vraiment de tes compétences.... Merci pour tout !!!!
Awaba
Juste un petit truc, parfois, lorsque je choisis une ville dans la liste déroulante, la réponse est bonne mais elle affiche ensuite une autre ville dans la liste ! J'aimerais que la ville choisie reste tant qu'un autre choix n'est fait !
Et j'aimerais enfin écrire la réponse mais que la réponse est un lien sur une autre page. Est-ce que je peux mettre mes liens dans le tableau array, si oui, quelle est la syntaxe ?
Je profite vraiment de tes compétences.... Merci pour tout !!!!
Awaba
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
Oui tu peux mettre tes liens dans un array
exemple:
$aray_liens=array("39600"=>"http://xxxxxxxxx",
"39100"=>"http://....",
etc..
donc en fonction du code postal tu peux aussi afficher un lien
pour le pb de ville qui reste selectionnée c'est du au fait que plusieurs villes ont le même numéro dans l'array $CP_...
alors modifies ainsi:
exemple:
$aray_liens=array("39600"=>"http://xxxxxxxxx",
"39100"=>"http://....",
etc..
donc en fonction du code postal tu peux aussi afficher un lien
pour le pb de ville qui reste selectionnée c'est du au fait que plusieurs villes ont le même numéro dans l'array $CP_...
alors modifies ainsi:
<?php //initialisation des array $liste_CP=array( "1"=>"39000", "2"=>"39100", "3"=>"39200" ); $CP_par_ville=array( "dole"=>"2", "lons"=>"1", "saint-claude"=>"3", "Lavans"=>"3" ); //le script s'appelle lui meme donc on va recuperer la ville qd on a envoye la page if(isset($_POST['ville'])){$ville=$_POST['ville'];}else{$ville="";} ?> <form method="POST" action="?p=317"> J'habite à: <br /> <select name="ville"> <?php foreach($CP_par_ville as $cle=>$value){ //pour creer la liste on parcours l'array des villes, $cle contient le nom de la ville, $value son num correspondant 1 , 2 ,3 $option= "<option value=\"".$cle."\""; if($ville==$value){ $option.="selected"; } //ça c'est pour conserver la selection au reaffichage de la page $option.=">".$cle."</option>"; echo $option; } ?> </select><br /><br /> <input name="envoyer" type="submit" value="Envoyer"> </form> <?php if(isset($_POST['envoyer'])){ //on ne peux afficher ça que qd on a clique sur envoyer echo "Votre code postal: ".$liste_CP[$CP_par_ville[$ville]] ; } ?>
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
En fait, cette fois, après avoir fait envoyer , la liste revient sur la première ville de la liste.
Pour le tableau des liens,une fois que je l'ai rempli, je ne vois pas où je fais appelle au tableau.
Il n'y a qu'un mot en français pour dire : Merci, alors je pourrais le dire en wolof : Dierediev !
Awaba
Pour le tableau des liens,une fois que je l'ai rempli, je ne vois pas où je fais appelle au tableau.
Il n'y a qu'un mot en français pour dire : Merci, alors je pourrais le dire en wolof : Dierediev !
Awaba
Alain_42
- Messages postés
- 5358
- Date d'inscription
- dimanche 3 février 2008
- Statut
- Membre
- Dernière intervention
- 13 février 2017
excuses j'ai fait une petite erreur
mets comme ça:
pour le lien:
mets comme ça:
foreach($CP_par_ville as $cle=>$value){ //pour creer la liste on parcours l'array des villes, $cle contient le nom de la ville, $value son num correspondant 1 , 2 ,3 $option= "<option value=\"".$cle."\""; if($ville==$cle){ $option.="selected"; } //ça c'est pour conserver la selection au reaffichage de la page $option.=">".$cle."</option>\n"; echo $option; }
pour le lien:
if(isset($_POST['envoyer'])){ //on ne peux afficher ça que qd on a clique sur envoyer $code_postal=$liste_CP[$CP_par_ville[$ville]]; echo "Votre code postal: ".$code_postal."<br />"; //si ton array s'appelle $array_cp_lien echo "Pour continuer <a href=\"".$array_cp_lien[$code_postal]."\">cliquer içi</a>"; }
awaba
- Messages postés
- 32
- Date d'inscription
- mercredi 16 avril 2008
- Statut
- Membre
- Dernière intervention
- 22 mars 2010
Eh bien, bravo à toi !!!
Tu m'as permis de réaliser ce que je cherchais. Je vais pouvoir continuer ...
Un grand MERCI.
Peut-être à une autre fois sur le forum.
Bonne soirée et bon dimanche.
Awaba
Tu m'as permis de réaliser ce que je cherchais. Je vais pouvoir continuer ...
Un grand MERCI.
Peut-être à une autre fois sur le forum.
Bonne soirée et bon dimanche.
Awaba