Pages 1 | 2
Résumons l'épisode
précédent : nous avons conçu un script
Php capable d'indexer le contenu d'un fichier HTML référencé
"en dur" au sein du code source. Une table SQL a été
construite,elle se nomme "moteur" et voici pour rappel
les champ qu'elle contient :
- "id", la clef primaire...
- "mot"
- "occurence", stocke le nombre d'apparition du mot dans
le fichier concerné
- "origine" emplacement du fichier concerné
- "titre_page"
Si les trois premiers champs sont évidents,
on peut rappeler l'utilité des deux derniers. Il s'agit pour
le champ "origine" d'indiquer d'où vient le fichier.
Deux fichiers peuvent en effet porter le même nom, il va donc
falloir les dissocier du point de vue de leur arborescence.
Enfin, "titre_page" permettra d'identifier une page lorsqu'elles
seront affichées comme résultats d'une recherche.
Le programme du jour est le suivant :
- Construire une interface rudimentaire afin d'indexer un
fichier plus simplement (c'est à dire sans avoir besoin de
rentrer son nom en dur dans le code source).
- Repérer les mots contenus dans les balises <TITLE></TITLE>
et leur appliquer un poids "+ 10" pour marquer leur importance
par rapport aux autres mots.
- Renseigner le champ "titre" de la table "moteur".
Note : les fonctions Php déjà utilisées lors
du premier tutoriel ne referont pas l'objet ici d'une explication
détaillée. Le code source complet (à ce stade
du développement) sera fourni en fin de tutoriel
Construction de l'interface
Celle-ci doit nous permettre de parcourir l'arborescence
de notre disque et de choisir un fichier à indexer. Cette
solution ne représente toujours pas la panacée mais
elle a le mérite d'être dynamique, c'est un pas en
avant par rapport au script du premier tutoriel qui spécifiait
en dur le nom du fichier à indexer.
Ce type de fonctionnalités se rencontre le plus souvent sur
le web lorsque vous avez à uploader un fichier quelconque,
nous nous inspirons de ce type d'interface.
Schématiquement nous allons désormais dissocier deux
cas dans notre script Php :
Faut-il entamer les traitements Php et indexer le fichier ou afficher
l'interface "parcourir" qui va permettre de choisir le
fichier en question ?
Nous allons procéder de la sorte :
(find_title.php)
if (isset($passtwo))
{
// Traitements Php...
}
else
{
?>
// Tient
en une ligne normalement :
<form
name="browse" action="find_title.php"
method="post"
enctype="multipart/form-data">
<input
type="file" name="nomfichier" size="100">
<input
type="hidden" name="passtwo" value="1">
<input
type="submit" value="Indexer">
</form>
<?
}
Lorsque vous exécutez pour la première
fois ce script, vous avez la possibilité de parcourir votre
disque afin de désigner le fichier à indexer.
Une fois votre choix effectué le nom du fichier choisi apparaît
dans le champ du formulaire. Ce dernier contient une variable de
type "hidden", elle se nomme "passtwo" et a
pour seul intérêt de permettre de détecter que
le formulaire a été posté.
En effet, la page s'auto-envoie les données du formulaire,
comme cela est définit dans le champ "action" de
celui_ci.
Lorsque la page est soumise, le champ de type "hidden"
est détecté, via la fonction isset(),
les traitements Php vont pouvoir commencer.
Pages 1 | 2
|