Conseille pour localisés une annonce en php uniquement

Nriem
Invité n'ayant pas de compte PHPfrance

29 oct. 2013, 00:21

Bonjour,

J'ai besoins d'un conseille,

J'ai crée un formulaire (qui gère une annonce), dans se formulaire j'ai besoin de mètre des/un champs qui gère la localisation (région, département, CP),
pour pouvoirs ensuite la rechercher dans un fomulaire de recherche, avec la localisation

Mon problème c'est que je connait pas le Javascript
est pour faire comme la majorités des site, "l'utilisateur sélections le DÉPARTEMENT, le champs RÉGION apparais en fonction de se que l'utilisateur à sélectionner dans département " (en deux mot du Javascript)
D'après mai recherche (sur Google) c'est pas possible de faire sa que en php sans Javascript

Donc il me reste deux solution (d'âpres moi)

1) mètre (dans le formulaire) un champs (select) avec tout les DÉPARTEMENT,
Un 2ème champs avec tout les RÉGION et un 3ème avec tous les CODE POSTAL,
Et pour mon formulaire de recherche refaire la même choses. C'est long, et pas pratique pour l'utilisateur, mai je pense que c'est faisable.

2) mètre seulement un champs (select) avec tout les CODE POSTAL, et pour la recherche l'utilisateur recherchera seulement en fonction du code postal

En deux mot m'a question:
laquelle des deux solution elle serais mieux adapter à un site d'annonce
Ou si vous avais une autre solution (en php) pour localiser les annonce
(vous inquiéter pas c'est pas pour concurrencer leboncoin)

Merci de m'avoir lu, j'espère avoir était claire

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

29 oct. 2013, 00:57

salut,

il est tout à fait possible de ne le faire qu'en php.
Il te faut "juste" valider le formulaire à chaque fois et docn ré afficher le formulaire avec les listes pré sélectionnée.

il y a un exemple de ce que tu veux faire dans la partie tuto faq-tutoriels/listes-liees-avec-html-ja ... 55580.html

Pour le coté ergonomie du site tu peux très bien proposer les deux choix :)

le choix sur le code postale est le plus rapide mais encore faut il le connaitre ;)

Pour commencer il faut correctement modéliser la base afin de ne pas trop d'emmerder.
la structure classique c'est :
- une table région (id :pk, nom)
- une table département(N° : pk attention c'est une chaîne de caractère a cause de la corse ;), nom, FK vers région)
- une table ville : pk, nom, CP (attention le CP est un varchar, toujours a cause de la corse ;) ).

a partir de la une annonce aura une fk vers la table ville.

Pour alimenter tes listes déroulantes tu utilise les trois premières tables ;)

n'oublie pas de bien indexer les colonnes sur lesquelles tu fera des recherches pour que cela ne soit pas trop lent.


@+
Il en faut peu pour être heureux ......

Nriem
Invité n'ayant pas de compte PHPfrance

29 oct. 2013, 04:32

Merci pour ta réponse (et tai précision =D>)

Le lien avec le tuto, d'après se que j'ai vue y'a pas que du PHP mai aussi du JAVASCRIPT :roll: (c'est d'ailleurs écrit dans le titre)
Je peu l'adapter à mon code mai j'ai pas envie de faire copier coller bêtement puisque je conner pas le Javascript et j'ai pas le temps de l'apprendre #-o (déjà que même en php je suis pas un pro :wink: )

Comment valider un formulaire sans cliquer sur le bouton valider ? et si tous les champs du formulaire son pas saisi (dans mon formulaire) on peu pas valider le formulaire, a moine de mètre c'est sélect à la fin du formulaire mai bon.....

Donc je pense que (pour mon cas) la 2ème solution avec un seul sélect de CODE POSTAL c'est la meilleur non?
Je peu trouver tout les code postal de la France sur notre ami Google non?
D'ailleurs je me demande pour quoi y'a tellement besoin du département région dans la majorité des site web, alors que un code postal (avec la ville si besoin) suffit non?

Fk c'est un style de jointure ? (Te prend pas la tête à m'expliquer je chercherez sur Google :wink: )

Merci encore

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

29 oct. 2013, 11:46

Pour faire simple :
- si tu ne veux pas d'action st un bouton (genre tu commence a taper le cp et tu as une liste qui s'affiche. Cela se fai en JS.
Il existe des librairies / framework comme JQuery (+JQuery ui) ou extjs qui te permette de le faire plus ou moins simplement.
Si je t'ai proposé ce tuto c'est qu'il peux répondre a tes questions et que, même si je n'aime pas ça, le JS est de plus en plus prépondérant dans le développement web). Et ceci a l'encontre de l'accessibilité...

Saisir le code postal est une solution mais cela ne te dispense pas d'avoir les départements et régions pour te permettre de fournir des annonces dans le département ou la régions autour de la ville ciblée (sinon c'est pas gagné de trouver un truc ;) ).

FK : foreign key ou clef étrangère en français c'est ce qui sert a réaliser une jointure.

Dernière chose essai de te relire et de faire un petit effort de syntaxe car c'est pas simple a lire tes messages.

@+
Il en faut peu pour être heureux ......

Nriem
Invité n'ayant pas de compte PHPfrance

30 oct. 2013, 05:38

Ok, merci

(Désoler je parle pas nickel français)

A+

Eléphant du PHP | 372 Messages

30 oct. 2013, 12:18

je suis sur un site d'annonces également, pour les codes postaux
Tu peut passer par du jquery
cette adresse t'aidera surementhttp://x-zolezzi.developpez.com/tutorie ... ompletion/

Mammouth du PHP | 2278 Messages

30 oct. 2013, 14:30

Je vais intervenir modérément:
Pourquoi ne pas demander à l'utilisateur de taper le code postal, vérifier qu'il est vraisemblable (avec les deux premiers chiffres) et enchaîner sur les autres informations:

http://codespostaux.online.fr/?code_postal est assez intéressant...
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Nriem
Invité n'ayant pas de compte PHPfrance

30 oct. 2013, 23:43

Merci pour ta réponse "blinz"

Comme j'ai dit plus haut, je connais pas le Javascript et encor moin jQuery, (un framework JavaScript).
Même si c'est un tuto bien expliquer à priori, j'ai pas envie de copier coller bêtement.
Merci qu'en même :wink:

Merci également "Sirakawa"

C'est se que j'ai penser faire, de proposer un champ text (et pas un sélect) avec une regex pour un code postale,
Et (peu-être) aussi metre un 2ème champ text pour la ville (sans trop de vérification à priori),
Et la même choses pour le formulaire de rechech

Si vous avais (encore) des conseille n'hésitez pas ! =D>

Merci d'avance