Analyse de fichier texte et tableau dynamique

abdinfo6 Messages postés 36 Date d'inscription mercredi 17 novembre 2010 Statut Membre Dernière intervention 18 avril 2011 - 23 nov. 2010 à 09:52
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 - 23 nov. 2010 à 11:06
Bonjour,

j'ai des fichiers texte nommés par des dates (ex : 20100604) qui sont créés. Ils sont de la forme :

date|heure|personne|hobby

fichier 20100604 :
20100604|1000|coco|courir
20100604|1200|toto|manger
20100604|1330|coco|dormir
FIN|2300 // fin de journée

fichier 20100605 :
20100604|1000|tutu|jouer
20100604|1200|tutu|manger
20100604|1330|toto|dormir
FIN|2300

J'ai deux input text dans lesquels je rentre une 1ere date (ex 20100604) et une seconde (ex 20100605). J'aimerais qu'il me ressorte par personne le temps qu'elle a passé par activité durant la période donnée (ici du 04/06/2010 au 05/06/2010).

j'ai déja commencé mais je bloque :

 $premiere_date = $_POST[date1];
$seconde_date = $_POST[date2];
$premier_fichier = '/var/www/."".premiere_date'; // analyse du premier fichier

$taille_fic1=filesize("$premier_fichier");


while($premiere_date <= $date2)
{	
if (file_exists("$premier_fichier") && ($taille_fic1 != 0))
{

$tab_fic = file("$premier_fichier");
$nb=count($tab_fic);
$i = 0;
$tab_1 = explode('|', $tab_fic[$i]);
$tab_2 = explode('|', $tab_fic[$i+1]);
$hobby = $tab_1[2];
$personne = $tab_1[3];
$tps_passe = $tab_2[1]-$tab_1[1];		

while ($i < $nb)
{
$i++;
$tab_1 = explode('|', $tab_fic[$i]);
$tab_2 = explode('|', $tab_fic[$i+1]);

if ($hobby == $tab_1[2])
{			
$tps_passe = $tps_passe + ($tab_2[1] - $tab_1[1]);
$personne ... // ajouter la personne à une liste pour connaitre le nombre de personnes qui ont réalisés $hobby

for ($i=0;  $i<$nb; $i++)
{			
$tab_fic1 = explode('|', $tab[$nb]);



}
elseif (substr($premiere_date, 6, 8) < 31)
{
substr($premiere_date, 6, 8) = substr($premiere_date, 6, 8) + 1;
}
elseif (substr($premiere_date, 4, 6) < 12)
{
substr($premiere_date, 6, 8) = 01;			
substr($premiere_date, 4, 6) = substr($premiere_date, 4, 6) + 1;
}
else
{
substr($premiere_date, 6, 8) = 01;
substr($premiere_date, 4, 6) = 01;
substr($premiere_date, 0, 4) = 	substr($premiere_date, 0, 4) + 1;
}


J'aimerais que cela me génère un tableau dynamique par hobby avec la liste des personnes l'ayant effectué (+ le temps passé).

Merci de m'aider
abdinfo6

3 réponses

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
23 nov. 2010 à 10:32
Bonjour

$date2 n'a pas de valeur
while($premiere_date <= $date2)

a++
0
abdinfo6 Messages postés 36 Date d'inscription mercredi 17 novembre 2010 Statut Membre Dernière intervention 18 avril 2011
23 nov. 2010 à 10:47
Oui ca correspond à $seconde_date. Mais ça ne répond pas à mon pb ...


abdinfo6
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
23 nov. 2010 à 11:06
<?php
//$premiere_date = $_POST[date1];
//$seconde_date = $_POST[date2];
$premier_fichier = "20100604.txt"; // analyse du premier fichier
$date2 = "20100605.txt";
$taille_fic1=filesize("$premier_fichier");

dans mon éditeur je vois
tu as beaucoup de parenthèses non fermées

je debug ...
0
Rejoignez-nous