aide sur sctructure tableau à partir d'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 : aide sur sctructure tableau à partir d'un fichier texte

par AB » 15 nov. 2008, 11:13

Maintenant, pour faire plus propre, je souhaite supprimer l'extension .txt de mon affichage, est-ce possible et comment ?
$fichier = 'azerty.txt';
echo basename($fichier,'.txt');

par Invité » 12 nov. 2008, 17:07

C'est bon, j'ai trouvé ! :)

index.php

Code : Tout sélectionner

<HTML> <HEAD> <TITLE>Statistiques</TITLE> </HEAD> <BODY> <?php // on liste les fichiers *.txt dans le repertoire courant $table = array(); $table = glob('*.txt'); for ($i=0;$i!=sizeof($table);$i++) // on cree un lien sur chaque valeur en exportant la variable type (nom fichier) echo "<a href='tableau.php?type=".$table[$i]."'>".$table[$i]."</a><br/>"; ?> </BODY> </HTML>
tableau.php

Code : Tout sélectionner

<HTML> <BODY> <?php echo $_GET['type']; ?> <br> <table border> <tr> <th>date</th> <th>ty</th> <th>ac</th> <th>pr</th> <th>te</th> <th>in</th> <th>in-pa</th> <th>in-pr</th> <th>in-va</th> </tr> <?php // on recupere la variable $lignes = file("$type"); // traitement de chaque ligne for ($i=0; $i<count($lignes); $i++) { echo "<tr>"; $statistiques=explode(" ",$lignes[$i]); for ($a=0; $a<count($statistiques); $a++){ echo "<td>".$statistiques[$a]; } echo "</tr>"; } ?> </table> <a href="" onClick="javascript:window.history.go(-1)">Retour</a> </BODY></HTML>
Maintenant, pour faire plus propre, je souhaite supprimer l'extension .txt de mon affichage, est-ce possible et comment ?

par Stefanie » 12 nov. 2008, 13:59

Hello !

voici ce que j'ai réussi à pondre !

Code : Tout sélectionner

<HTML><BODY><table border> <tr> <th>date</th> <th>ty</th> <th>ac</th> <th>pr</th> <th>te</th> <th>in</th> <th>in-pa</th> <th>in-pr</th> <th>in-va</th> </tr> <?php $lignes = file('MONREP/monfichier.txt'); for ($i=0; $i<count($lignes); $i++) { echo "<tr>"; $statistiques=explode(" ",$lignes[$i]); for ($a=0; $a<count($statistiques); $a++){ echo "<td>".$statistiques[$a]; } echo "</tr>"; } ?> </table></BODY></HTML>
Ce que je souhaite maintenant faire, c'est combiner mes deux scripts.

Je veux donc tomber sur une page disposant de tous mes fichiers.txt avec un lien href vers la script 2 qui permet d'intégrer les données dans le tableau.

c'est possible ?

Il suffit de transférer la valeur .$table[$i]. d'un script à l'autre.

par AB » 07 nov. 2008, 13:07

Effectivement c'est une bonne idée. J'ai donné file_get_contents() sans réfléchir parce que j'ai trop l'habitude de l'utiliser mais dans ce cas file() serait certainement plus pratique :wink:

par jojolapine » 07 nov. 2008, 12:50

Si je puis me permettre, peut-être que là la fonction file() sera plus interessante, étant donné qu'elle s'occupe déjà du découpage ligne par ligne...
A voir ;)

par AB » 07 nov. 2008, 12:36

Sur le principe de l'affichage tu peux t'inspirer de ce code (testes-le dans une page isolée)
<?php
$var = '01/11/08 0 1 2 3 4 5 6 7';
$tabvar = explode(' ',$var);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Document sans titre</title>
<style type = "text/css">
.date {
background-color:#FF99CC;
border-right:1px solid black;
border-left:1px solid black;
padding:5px;
display:inline-block;
}
.nombre {
background-color:#EEEEEE;
text-align:center;
padding:5px;
border-right:1px solid black;
display:inline-block;
width: 25px;
}
</style>
</head>

<body>
<div id="conteneur">
<?php foreach ($tabvar as $key => $value) 
	{
	if ($key == 0) 
	echo '<span class = "date">' .$value. '</span>'; 
	else
	echo '<span class = "nombre">' .$value. '</span>';
	}
?>
</div>
</body>
</html>
Pour récupérer le contenu de tes fichiers tu peux t'intéresser à la fonction file_get_contents()

EDIT j'ai fait une structure en div parce que j'ai l'habitude mais tu peux utiliser le même principe en utilisant des tableaux.

par Invité » 07 nov. 2008, 11:16

Alors Stephanie, tu n'as rien pu faire de la proposition de VaN ?
Malheureusement non ! :(

Je n'arrive pas à comprendre comment l'intégrer à mon code.

Mon code me permet de générer une page sur laquelle je dispose de tous mes fichiers .txt avec un lien ahref qui me permet de les consulter.

Ce que je souhaite faire, c'est lors de cette consultation, que la page soit formaté en tableau avec cellule et colonne en html.

Merci à vous.

par AB » 07 nov. 2008, 01:53

Alors Stephanie, tu n'as rien pu faire de la proposition de VaN ?

par VaN » 06 nov. 2008, 20:32

Sans rentrer dans les détails, tu pourrai faire un explode() sur chaque ligne de ton tableau, en recherchant le caractère "espace".

puis avec une boucle, tu formates toutes tes nouvelles variables, pour les insérer dans ton tableau HTML.

aide sur sctructure tableau à partir d'un fichier texte

par Stefanie » 06 nov. 2008, 18:35

Bonjour à tous,

J'ai besoin d'aide sur un script en php. J'ai réussi à faire quelque chose dont je suis satisfaite mais mes connaissances (quasi-nulle) m'empêchent d'aller plus loin.

Je dispose de plusieurs fichiers txt formatés comme ceci :

Code : Tout sélectionner

01/11/08 0 1 2 3 4 5 6 7 02/11/08 0 1 2 3 4 5 6 7 ...
Ils sont situés dans un dossier sur une machine disposant d'un serveur apache.

Voici le bout du code que j'utilise :
<?php
// Lister tous les fichiers du répertoire
$table = array();
$table = glob('mon_repertoire/*.txt');
for ($i=0;$i!=sizeof($table);$i++)
echo "<a href='".$table[$i]."'>".$table[$i]."</a><br/>";
?>
J'obtiens donc la liste de mes fichiers *.txt sur une page avec un lien vers le contenu de chacun des fichiers.

J'aurais besoin de structurer le contenu du fichier dans un tableau html avec ligne entête type :

Code : Tout sélectionner

-------------------------------------------- | date | a | b | c | d | e | f | g | h | -------------------------------------------- |01/11/08| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | |02/11/08| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | --------------------------------------------
Merci à vous, j'espère avoir été clair.

A+

Stef.