|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : avril 2005 Messages : 70 ![]() |
Bonjour.
Mais qu'est-ce donc que ce titre me direz-vous ? Surtout qu'il existe énormément de sujets sur la question dans le forum et sur d'autres sites. Sans parler des tutos, eux aussi nombreux. En fait mon problème est complexe... du moins pour moi. J'ai un fichier source assez volumineux (entre 20 et 30 Mo) que je parse. Je stocke les données dans différents tableaux. Ma première liste contient la région, la seconde le département et la troisième la ville. Trois listes déroulantes liées donc. Trois possibilité s'offrent à moi : - en PHP : trop long - en Ajax : idem vu la grosseur du fichier source. - en JS : une seule attente. Le problème : avec le script que j'utilise, j'ai un problème de mémoire. Voir également ce sujet. La solution : créer le code javascript à l'aide de php. A priori rien de compliqué, mais j'aimerai avoir la marche à suivre ou pourquoi pas un lien vers un tuto. MAIS ceci n'est que la première partie du problème. Une fois que cela sera mis en place, il faut savoir que pour générer cette page, je choisis un paramètre que l'on appellera pays. L'idéal pour moi, ce serait CETTE FOIS d'utiliser Ajax lorsque je change ce paramètre. Concrétement : Form 1 = paramètres pays Form 2 = 3 listes déroulantes : région, département, ville Il faut donc que lorsque je change le pays, les 3 listes déroulantes se rechargent. Or ces 3 listes seront construites à partir d'un javascript généré par PHP. Ajax permet de réécrire des valeurs de formulaires, des DIV mais permet-il de réécrire un Javascript ? Voilà, je sais ce que vous allez me dire à savoir que ce que je cherche à faire est trop compliqué. Je vous serez néanmoins reconnaissant de m'aider au moins à répondre à mon premier problème, à savoir générer un javascript de listes liées à partir de php. Merci à vous. |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 797 ![]() |
Salut,
si j'ai bien compris ton problème : Déjà je pense que tu as intérêt à mettre tes données en base de données une bonne fois pour toute plutôt que de saturer la mémoire de ton serveur à chaque fois. S'il y a pas moyen, il faudrait au moins découper tes fichiers sources et en utilisant une arborescence de répertoires par exemple. Ensuite tu fais ça en PHP pur ou en Ajax c'est pas le problème (avec ou sans rechargement de page). Le problème c'est que tu construit toute ta liste en JS, en général il faut construire que la branche sélectionné de l'arbre. Concrètement en PHP sans JS : - tu passes la variable de ton pays en post/get - tu récupères ta liste de régions associées au pays sélectionné sur le serveur (dans la BDD ou dans ton fichier nommé nomPays-region.txt) - tu crées ton select de régions associées au pays - tu passes les 2 variables pays, region - tu récupères ta liste de départements associés à la région sur le serveur - tu crées tes select de pays, régions, départements - etc. C'est juste un exemple car c'est typiquement le type de problème où Ajax devient intéressant. A mon avis il faut que tu oublies le script JS que tu utilises sur ce coup-là (ou alors ne lui fournir que les listes nécessaires, pas toutes les données) mais ce n'est pas difficile de créer des select depuis une BDD ou fichier.
__________________
Vive les roues en pierre |
|
|
00
|
|
|
#3 |
![]() ![]() Inscription : janvier 2003 Messages : 2 018 ![]() |
Bonjour,
Tu peux voir du coté de mon source : Listes liées avec AJAX et PHP Mais 30 Mo de données je ne vois pas l'interet de charger tout ça. Tu devrais déjà faire un premier select sur la région, aller à la page suivante et te servir de mon code pour faire tes select de departements et de villes Et comme le disait Djakisback, mets tout en base de données ce sera plus facile à manipuler
__________________
N1bus Modérateur Web / PHP Aucune demande technique ne sera traitée par MP . Merci PHP/GD : Génération d'un code-barre Code 39 FCKEditor : Modifier la largeur des listes déroulantes PHP/e-Commerce : Installation d'une solution de paiement en ligne SIPS-ATOS |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com