Code postal + nom de la ville, Générateur automatique du nom de la ville |
Bienvenue invité ( Connexion | Inscription )
Code postal + nom de la ville, Générateur automatique du nom de la ville |
31 Mar 2009, 01:09
Message
#1
|
|
Ceinture jaune+ OSC Groupe : Membres Messages : 135 Inscrit : 17-June 08 Lieu : Sur un yaucht Membre no 22166 |
Bonjour,
Je souhaiterai générer de manière automatique le nom de la ville lors de la saisie du code postal. Après avoir fait plusieurs recherches sur ce forum je n'ai rien trouvé. Connaissez vous une contribution? J'ai déjà vu plusieur site tourner sous oscommerce avec cette fonction. Cordialement, Pierre Ce message a été modifié par computer - 5 Apr 2009, 00:08. -------------------- Version oscommerce : osCommerce 2.2 build 060817.
Contributions installées : Fancier_invoice_6.2, pollbooth_v2.3, StockTaking Cost 0.3, automatic_thumbnail_for_osc3v1.7, batch-print-center-3.13, country-state-selector, CSS_POP_UP_INSTALL, define_mainpage_v1.3.3_MS2_Fr, dob_dropdown_v1.0c, low stock report 2, master passord mpv1.4, Multiple_Products_Manager_2.5c, order_editor_5_0_61, OSC_Expeditor v2.1 by milerwan, osc_pdf_catalog_2.0.5_1, osCAffiliate v2.7, newsletter subscribers, RSS_News_V1.3, TinyMCE_in_osCommerce, Ultimate_SEO_URLs_v2-2.2e, User Tracking with Admin 1.4.2_1, wishlist, configuration_cache_1_2, Who's Online Enhancement 3.5.4, get_1_free_1.4_1. |
|
31 Mar 2009, 09:09
Message
#2
|
|
Ceinture marron OSC Groupe : Membres Messages : 1448 Inscrit : 12-March 05 Lieu : Chuiche Membre no 5120 |
Ca n'existe pas en francais à ma connaissance mais tu peux adapter ce script:
http://www.asp-php.net/scripts/asp-php/ajax.php?page=1 Sinon tu peux aussi adapter http://addons.oscommerce.com/info/4254 ou http://addons.oscommerce.com/info/3942 Ce message a été modifié par Phocea - 31 Mar 2009, 09:26. |
|
1 Apr 2009, 21:20
Message
#3
|
|
Ceinture bleue OSC Groupe : Membres Messages : 983 Inscrit : 8-April 08 Lieu : strasbourg Membre no 21429 |
Bonsoir,
Alors moi j'ai trouver ce sujet très intéressant et je me suis donc penché sur le sujet. j'ai essayé d'adapter la premier solution proposé par phocéa et voila ou en j'en suis: j'ai télécharger ce fichier: insee.zip j'ai rentrer cette requête dans ma base de donnée: Code # # Structure de la table `villes` # CREATE TABLE villes ( Commune varchar(30) NOT NULL default '', Codepos varchar(5) NOT NULL default '', Departement varchar(30) NOT NULL default '', INSEE varchar(5) NOT NULL default '' ) TYPE=MyISAM; ensuite comme indiquer j'ai créer un fichier import.php qui permet de rentrer le fichier insee.csv dans la nouvel table de la base de donnée Code <? $table = "villes"; $fichier = "insee.csv"; include('includes/application_top.php'); $f = file($fichier); $i=0; mysql_query("DELETE FROM $table"); foreach($f as $ligne) { if($i) { $ligne = addslashes(trim($ligne)); $SQL = "INSERT INTO $table VALUES('".str_replace(";","','",$ligne)."')"; mysql_query($SQL); } else $i++; } @mysql_close(); ?> ensuite j'ai créer un fichier _conn.php: qui permet d'inscrire son login et mot passe ainsi que le nom de la base pour la connection Code <? // Connexion à la base MySQL @mysql_connect("Host MySQL ","User","Mot de passe"); @mysql_select_db("nom de la BDD"); ?> ensuite j'ai créer le fichier ville.php Code <? $table = "villes"; include("_conn.php"); switch($q=@$_GET["q"]) { case "1": // Liste des codes postaux $query = "SELECT DISTINCT Codepos FROM $table" . " WHERE Departement = '".$_POST["champ"]."' ORDER BY 1"; case "2": // Liste des communes if(!@$query) $query = "SELECT Commune,INSEE FROM $table" . " WHERE Codepos = '".$_POST["champ"]."' ORDER BY 1"; echo 'var o = null;'; echo 'var s = document.forms["'.$_POST["form"].'"].elements["'.$_POST["select"].'"];'; echo 's.options.length = 0;'; if($q<2) echo 's.options[s.options.length] = new Option("Choisir","");'; $result = @mysql_query($query); while($r = mysql_fetch_array($result)) echo 's.options[s.options.length] = new Option("'.$r[0].'","'.((@$r[1])?$r[1]:$r[0]).'");'; echo 'update('.$q.');'; break; default: // Liste des départements $liste_dpt = ""; $SQL = "SELECT DISTINCT Departement FROM $table ORDER BY 1"; $res = mysql_query($SQL); while($val = mysql_fetch_array($res)) $liste_dpt .= "<option value=\"".$val[0]."\">".$val[0]."</option>\n"; // Nom de la commune d'après le code INSEE if(@$adresse["INSEE"]) { $SQL = "SELECT Commune FROM $table WHERE INSEE='".$adresse["INSEE"]."'"; $res = mysql_query($SQL); $adresse["Commune"] = mysql_result($res,0,0); } } @mysql_close(); ?> voilà jusqu'ici tout va bien j'ai tranferer tout les fichier sur mon hébergement, importé le fichier insee.csv dans la base de donnée et c'est la que ça se complique j'ai réussis à insérer les champ dans ma page create_account.php mais bien sur ça ne fonctionne pas et c'est la que je vais avoir besoin d'un peut d'aide j'ai fais comme ceci: j'ai remplacé ce code : Code <tr> <td class="main"><?php echo ENTRY_POST_CODE; ?></td> <td class="main"><?php echo tep_draw_input_field('postcode') . ' ' . (tep_not_null(ENTRY_POST_CODE_TEXT) ? '<span class="inputRequirement">' . ENTRY_POST_CODE_TEXT . '</span>': ''); ?></td> </tr> <tr> <td class="main"><?php echo ENTRY_CITY; ?></td> <td class="main"><?php echo tep_draw_input_field('city') . ' ' . (tep_not_null(ENTRY_CITY_TEXT) ? '<span class="inputRequirement">' . ENTRY_CITY_TEXT . '</span>': ''); ?></td> </tr> <?php if (ACCOUNT_STATE == 'true') { ?> <tr> <td class="main"><?php echo ENTRY_STATE; ?></td> <td class="main"> <?php if ($process == true) { if ($entry_state_has_zones == true) { $zones_array = array(); $zones_query = tep_db_query("select zone_name from " . TABLE_ZONES . " where zone_country_id = '" . (int)$country . "' order by zone_name"); while ($zones_values = tep_db_fetch_array($zones_query)) { $zones_array[] = array('id' => $zones_values['zone_name'], 'text' => $zones_values['zone_name']); } echo tep_draw_pull_down_menu('state', $zones_array); } else { echo tep_draw_input_field('state'); } } else { echo tep_draw_input_field('state'); } if (tep_not_null(ENTRY_STATE_TEXT)) echo ' <span class="inputRequirement">' . ENTRY_STATE_TEXT; ?> </td> </tr> <?php } ?> par celui-ci: Code <?php include('ville.php'); ?> <form name="form_selects" id="form_selects" method="POST" onSubmit="return test(this)";> <tr> <td class="main"><?php echo ENTRY_CITY; ?></td> <td class="main"><select class="select1" name="list0" id="list0" onChange="liste(this.form,1,2)"> <option value="">== Choisir ==</option> <?=$liste_dpt?> </select></td> </tr> <tr> <td class="main"><?php echo ENTRY_POST_CODE; ?></td> <td class="main"><select class="select2" name="list1" id="list1" onChange="liste(this.form,2,2)"> </select></td> </tr> <tr> <td class="main"><?php echo ENTRY_STATE; ?></td> <td class="main"><select class="select1" name="list2" id="list2"> </select></td> </tr> </form> plus encore le code java script, je me doutai bien que c'était faux mais j'ai quand même essayé pour testé malheureusement les données ne sont pas pris en compte dans la BDD lors de l'inscription et et j'ai un message d'erreur qui est renvoyé me demandant de remplir les champs "code postale" "ville" "département". Peut être que quelqu'un de compétant passeras par là et pourras m'expliquer comment modifier le code d'affichage de create_account.php pour que tout ça fonctionne merci et bonne soirée a tous. |
|
1 Apr 2009, 22:04
Message
#4
|
|
Ceinture noire OSC Groupe : Modérateurs Messages : 2908 Inscrit : 24-October 04 Lieu : Quimper ( Finistère ) Membre no 3567 |
La base de galichon est sympa mais malheureusement les codes postaux évoluent régulièrement.
Selon un collègue, 200 codes ou villes impactées chaque année. donc bien mais pas le top du top. -------------------- #mosaic {
autodidacte: max; derision: min; ms3: never; occupation: 9999; latitude : 48; longitude : -4.1; competent: none !important; } documentation MS2 / F.A.Q. / Contribes FR / Contribes US |
|
1 Apr 2009, 22:14
Message
#5
|
|
Ceinture marron OSC Groupe : Membres Messages : 1448 Inscrit : 12-March 05 Lieu : Chuiche Membre no 5120 |
Heureusement que nos amis de La Poste sont tj là pour nous donner un coup de main
http://www.laposte.fr/sna/rubrique.php3?id_rubrique=59 "reste plus" qu'a trouver le bon url (http://www.laposte.fr/sna/rubrique.php3?id_rubrique=59&recalcul=oui&&selCritere=CP&txtCP=XXXXX ?), un coup de cURL et c'est parti |
|
1 Apr 2009, 22:29
Message
#6
|
|
Ceinture noire OSC Groupe : Modérateurs Messages : 2908 Inscrit : 24-October 04 Lieu : Quimper ( Finistère ) Membre no 3567 |
attention, celà va finir comme coliposte, ils vont en faire des images ( moi, je dis çà, mais je dis rien !!! )
-------------------- #mosaic {
autodidacte: max; derision: min; ms3: never; occupation: 9999; latitude : 48; longitude : -4.1; competent: none !important; } documentation MS2 / F.A.Q. / Contribes FR / Contribes US |
|
2 Apr 2009, 09:02
Message
#7
|
|
Ceinture jaune+ OSC Groupe : Membres Messages : 121 Inscrit : 22-August 05 Membre no 6864 |
Le sujet est un petit peu moins touchy que les réclamations sur les hors délai...
-------------------- hctad
................... |
|
2 Apr 2009, 09:11
Message
#8
|
|
Ceinture bleue OSC Groupe : Membres Messages : 983 Inscrit : 8-April 08 Lieu : strasbourg Membre no 21429 |
super ton site phocéa c'est vrai qu'avec ta vision ou pourrais finir par en faire une belle contrib de ce bout de code en utilisant le site que tu as proposé comme référence des code postaux en france, dans le style reclamaposte ! (si delete passe par là on a besoin de toi )
sa pourrais vraiment être bien, mais comme je n'est pas les compétences nécessaires à cette modifications je me demandais si vous aviez pas une idée sur ce que j'étais déjà en train de faire au niveau de create_account.php car je ne pense pas être bien loin, le code fonctionne comme je l'ai mis! les codes postaux sont présent et trouve bien les villes correspondante mais bien sur il manque du code pour que les données soit inséré dans la base de donnée parce que moi j'ai tous simplement adapté le code proposé à mon code dans create_account.php sans grande conviction . ps: je suis tombé sur le cul quand j'ai lu que les codes postaux changeait régulièrement là, j'apprends quelques choses. merci mosaic |
|
2 Apr 2009, 10:19
Message
#9
|
|
Ceinture marron OSC Groupe : Membres Messages : 1448 Inscrit : 12-March 05 Lieu : Chuiche Membre no 5120 |
attention, celà va finir comme coliposte, ils vont en faire des images ( moi, je dis çà, mais je dis rien !!! ) Les pauvres Bon par contre, on a quand meme l'embarras du choix en cherchant un peu. Et si la base n'est pas à jours ce n'est pas forcement critique, il suffit de laisser la personne entrer çà à la main D'autre site qui offre cette recherche xxxx://www.fiducial.biz/?NODE_REF=Codes-postaux-INSEE xxxx://www.dcode.fr/?outil=code-postal-insee-communes xxxx://www.linteaux-de-france.com/index_site.htm etc.... Effectivement si Delete passe par là il pourra surement nous pondre le bon appel en cURL avec la regex qui va bien... mais je crois qu'il est retenu par un douanier. La dernière fois que je l'ai appercu, le douanier tiré un lourd et épais rideau derrière lui et enfiler un gant en latex blanc.... |
|
5 Apr 2009, 12:59
Message
#10
|
|
Ceinture jaune+ OSC Groupe : Membres Messages : 135 Inscrit : 17-June 08 Lieu : Sur un yaucht Membre no 22166 |
Ce qui est étonnant c'est que j'ai vu pas mal de boutique tournant sous oscommerce, et avoir cette fonction... pour ma part j'ai encore regardé à la loupe les contributions sur oscommerce.com et je n'ai rien trouvé de semblable.
-------------------- Version oscommerce : osCommerce 2.2 build 060817.
Contributions installées : Fancier_invoice_6.2, pollbooth_v2.3, StockTaking Cost 0.3, automatic_thumbnail_for_osc3v1.7, batch-print-center-3.13, country-state-selector, CSS_POP_UP_INSTALL, define_mainpage_v1.3.3_MS2_Fr, dob_dropdown_v1.0c, low stock report 2, master passord mpv1.4, Multiple_Products_Manager_2.5c, order_editor_5_0_61, OSC_Expeditor v2.1 by milerwan, osc_pdf_catalog_2.0.5_1, osCAffiliate v2.7, newsletter subscribers, RSS_News_V1.3, TinyMCE_in_osCommerce, Ultimate_SEO_URLs_v2-2.2e, User Tracking with Admin 1.4.2_1, wishlist, configuration_cache_1_2, Who's Online Enhancement 3.5.4, get_1_free_1.4_1. |
|
10 Oct 2012, 01:59
Message
#11
|
|
Ceinture jaune OSC Groupe : Membres Messages : 53 Inscrit : 9-November 04 Lieu : Charleroi Membre no 3721 |
Je reprends juste l'idée initiale de audioshop55 sur laquelle je me penche... à priori les lignes suivantes de create_account seraient à commenter:
CODE // if (strlen($postcode) < ENTRY_POSTCODE_MIN_LENGTH) { // $error = true; //$messageStack->add('create_account', ENTRY_POST_CODE_ERROR); //} //if (strlen($city) < ENTRY_CITY_MIN_LENGTH) { // $error = true; // $messageStack->add('create_account', ENTRY_CITY_ERROR); //} à suivre... -------------------- OsCommerce Bootstrap 2.3.4 visible ici >> Account_Balance_V4 >> Admin Notes with french v2.4_1 >> cronemul >> Extra Info to customer page in admin V1 >> extra_fields_v2_1 >> extra_images_v1-61 >> heardabout_1_25 >> mail-manager >> Menu deroulant date naissance Mini_Images_v2.0 >> Minimum_Order_Amount_1_4 >> Master Password 1_4 >> ordercheck >> Product Serial 1_0 >> PDF_Customer_Invoice_v1.0 >> points_rewardsV2.2beta >> RecoverCartSales 230 >> RMA_Returns_2-6 >> Suivi_colissimo >>
|
|
10 Oct 2012, 11:10
Message
#12
|
|
Ceinture noire OSC Groupe : TechDev Messages : 2757 Inscrit : 9-September 08 Lieu : Douai Membre no 22915 |
Bonjour
Ces lignes contrôlent la longueur du code postal donné et du nom de la localité: quoiqu'on fasse, le client devra bien en taper l'un des deux et s'il tape mal, l'alerte reste utile. Pour la base, une recherche simple sur "liste codes postaux france gratuit csv" conduit assez vite sur de nombreux sites fournisssant cette préstation ou donnant une adresse Bons essais ! Chti poupon |
|
10 Oct 2012, 20:52
Message
#13
|
|
Ceinture jaune OSC Groupe : Membres Messages : 53 Inscrit : 9-November 04 Lieu : Charleroi Membre no 3721 |
Pour poursuivre l'idée initiale de audioshop55 sur laquelle je me suis penché et pour l'adapter à OsCommerce personnellement j'ai bien modifié les lignes citées hier de create_account puis une toute petite modif sur ville.php. J'ai remplacé :
CODE case "2": // Liste des communes if(!@$query) $query = "SELECT INSEE,Commune FROM $table" . " WHERE Codepos = '".$_POST["champ"]."' ORDER BY 1"; par CODE case "2": // Liste des communes if(!@$query) $query = "SELECT Commune FROM $table" . " WHERE Codepos = '".$_POST["champ"]."' ORDER BY 1"; ... et à priori ça semble tourner rond...! -------------------- OsCommerce Bootstrap 2.3.4 visible ici >> Account_Balance_V4 >> Admin Notes with french v2.4_1 >> cronemul >> Extra Info to customer page in admin V1 >> extra_fields_v2_1 >> extra_images_v1-61 >> heardabout_1_25 >> mail-manager >> Menu deroulant date naissance Mini_Images_v2.0 >> Minimum_Order_Amount_1_4 >> Master Password 1_4 >> ordercheck >> Product Serial 1_0 >> PDF_Customer_Invoice_v1.0 >> points_rewardsV2.2beta >> RecoverCartSales 230 >> RMA_Returns_2-6 >> Suivi_colissimo >>
|
|
25 Mar 2016, 22:05
Message
#14
|
|
Ceinture jaune+ OSC Groupe : Membres Messages : 97 Inscrit : 25-May 08 Lieu : carcassonne Membre no 21917 |
Bonjour,
Je m'intéresse à la recherche de la ville à partir du code postal suite aux nouvelles règles strict d'expéditor. Par exemple, une ville doit être indiquée comme "ST" et non plus SAINT. Lors de l'importation dans expeditor, c'est maintenant une fiche sur deux que je dois corriger. J'ai donc demandé à colissimo de me proposer un web service ou autre pour avoir la bonne ville bien écrite comme il le faut. (en attendant de mettre l'adresse au bon format). Alors je suis passé d'un 08xx à un 08xx puis à un 02xx. Non rien n'existe pour moi. Je crois pourtant avoir vu des choses pour prestashop, mais bon en php rien. Bref, le sujet date mais cela pourra intéresser quelqu'un peut-être un jour. Finalement, le technicien m'a conseillé de prendre u fichier dans le répertoire d'installation d'expéditor qui contient les correspondances CP/ VILLE. Je n'ai encore rien fait, mais il me suffira de l'importer dans une table de ma base régulièrement pour proposer une list-box pour la ville. Il m'a confirmé qu'il y avait environ 200 changements de code postal par an. Voilou -------------------- Version oscommerce: V2.2 Rc1
Contrib : STS V4.5.8 (Simple Template System), Dynamic Sitemap V4.0, Easy Meta Tag for STS, LightBox 1, visible_contries 1.2b, Agree2Terms, trackingcolissimo+ups1.0, easypopulate, Ultimate_SEO_URLs_v2-2, Mail Validation 2.1a, ot_discount_coupon_codes_3_31, AntiRobotRegistrationValidation-2.9, customers_extra_fields_EXTENDED, Dynamic Sitemap and STS, Featured Products 161 with STS 453 instructions, free shipping by cats v1.5, Mail Validation 2.1a, ot_discount_coupon_codes_3_31, PDF_Customer_Invoice_v1.1 + Add-ons, PRODUCT QUICK EDIT V2.1, Search_Price_Range_Pulldown_Menu_1.1.1, Simple_Down_For_Maintenance, Simple_Visitor_Newsleter_With_HTML_Support-1.0 |
|
Version bas débit | Nous sommes le : 29th March 2024 - 11:59 |
Ce site est déclaré auprès de la commision Nationale de l'Informatique et des Libertés (déclaration n°: 1043896) |