Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1296 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [Resolu]Problème de mise en forme de Fichier .txt

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Resolu]Problème de mise en forme de Fichier .txt

n°1889798
thanks33
Posté le 30-05-2009 à 17:53:29  profilanswer
 

Bonjour,
 
Je cherche a traiter un fichier .txt en PHP dynamiquement.
 
 
 
Je reçois un rapport qui ressemble a l'exemple ci-dessous:
 
 
exemple:
 
*.txt : Process OK
 
PHP: Surligné la ligne en vert lors de l'affichage
 
Code utilisé :
 
 
<?php
echo '<pre>';
//lecture intégrale d'un fichier
if($toto =readfile("licence.txt" ))// si le fichier a été lu correctement, affichage du contenu sur le navigateur
{
 
}
else
{
echo "erreur";
}
 
?>
 
Et je voudrai que lors de l'affichage du site le texte se surligne en vert.
Il ne faut pas qu'il y ai intervention humaine, vu que je vais recevoir environ 100 à 150 fichier texte.
 
Et je ne sait pas comment faire.
 
N'hésitez pas a proposer des solution
 
Cordialement


Message édité par thanks33 le 02-06-2009 à 11:47:14
mood
Publicité
Posté le 30-05-2009 à 17:53:29  profilanswer
 

n°1889799
toughzaa
Posté le 30-05-2009 à 17:57:38  profilanswer
 

<?php
echo '<pre>';
//lecture intégrale d'un fichier
if(readfile("licence.txt" )== TRUE)// OU //if(readfile("licence.txt" ))//
{
$toto =readfile("licence.txt" )
echo ('<font color="green"');
$toto =readfile("licence.txt" )
echo $toto;
echo ('</font>');
 
}
else
{
echo "erreur";
}
 
?>

n°1889804
Profil sup​primé
Posté le 30-05-2009 à 18:19:19  answer
 

euh, çà va juste afficher le texte 3 fois [:petrus75]
Mieux vaut utiliser file_get_contents dans ce cas :

Code :
  1. $content = file_get_contents('licence.txt');
  2.  
  3. if(!$content) {
  4.    echo 'Une erreur est survenue';
  5. } else {
  6.    echo '<div style="background-color: green;">' . $content . '</div>';
  7. }

n°1889809
thanks33
Posté le 30-05-2009 à 18:42:22  profilanswer
 

Merci de votre aide.
 
Je pense que je me suis mal exprimé.
 
Mon fichier .txt ressemblera a sa :     Process ... OK
                                                   Process2.... OK
                                                   Process3..... KO
 
Je voudrai que lorsque le Process retourne KO, la ligne soit surlignées en vert.
 
J'ai longtemps cherché sur internet,et j'ai testé plusieurs solution.....
 
Rien a fonctionné  
 
Cordialement

n°1889811
Profil sup​primé
Posté le 30-05-2009 à 18:51:22  answer
 

Code :
  1. $content = file('licence.txt');
  2.  
  3. if(!$content) {
  4.    echo 'Une erreur est survenue';
  5. } else {
  6.    foreach($content as $line) {
  7.        $color = (substr($line, -2) == 'KO') ? 'red' : 'green'; //rouge si KO, vert si OK : tu peux inverser si tu veux    
  8.        echo '<div style="background-color: $color;">' . $line . '</div>';
  9.    }
  10. }


Message édité par Profil supprimé le 30-05-2009 à 18:52:11
n°1889814
thanks33
Posté le 30-05-2009 à 18:56:49  profilanswer
 

merci de ton aide luc@s
 
 
 
Je viens de tester le code :
 

Code :
  1. <?php
  2.       $content = file('licence.txt');
  3.  
  4.      
  5.  
  6.       if(!$content) {
  7.  
  8.          echo 'Une erreur est survenue';
  9.  
  10.       } else {
  11.  
  12.          foreach($content as $line) {
  13.              $color = (substr($line, -2) == 'KO') ? 'red' : 'green'; //rouge si KO, vert si OK : tu peux inverser si tu veux     
  14.  
  15.              echo '<div style="background-color: $color;">' . $line . '</div>';
  16.  
  17.          }
  18.       }
  19.   ?>


 
 
Et mon fichier .txt ressemble a sa :

Code :
  1. Process OK
  2. Process KO
  3. Processss OK
  4. OK


 
 
Voici le rendu du site :
 
 

Code :
  1. Process OK
  2. Process KO
  3. Processss OK
  4. OK


 
 
Il me lit bien le fichier texte mais il ne me sort aucune couleur suivant le OK, KO
 
 
Cordialement


Message édité par thanks33 le 30-05-2009 à 19:09:28
n°1889815
Profil sup​primé
Posté le 30-05-2009 à 19:20:23  answer
 

ah désolé
quel est le code source généré ?

n°1889817
thanks33
Posté le 30-05-2009 à 19:24:46  profilanswer
 

Voici le code source de la page :
 
 

Code :
  1. <div style="background-color: $color;">Process OK
  2. </div><div style="background-color: $color;">
  3. </div><div style="background-color: $color;">Process KO
  4. </div><div style="background-color: $color;">
  5. </div><div style="background-color: $color;">Processss OK
  6. </div><div style="background-color: $color;">OK</div>


 
 
Cordialement


Message édité par thanks33 le 30-05-2009 à 19:25:32
n°1889925
Profil sup​primé
Posté le 31-05-2009 à 16:39:02  answer
 

quel idiot, je me suis fait avoir !
Le code valide est

Code :
  1. $content = file('licence.txt');
  2.  
  3. if(!$content) {
  4.    echo 'Une erreur est survenue';
  5. } else {
  6.    foreach($content as $line) {
  7.        $color = (substr($line, -2) == 'KO') ? 'red' : 'green'; //rouge si KO, vert si OK : tu peux inverser si tu veux    
  8.        echo "<div style=\"background-color: $color;\">$line</div>";
  9.    }
  10. }

n°1889968
thanks33
Posté le 31-05-2009 à 19:39:25  profilanswer
 

Merci pour ta réponse, mais malheureusement, sa surligne toute les lignes en vert
Voici le code source de la page :
 

Code :
  1. <div style="background-color: green;">Process OK
  2. </div><div style="background-color: green;">
  3. </div><div style="background-color: green;">Process KO
  4. </div><div style="background-color: green;">
  5. </div><div style="background-color: green;">Processss OK
  6. </div><div style="background-color: green;">OK</div>


 
Cordialement

mood
Publicité
Posté le 31-05-2009 à 19:39:25  profilanswer
 

n°1890051
Profil sup​primé
Posté le 01-06-2009 à 10:52:31  answer
 

Ok, j'ai compris. C'est à cause des sauts de ligne de file(). Il faut les virer !

Code :
  1. $content = file('licence.txt');
  2.  
  3. if(!$content) {
  4.    echo 'Une erreur est survenue';
  5. } else {
  6.    foreach($content as $line) {
  7.        $color = (substr(rtrim($line), -2) == 'KO') ? 'red' : 'green'; //rouge si KO, vert si OK : tu peux inverser si tu veux    
  8.        echo "<div style=\"background-color: $color;\">$line</div>";
  9.    }
  10. }


Message édité par Profil supprimé le 01-06-2009 à 10:52:53
n°1890093
thanks33
Posté le 01-06-2009 à 14:02:51  profilanswer
 

Merci beaucoup de ton aide, ça marche parfaitement.
 
Je met se topic en résolut
 
Cordialement


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [Resolu]Problème de mise en forme de Fichier .txt

 

Sujets relatifs
probléme multiarrow latexProblème affichage solution
Petit problème avec les cases à cocher !Problème avec les numéros à l'étranger
Problème traitement bouton radioProbleme IE
[resolu]Socket reception de 0[Résolu][PHP] debug de la fonction exec
Pb ecriture dans un fichier csv[vb] problème de boucle avec datagridview
Plus de sujets relatifs à : [Resolu]Problème de mise en forme de Fichier .txt


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR