examiner un fichier texte

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 : examiner un fichier texte

Re: examiner un fichier texte

par Invité » 23 juin 2006, 06:27

Bonjour,

Voila j'ai besoin de vos connaissance

J'utilise un formulaire où les gens entre des mots genre (chat - chien - etc...)

Ensuite une fois le formulaire validé je les insère dans un ficier texte avec la commande ci-dessous
//$in2 contenant les mots tapés par l'internaute
$verif = fopen ("/home/xxxx/domains/xxxx/xxxx/xxxx/verif.txt","a+");
fputs ($verif,$in2."\n");
fclose ($verif);
Les données s'inscrive ensuite dans mon ficher texte de la manière suivantes en fontion du nombre de mots entrés

chat
chien - lapin - pigeon
Elephant - hiboux
etc...

ce que j'aimerais ensuite c'est qu'à la soumission d'un nouveau formulaire le fichier texte contenant les mots déjà inséré soit testé et si le mot est déjà présent dedans que cela mette un message d'erreur.

ca je ne sais pas comment faire pour lire les mots dans un fichier
Je sais que je dois <b style="color:black;background-color:#ffff66">utiliser</b> <b style="color:black;background-color:#a0ffff">implode</b> mais je n'arrive pas trop

Quelqu'un pourrait m'aider merci je suis sur que ce n'est pas très dur

merci d'avance

par nikitou » 29 avr. 2006, 15:23

Merci j'ai reussi mais au final je me suis servis de mysql beaucoup plus simple :lol:

Merci pour tout encore

par Ryle » 27 avr. 2006, 12:55

Hello,

Je pense que la solution la plus simple est de lire le fichier et de constituer un tableau avec les différents noms qu'il contient. Il te faut donc ouvrir le fichier (fopen), le parcourir ligne par ligne, et pour chaque ligne mettre les différents mots trouvés dans les cellules d'un tableau (si c'est bien le mot et pas la ligne, il te faudra boucler quand il y en a plusieurs sur une meme ligne pour avoir un seul mot par cellule)

Il te suffit alors d'utiliser la fonction inArray() pour savoir si le mot que tu récupère est déjà présent dans le tableau, te permettant ainsi de gérer l'erreur :)

par zigz4g » 27 avr. 2006, 12:54

Salut.

Au plus simple, tu peux utiliser la fonction file().
<?php
if (isset($_GET['mot'])) {
    $mot = $_GET['mot'];
}
$tab_file = file('mon_fichier.txt');
foreach ($tab_file as $line) {
    if (eregi($mot, $line)) {
        echo 'Trouve.';
    }
    else {
        echo 'Pas trouve.';
    }
}
?>

examiner un fichier texte

par nikitou » 27 avr. 2006, 12:30

Bonjour,

Voila j'ai besoin de vos connaissance

J'utilise un formulaire où les gens entre des mots genre (chat - chien - etc...)

Ensuite une fois le formulaire validé je les insère dans un ficier texte avec la commande ci-dessous
//$in2 contenant les mots tapés par l'internaute
$verif = fopen ("/home/xxxx/domains/xxxx/xxxx/xxxx/verif.txt","a+");
fputs ($verif,$in2."\n");
fclose ($verif);
Les données s'inscrive ensuite dans mon ficher texte de la manière suivantes en fontion du nombre de mots entrés

chat
chien - lapin - pigeon
Elephant - hiboux
etc...

ce que j'aimerais ensuite c'est qu'à la soumission d'un nouveau formulaire le fichier texte contenant les mots déjà inséré soit testé et si le mot est déjà présent dedans que cela mette un message d'erreur.

ca je ne sais pas comment faire pour lire les mots dans un fichier
Je sais que je dois utiliser implode mais je n'arrive pas trop

Quelqu'un pourrait m'aider merci je suis sur que ce n'est pas très dur

merci d'avance