PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Forum Général PHP » Problèmes avec la boucle while » 15-02-2015 15:08:04

yani65
Réponses : 0

Bonjour à tous,;
Voici mon code php qui calcule le nombre de minutes travaillées par un enseignant pour une journée( la première) de son travail, sachant que ma table 'mdl_ens1' contient plusieurs journées c'est-à-dire plusieurs dates, pouvez-vous me dire comment modifier mon script afin qui m'effectue le nombre de minutes travaillées pour chaque jour et qu'il me fait la somme totale à la fin SVP?
Merci à l'avance.


<?php

date_default_timezone_set('Africa/Algiers') ;

set_time_limit(0);

$debut= date('H:i:s');

include ('connection.php');
$db=mysql_select_db("test");

$sql_cpt= "SELECT COUNT(id) as k FROM mdl_ens1";
$res_sql_cpt=mysql_query($sql_cpt);
if($res_sql_cpt==FALSE)
{die(mysql_error());
mysql_close();}
$rep_sql_cpt= mysql_fetch_array($res_sql_cpt);
{
mysql_free_result($res_sql_cpt);
$k=$rep_sql_cpt['k'];
echo ' nbr= '.$k.'<br>';

}
// connexion à la BDD

// REQUETE
$sql_sel= "SELECT heur_min_sec,date,mois,jour,heure,minute  FROM mdl_ens1";
$res_sql_sel=mysql_query($sql_sel) or die(mysql_error());

// Creation du tableau
$tab=array();
while ($line_sql_sel= mysql_fetch_array($res_sql_sel))
{
   $tab[]=$line_sql_sel["heur_min_sec"];
   $date[]=$line_sql_sel["date"];
   $mois[]= $line_sql_sel["mois"];
   $jour[]= $line_sql_sel["jour"];
   $heure[]= $line_sql_sel["heure"];
   $minute[]= $line_sql_sel["minute"];

}
mysql_close();  
   
    $i=-1;
    $j=0;
   while ($i++<$k-1)  
   {
   echo $i .'<br>';
   
if (($mois[$i]!=$mois[$i+1]) OR ($jour[$i]!=$jour[$i+1]))
     {
            break;
     }

    {
           $sous[$i]=(($heure[$i+1]*60)+($minute[$i+1]))-(($heure[$i]*60)+($minute[$i]));
           echo $sous[$i].'<br>';
           $som[$j]=$som[$j]+$sous[$i];
           echo $som[$j].'<br>';
    }
    }
?>

#3 Forum Général PHP » Faire la différence entre deux temps » 01-02-2015 15:07:10

yani65
Réponses : 2

Bonjour à tous,
Y a t-il une fonction php me permettant de calculer le différence entre deux temps?

Exemple: t1=08:15, t2=10:20 ,t2-t1 =2 (deux) heures et 5 minutes.



Merci d'avance.

#5 Forum Général PHP » Soustraire des valeurs d'un tableau » 15-01-2015 14:30:33

yani65
Réponses : 2

Bonjour à tous;

voila mon tableau qui représente des valeurs comme ceci:


//Requête
$sql_sel= "SELECT DISTINCT time  FROM extraire";
$res_sql_sel=mysql_query($sql_sel) or die(mysql_error());

// Creation du tableau
$tab=array();
while ($line_sql_sel= mysql_fetch_array($res_sql_sel)) {
   $tab[]=$line_sql_sel["time"];
}

// boucle sur le tableau
 foreach ($tab as $cle=>$temps){
   echo "<br> temps numéro ".$cle." : " .$temps;
}
 

Pouvez-vous me dire comment effectuer la différence entre ses valeurs prises deux à deux puis faire la somme de ces dernières SVP? genre Di=((Ti+1)-Ti) puis somme=Di+(Di+1)+(Di+2)+.............etc.


Merci d'avance.

#6 Re : Forum Général PHP » manipulation des champs d'une table MYSQL » 13-01-2015 18:01:07

Ce n'est pas moi qui a créé la table, elle  est créée automatiquement dans la base de donnée de la plate-forme d'enseignement à distance "moodle", elle s'appelle mdl_log.
Le champ time est de type BIGINT, j'ai essayé de le changer en DATETIME  mais je n'arrive pas.
voici le script que j'ai écris , le résultat de son exécution s'affiche correctement sur le navigateur, mais dans phpmyadmin , je ne vois pas de changement,surement , il me manque quelque chose dans le script et comme je suis débutante en php alors je ne sais pas quoi?

 include ('connection.php');

$db=mysql_select_db("moodle");

$sql_sel= "SELECT DISTINCT time  FROM mdl_log";
$res_sql_sel=mysql_query($sql_sel);
if($res_sql_sel==FALSE)
{die(mysql_error());
mysql_close();}

while ($line_sql_sel= mysql_fetch_array($res_sql_sel))
 {
$temps=$line_sql_sel["time"];
echo date('Y-m-d', $temps).` `.date('H:i:s', $temps).'<br>';

}
 

Merci beaucoup

#7 Re : Forum Général PHP » manipulation des champs d'une table MYSQL » 13-01-2015 18:01:07

Mais je veux avoir toutes les valeurs de champ time sous la forme AAAA-MM-JJ HH:MM:SS , par exemple: 2015-01-10 10:02:45.

#8 Forum Général PHP » manipulation des champs d'une table MYSQL » 13-01-2015 18:01:07

yani65
Réponses : 5

Bonjour à tous;
Voilà le code me permettant de convertir le temps en date sous forme :AAAA-MM-JJ HH:MM:SS:

echo date('Y-m-d', 1392461046).' '.date('H:i:s', 1392461046);

.

Mon problème est que je veux appliquer cette fonction à toutes les valeurs de champs time de ma table MYSQL.
Quelqun pourrait me dire comment procéder SVP?  .
Je vous remercie d'avance.

Pied de page des forums

Propulsé par FluxBB