|
|
|
|
Bonjour,
Je voudrais faire un formulaire pour récuperer le numéro de ligne et d'élément d'un texte. C'est à dire, j'ai un .txt et un formulaire HTML avec 2 champs. Donc si l'utilisateur tape 3 dans le premier et 5 dans le deuxième champ, mon PHP doit m'afficher le troisième mot de la cinquième ligne du texte.
Je sais qu'il me faut utiliser file() et peut-être explode mais je ne sais pas si je dois faire une boucle ou une condition, enfin, j'ai essayé plusieurs choses et ça ne marche pas.
Aidez-moi s'il vous plaît ! Pour un expert ça doit être très basic mais pour moi c'est trop dur !
Au-secours !
Configuration: Windows Vista Firefox 3.5.4
Fonction ( à placer entre les balises <HEAD></HEAD> ) :
<?php
function AfficherLigne($Ligne)
{
// Fichier souhaité
$Cible = "lefichier.txt";
// Ouverture du fichier
$Fichier = @fopen($Cible, "r" );
// Si le fichier existe et a pu être ouvert
if ($Fichier)
{
// Tant que $Actuelle n'équivaut pas à $Ligne,
// on boucle en incrémentant $Actuelle de 1
for ($Actuelle=1; $Actuelle <= $Ligne; $Actuelle++)
{
// Attribution de la ligne en cours à $Temporaire
// Tant que la limite définie ou la fin du fichier n'a pas été
// atteinte, la boucle est relancée et $Contenu mis à jour
$Temporaire = fgets($Fichier);
if (empty($Temporaire)) { break; }
else { $Contenu = $Temporaire; }
}
}
// Sinon si le fichier n'existe pas ou n'a pas pu être ouvert
else
{
// Attribution d'un message d'erreur à $Contenu
$Contenu = "Erreur d'ouverture de <em>$Cible</em>";
}
// Fermeture du fichier
@fclose($Fichier);
// Affichage de $Contenu
print $Contenu;
}
?>
Source: http://www.infos-du-net.com/forum/206543-21-lire-deuxieme-ligne-fichier-text Voilà ca c'était pour la ligne... Maintenant il faut chercher le mot dedans... Petite source pour explode... Je pense que c'était un bon début. <?php // Exemple 1 $pizza = "piece1 piece2 piece3 piece4 piece5 piece6"; $pieces = explode(" ", $pizza); echo $pieces[0]; // piece1 echo $pieces[1]; // piece2 ?> Je pense qu'il faudrait faire $mots = explode(" ", $contenu); echo $mots[$valeur]; // valeur entrée pour le x ème mot Et hop je pense que ca devrait marcher... |