Serveur d'annonces et de CV
1. Objectif
Le but de cette partie est de faire une démonstration d'un type de service qui pourra être fourni aux utilisateurs futurs de GrAnd Site et non un utilitaire définitif. Comme le site aura pour vocation l'informatique " sociale ", le service choisi sera axé sur l'emploi. Nous allons donc nous pencher sur la réalisation d'un " serveur " qui permettra la gestion d'annonces et de CV.
Notre " serveur " devra pouvoir permettre
à un utilisateur d'effectuer les opérations suivantes :
· dépôt d'une demande d'emploi,
· lecture des offres,
· dépôt de son CV.
Il devra, bien entendu, permettre à une
entreprise de :
· déposer des offres d'emploi,
· lire des demandes,
· lire les CV.
2. Réalisation
Une fois connecté à GrAnd Site, grâce à son navigateur, l'utilisateur aura accès à une page de services (nommée " Portail "). À partir de cette page, il pourra par exemple avoir accès aux pages concernant le Droit, les Formations professionnelles, les Médias, l'Emploi, etc...
En ce qui concerne notre service, il s'agit donc de l'Emploi. Une fois sur la page concernant l'emploi, l'utilisateur aura le choix entre une liste de lien vers des sites voués à l'emploi (ANPE : www.anpe.fr, Initiatives Emploi : www.init-emploi.tm.fr, A.P.R. : www.netpage.tm.fr/apr,etc…), et les services que nous venons de détailler.
a) Opérations préliminaires
Avant de commencer à développer les pages permettant l'accès aux demandes et offres d'emploi, nous devons tout d'abord créer les tables de la base de données MySQL qui contiendront les annonces et les CV. La première chose est de créer la base de données Petites-Annonces qui va contenir les tables Demandes_Emploi, Offres_Emploi, CV.
L'organisation de cette base est très simple
:
· Offres_Emploi contient le nom et l'adresse de l'entreprise émettant
l'offre, la personne à contacter, son téléphone, son fax et son e-mail, la date
de l'émission de l'annonce, le domaine, le type de contrat, le salaire, la location
de l'entreprise (département) et enfin l'annonce.
· Demandes_Emploi contiendra les nom, prénom, adresse, téléphone et l'e-mail
du demandeur, le domaine, la location et le type de contrat recherché suivis
de l'annonce.
· CV contiendra la plupart des informations contenues dans un CV standard.
Les pages permettant la manipulation de ces annonces utilisent le PHP3 pour accéder à la base de données MySQL.
b) Dépôt des offres, des demandes d'emploi et des CV
L'accès aux formulaires concernant respectivement
les offres, les demandes d'emploi et les CV, se fera par un "clic" dans la partie
droite des deux premières colonnes de la page. Comme nous venons de le laisser
entendre, la saisie des offres se fait par l'intermédiaire de formulaires en
HTML. Ces formulaires contiennent les champs correspondant aux entrées dans
leurs tables respectives.
Une fois le formulaire validé (par le bouton SUBMIT " Envoyer "), on fait appel
à l'un des trois scripts pa-test-formulaire-demande.php3, pa-test-formulaire-offre.php3
ou pa-test-formulaire-cv.php3 suivant qu'il s'agisse d'une saisie d'offre,
d'une demande ou d'un CV. Ces scripts (identiques, vérifient que tous les champs
obligatoires sont bien remplis ; si c'est le cas ils soumettent alors une requête
SQL à la base pour y entrer les informations du formulaire.
c) Consultation des offres et des demandes d'emploi
La
consultation se fait dans un mode interactif, c'est-à-dire que l'utilisateur
va rechercher les offres ou les demandes selon deux critères de sélection, ceci
pour restreindre une liste éventuellement trop longue : la location et le domaine.
La sélection de ces critères sera faite à partir de deux listes déroulantes
contenues dans les pages pa-emploi-offre.php3 ou pa-emploi-demande.php3.
Bien sûr, l'utilisateur pourra avoir accès à toutes les annonces en sélectionnant
l'item "tout" dans les deux listes. La recherche des annonces sera lancée après
avoir appuyé sur le bouton "Rechercher" du formulaire. La recherche d'annonces
se fait par une requête SQL vers la table correspondante (Demandes_Emploi
ou Offres_Emploi).
Lorsque
l'on valide le formulaire, on va ouvrir à nouveau pa-emploi-offre.php3
ou pa-emploi-demande.php3 pour afficher la liste des annonces obtenues.
En fait, lorsque l'une de ces deux pages est ouverte, une fonction en PHP va
regarder les variables correspondant aux champs du formulaire de cette page
passées dans l'URL.
Si les variables sont toutes les deux nulles, cela veut dire que c'est la première
fois que la page est ouverte ou que l'utilisateur n'a pas sélectionné de critère
dans les deux listes : on n'affichera seulement le formulaire de sélection des
critères. Si l'une des deux variables est nulle : l'utilisateur n'a donné qu'un
seul critère de recherche, on affichera alors le formulaire et un message l'informant
de l'oubli. Sinon (si les variables ne sont pas nulles), on envoie alors une
requête à la base de données en fonction des critères de sélection, puis on
regarde le résultat de la requête pour afficher à la suite du formulaire (pour
une autre recherche éventuelle) la liste des annonces trouvées ou un message
indiquant qu'aucune annonce n'est disponible.
3. Conclusion
Le développement de ce service avait pour
objectif de montrer les possibilités de services pouvant être offerts par le
site, ainsi que quelques -une des qualités du PHP, notamment dans la gestion
de bases de données. Cette première application du PHP ne fait que nous conforter
dans notre choix de langage script. Nous avons ensuite élargit un peu plus le
domaine d'utilisateur de notre " serveur " en lui ajoutant la gestion de " petites
annonces " (achats, ventes, location de maisons, voitures, etc...).
Les pages concernant les " petites annonces " sont accessibles via la rubrique
"Vie pratique" de la page "Portail". La mise en place de ce nouveau service
a nécessité l'ajout d'une table constituée des nom, prénom, adresse, téléphone
et e-mail de l'annonceur, de l'annonce et de la catégorie (location, vente ou
achat ; maison, informatique, voiture…).
La saisie d'une annonce se fait de la même manière que pour les offres ou les
demandes d'emploi. La consultation se fait d'une manière un peu différente puisque
l'on affiche d'abord toutes les rubriques avec le nombre d'annonces leur correspondant
; on clique ensuite sur l'icône représentant la rubrique pour avoir les annonces.
Le chapitre suivant concerne lui aussi le développement Web par l'intermédiaire du PHP et des bases de données, mais il est consacré non plus à une démonstration de services, mais à une application complète : une interface Mail/Web.