eviter la redondance

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : eviter la redondance

par béka » 24 mai 2006, 11:09

d'accord très bien, ben je vais attaquer ca à partir de cet après midi
Merci pour votre aide et vos conseils

par Tessai » 24 mai 2006, 11:07

ça dépendra de tes requetes SQL et de la facon dont tu as structuré tes tables.

Au niveau SQL tu devras jongler avec les INNER JOIN
Au niveau des tables tu dois en créer selon l'arborescence que tu souhaites proposer

table_region
table_fonction
table_fonction_secteur
table_fonction_experience
...

Et c'est là qu'intervient tes requetes SQL, il faudra faire des INNER JOIN en cascade pour avoir accès aux infos de chaque table.
SELECT region_nom, fonction_nom, fonction_secteur_nom, fonction_experience_nom from
FROM table_region
INNER JOIN table_fonction ON table_region.id_fonction = table_fonction.id_fonction
INNER JOIN table_fonction_secteur ON table_region.id_secteur = table_fonction_secteur.id_secteur
....

par béka » 24 mai 2006, 10:56

masi cela va dépendre de mes requetes sql c'est ca si je comprends bien?
parce que j'offre auss la possibilité de consulter des offres par région
donc là, elle sont bien déterminées mes régions.

par Tessai » 24 mai 2006, 10:23

C'est un peu de travail de ta part mais il faudrait recenser un maximum de catégorie que tu soumets à ceux qui veulent mettre l'offre online.

Ca risque de rajouter un nombre plus important de table aussi et complexifier les requetes SQL mais c'est à ce prix.

Pour bien faire il faudrait que tu te renseignes sur la normalisation des tables dans un BDD, ça t'expliqueras les principes de bases pour construire ta BDD avec plusieurs tables et surtout comment les architecturer.

Le principe en gros, (vraiment en gros), est que tu ne peux pas avoir dans ta BDD des tables avec des champs qui contiennent des valeurs en doublon... et donc structurer tes tables avec les clefs primaires et étrangères en conséquence.

C'est de la théorie pas forcément gaie mais nécessaire...

par béka » 24 mai 2006, 10:18

et comment cela se "degoupillerai" avec des liste déroulante?
je vois pas très bien a quoi ca peut ressembler a la fin, et comment faire.

par mere-teresa » 24 mai 2006, 09:53

Selon ta description, tu pourrais avoir dans ta table :
Commercial
commercial
Commercial Junior
comercial junior vetement
commercial bijoux senior
En ce cas, il te suffit de faire une requête de type : SELECT initule_poste FROM matable WHERE intitule_poste LIKE 'Commercial%' et tu auras toutes les résultats. Cependant, si qqn dépose une annonce Commerciaux junior, cela ne fonctionnera pas...
Donc il te faut réfléchir à ce que tu veux obtenir du côté utilisateur, puis regarder les limitations techniques qui existent.
Selon moi, c'est du côté des requêtes SQL que tu peux modifier tes résultats.

Il existe, techniquement la solution de XmlHTTPRequest (XHR pour les intimes) mais cela demande un niveau de compétences en PHP et en Javascript, que selon tes questions, tu n'as pas encore. Mais, tu as des idées et de la détermination, et c'est comme cela qu'on progresse !

Exemple de recherche avec XHR : http://www.sutekidane.net/labo/php/moteur-de-recherche/
Ici, on tape les premières lettres d'un mot et tout ce qui peut correspondre s'affiche...

par Tessai » 24 mai 2006, 09:51

Si c'est possible mais à nouveau tu dois proposer le choix via une liste déroulante.
Libre à toi ensuite de faire des sous-menus sous forme de lise déroulante qui se modifieront selon le choix de la ppremière...

Liste1 : commercial
Sous-Liste1 : "secteur d'activités"
Sous-Liste1 : "Niveaux de compétences"
...

Sinon comme le dit mere-theresa il faudrait mettre une sorte de moteur de recherche afin de trouver un mot ou une partie de mot dans ta BDD... mais là... c'est un peu plus hard que les listes déroulantes :wink:

par béka » 24 mai 2006, 09:44

je pensais qu'on pouvait regrouper certains intitulé de métiers pour qu'il y en ai qu'un seul qui s'affiche et qui redirige vers tous les 'intitulés des offres correspondant a ce métiers

Mais apparement, ce n'est pas possible.. tant pis pour moi. lol

par mere-teresa » 24 mai 2006, 09:33

Si mais pas à ton niveau !
En fait, si tu comptes refaire l'anpe.fr...bon courage !


En fait, pour aller chercher dans la base tous les postes de commerciaux, il faut faire un moteur de recherche...

par béka » 24 mai 2006, 09:24

ca m'embete quand meme de devoir proposer une liste de métiers. et de ne pas pouvoir trier par rapport à ce que saisissent les entreprises. Il n'y a vraiment pas de solution?

par béka » 23 mai 2006, 13:57

d'accord
bon ben je vais m'y mettre alors

par Tessai » 23 mai 2006, 13:55

Ben si tu veux le même intitulé de poste avec des descriptions différentes... non :wink:

par béka » 23 mai 2006, 13:54

mais avec une seule table, ca ne peut pas coller?

par Tessai » 23 mai 2006, 13:51

Effectivement.

A ce moment là tu pourras faire une requete à partir de 2 tables

Table1

id_table1
id_poste
...

Table_Poste
id_poste
poste_name
poste_description
Select Table1.champ1, Table1.champ2, Table_Poste.poste_name, Table_Poste.poste_desciption from Table1 INNER JOIN Table_Poste ON Table1.id_poste = Table_Poste.id_poste
Et là tu auras ce que tu voudras, libre à toi de le formater comme tu le sens avec toutes ces données à ta disposition

par béka » 23 mai 2006, 10:56

et donc admettons, j'offre la possibilté de choisir le poste a pourvoir dans un menu déroulant. Après ca devient beaucoup plus simple c'est sur, car le probleme se solutionnerai a partir de ma requete SQL non?