AutoComplétion Code Postal/Ville avec jQuery
:salut:
Xavier ZOLEZZI vous propose son nouvel article : AutoComplétion Code Postal/Ville avec jQuery.
Cet article vous présente étape par étape la mise en place d'une autocomplétion pour les communes françaises et leurs codes postaux.
N'hésitez pas à faire part de vos remarques et commentaires concernant cet article.
:merci: à lui !
Plusieurs autocomplétions sur la même page
Bonjour à tous,
J'ai installé avec succès le script d'autocomplétion détaillé dans l'article, mais je me heurte à deux problèmes...
- Tous les noms de ville comportant un accent renvoient un "null", j'ai pourtant bien mis les champs en UTF8...
- J'aimerais pouvoir réaliser plusieurs fois le script sur une même page (pour fournir, notamment, une adresse de départ, une adresse d'arrivée, celles-ci étant des champs clairement distincts de mon formulaire) sans avoir bien sûr à le recopier bêtement. Y a-t-il une solution pour ce faire? Par exemple en donnant une variable supplémentaire, celle de la partie du formulaire concerné par l'exécution en cours... Mais je ne connais pas la syntaxe à utiliser :-/
Je suis encore débutant. Merci de votre secours!
AutoComplétion Code Postal/Ville
Bonjour
Edit :
Après avoir repris le script cet après midi, j'ai trouvé la réponse, évidente, tellement évidente que je ne l'avais pas vue
Code:
$strQuery = "SELECT CP CodePostal, VILLE Ville FROM autocomplete WHERE ";
doit être remplacé par
Code:
$strQuery = "SELECT CP CodePostal, VILLE Ville FROM cp_autocomplete WHERE ";
Tellement convaincu que le soucis venait de mon incompréhension de la POO, je n'ai même pas vu cette erreur évidente... J'espère au moins que ça pourra servir à quelqu'un d'autre ;)
Je cherche à réaliser ce script très sympa, mais je rencontre un petit soucis.
Mes données sont bien envoyées au script PHP qui construit la requête, mais cette requête n'est pas correcte.
en fin de script, voici ce que me retourne
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| $query->debugDumpParams();
SQL: [115] SELECT CP CodePostal, VILLE Ville FROM autocomplete WHERE CP LIKE :codePostal AND CODEPAYS
= 'FR' LIMIT 0, :maxRows
Params: 2
Key: Name: [11] :codePostal
paramno=-1
name=[11] ":codePostal"
is_param=1
param_type=2
Key: Name: [8] :maxRows
paramno=-1
name=[8] ":maxRows"
is_param=1
param_type=1 |
Que ça soit le CP ou la ville, le like ne prend pas en compte la valeur que j'entre dans le champ. Pourtant, en vérifiant avec firebug, j'ai bien des données envoyées en POST
Code:
codePostal=702&pays=FR&maxRows=10
Je n'y connais pas grand chose en php orienté objet et j'ai donc un peu de mal à comprendre d'où vient le problème.
Aussi, est il normal que la class PHP soit aussi courte ?
Code:
1 2 3 4 5 6
| <?php
class AutoCompletionCPVille {
public $CodePostal;
public $Ville;
}
?> |
Encore une fois, n'y connaissant pas grand chose en POO, j'ai du mal à saisir l'utilité de cette class qui ne semble au final rien retourner, surtout quand on la compare à la class ASP.NET C# qui est plus élaborée. Est il possible qu'il y ai eu un oubli dans le tuto?
Je vais bien entendu continuer à chercher par moi même ce week-end, mais un coup de main ne serait pas de refus ;)
En tout cas merci, ce script une fois en place va vraiment permettre de gagner du temps
Bon week-end
Thomas
renvois "null" pour les villes avec accent
Citation:
Envoyé par
lauxile
- Tous les noms de ville comportant un accent renvoient un "null", j'ai pourtant bien mis les champs en UTF8...
Bonjour,
J'ai aussi ce problème de renvois "null" pour les villes avec accent.
J'ai bien suivi les étapes de NoSmoking pour passer correctement en UTF-8 mais rien à faire...
As-tu la solution?
Trier les villes par ordre alphabétique
Bonsoir à toutes et à tous,
Super cette AutoComplétion.:P
Avant toute chose je tiens à vous signaler que je suis novice.:oops:
J'ai télécharger "Autocomplétion PHP - SQLite" et ça fonctionne bien. J'ai seulement une petite question :
Comment faut-il procéder pour obtenir la liste des communes par ordre alphabétique, après saisie du cp.
Je vous remercie d'avance et bonne soirée.
Si vous obtenez 'null' pour les villes avec accents
Bonjour à tous,
Si vous obtenez la valeur "null" pour toutes les villes avec accents il suffit de modifier la connexion à votre base de données :
Code:
$db = new PDO('mysql:host=votre_hote;dbname=votre_bdd', 'votre_login', 'votre_mdp', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
affichage des 10 premiers résultats
Bon, tout fonctionne bien,sauf....... que les recherches ne m'affichent que les dix premières villes correspondants à un code postal????