Comparaison variable avec fichier texte (PHP)
Résolu
Nonow
-
Yvan64 Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Yvan64 Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici j'ai un petit soucis. Je dispose d'une variable dont la valeur est un code pris dans une liste déroulante.
Dans un fichier texte je dispose de 250 autres codes différents mais commencant toujours par les codes dde la liste déroulante.
Exemple : CODES LISTE DEROULANTE
C0002
C0003
C000Y
CODES FICHIER TEXTE
C0002JYU
C0003KI7
C000YGUY
Le problème est de savoir comment je peux faire pour extraire les lignes du fichiers texte qui commence par mon code récupéré par ma variable?
J'espere que je suis pas trop compliqué.
Merci à vous
Voici j'ai un petit soucis. Je dispose d'une variable dont la valeur est un code pris dans une liste déroulante.
Dans un fichier texte je dispose de 250 autres codes différents mais commencant toujours par les codes dde la liste déroulante.
Exemple : CODES LISTE DEROULANTE
C0002
C0003
C000Y
CODES FICHIER TEXTE
C0002JYU
C0003KI7
C000YGUY
Le problème est de savoir comment je peux faire pour extraire les lignes du fichiers texte qui commence par mon code récupéré par ma variable?
J'espere que je suis pas trop compliqué.
Merci à vous
A voir également:
- Comparaison variable avec fichier texte (PHP)
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
13 réponses
Salut !
Tu peux utiliser la fonction strstr("la_chaine", "ce que tu cherches");
Exemple strstr("C0002JYU", "C0002");
retourne C0002JYU
fonction strstr()=> http://fr3.php.net/strstr
Tu peux utiliser la fonction strstr("la_chaine", "ce que tu cherches");
Exemple strstr("C0002JYU", "C0002");
retourne C0002JYU
fonction strstr()=> http://fr3.php.net/strstr
Voila un exemple (ce que j'ai vraiment):
FICHIER TEXTE
diplomes/D0000000242S0000400000000.png
diplomes/D0000000242S0000800000000.png
diplomes/D0005394790S0000400000000.png
diplomes/D0005394790S0000800000000.png
Code issue de la liste :
D0000000242S
Je veux en fait qu'il m'analyse le fichier en intégral avec le code issue de la liste et qu'il me retourne la liste de ce qu'il a trouvé. avec cet exemple je voudrais:
$variable1 = diplomes/D0000000242S0000400000000.png
$variable2 = diplomes/D0000000242S0000800000000.png
PS: Le fichier texte faire 284 lignes
FICHIER TEXTE
diplomes/D0000000242S0000400000000.png
diplomes/D0000000242S0000800000000.png
diplomes/D0005394790S0000400000000.png
diplomes/D0005394790S0000800000000.png
Code issue de la liste :
D0000000242S
Je veux en fait qu'il m'analyse le fichier en intégral avec le code issue de la liste et qu'il me retourne la liste de ce qu'il a trouvé. avec cet exemple je voudrais:
$variable1 = diplomes/D0000000242S0000400000000.png
$variable2 = diplomes/D0000000242S0000800000000.png
PS: Le fichier texte faire 284 lignes
$element_liste = "D0000000242S"; $fichier = fopen("file.txt", "r"); if ($fichier) //si la lecture s'est bien déroulée { //tanqu'on est pas à la fin du fichier while (!feof($fichier)) { $ligne = fgets($fichier, 4096); //lit ligne par ligne 4096 octets if(strstr($ligne, $element_liste)) echo $ligne; } fclose($fichier); }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ca marche ahmet0851 !! ^ ^
Mais un autre truc, est ce que c'est possible de mettre le résultat de chaques lignes trouvées dans des variables différentes ?
Mais un autre truc, est ce que c'est possible de mettre le résultat de chaques lignes trouvées dans des variables différentes ?
Oui un tableau par exemple
<?php $i=0; $element_liste = "D0000000242S"; $fichier = fopen("file.txt", "r"); if ($fichier) //si la lecture s'est bien déroulée { //tanqu'on est pas à la fin du fichier while (!feof($fichier)) { $ligne = fgets($fichier, 4096); //lit ligne par ligne 4096 octets if(strstr($ligne, $element_liste)) { $resultat[$i] = $ligne; $i++; } } fclose($fichier); } //j'affiche for($i=0; $i<count($resultat); $i++) echo "<B>Résultat numéro $i : </B>".$resultat[$i]."<br/>"; ?>
Merci beaucoup ahmet0851, ca marche impécable et c'est tout à fait ce que je voulais ^^
Encore merci ;)
Encore merci ;)
un dernier petit truc (décidement) lol
Au lieu d'afficher Resultat n°0 : ......
Je voudrais faire un lien (car le résutat obtenu dans $resultat[$i] est un lien vers un fichier). J'ai essayé de faire plein de manip mais j'y arrive pas =S
Au lieu d'afficher Resultat n°0 : ......
Je voudrais faire un lien (car le résutat obtenu dans $resultat[$i] est un lien vers un fichier). J'ai essayé de faire plein de manip mais j'y arrive pas =S
Juste une question, ce que tu demandes c'est les bases en programmation Web et PHP.
Le but du forum n'est pas de te donner les réponses mais t'aider. Je veux bien dépanner mais je ne vais pas faire tout le boulot !
Sais-tu au moins comment fait-on un lien en HTML ? Si oui, dis moi comment tu fais ?
Le but du forum n'est pas de te donner les réponses mais t'aider. Je veux bien dépanner mais je ne vais pas faire tout le boulot !
Sais-tu au moins comment fait-on un lien en HTML ? Si oui, dis moi comment tu fais ?
Escuse, j'avais pas bien lu, regarde comment j'ai fait
<?php
$i=0;
$element_liste = $_POST['sel1'];
$fichier = fopen("diplome2", "r");
if ($fichier) //si la lecture s'est bien déroulée
{
//tanqu'on est pas à la fin du fichier
while (!feof($fichier))
{
$ligne = fgets($fichier, 4096); //lit ligne par ligne 4096 octets
if(strstr($ligne, $element_liste))
{
$resultat[$i] = $ligne;
$i++;
}
}
fclose($fichier);
}
//j'affiche
for($i=0; $i<count($resultat); $i++)
echo "<B>Résultat numéro $i : </B>""<a href='http://".$resultat[$i]."'>Emploi du temps de la semaine x</a><br>""<br/>";
?>
<?php
$i=0;
$element_liste = $_POST['sel1'];
$fichier = fopen("diplome2", "r");
if ($fichier) //si la lecture s'est bien déroulée
{
//tanqu'on est pas à la fin du fichier
while (!feof($fichier))
{
$ligne = fgets($fichier, 4096); //lit ligne par ligne 4096 octets
if(strstr($ligne, $element_liste))
{
$resultat[$i] = $ligne;
$i++;
}
}
fclose($fichier);
}
//j'affiche
for($i=0; $i<count($resultat); $i++)
echo "<B>Résultat numéro $i : </B>""<a href='http://".$resultat[$i]."'>Emploi du temps de la semaine x</a><br>""<br/>";
?>
Presque.
Ton lien donnes http://diplomes/D0000000242S0000400000000.png
Je pense que ton dossier est à la racine du site genre www.monsite.fr/diplomes
donc le lien est https://www.pagesjaunes.fr/
Soit tu enlèves ton http:// ou soit tu mets le site en dur :
Ton lien donnes http://diplomes/D0000000242S0000400000000.png
Je pense que ton dossier est à la racine du site genre www.monsite.fr/diplomes
donc le lien est https://www.pagesjaunes.fr/
Soit tu enlèves ton http:// ou soit tu mets le site en dur :
echo "<B>Résultat numéro $i : </B><a href='".$resultat[$i]."'>Emploi du temps de la semaine x</a><br><br/>"; ou echo "<B>Résultat numéro $i : </B><a href='http://www.monsite.fr/".$resultat[$i]."'>Emploi du temps de la semaine x</a><br><br/>";