vinoromano saoule | Elmoricq a écrit :
Mais pourquoi tu ne poursuis pas en PHP ?
Encore une fois, pour ce genre de petite tache (cf. ton autre topic), un langage de script c'est quand même plus indiqué... surtout par rapport au C++.
|
Je me permets de te poster l'ensemble des fonctions que j'aie réalisées:
Code :
- /*programme de calcul du temps écoulé entre deux dates*/
- function temps_ecoule($date1, $date2)
- {
- //aaaa-mm-jj hh:mn:ss est le format date
- $val1=explode(" ", $date1); // separer aaaa-mm-jj et hh:mn:ss
- $val2=explode(" ", $date2);
- $tab1=explode("-", $val1[0]); //separer aaaa mm et jj
- $tab2=explode("-", $val2[0]);
- $rat1=explode(":", $val1[1]); //separer hh mn et ss
- $rat2=explode(":", $val2[1]);
- //faire le calcul
- $valeur1=mktime($rat1[0],$rat1[1],$rat1[2],$tab1[1],$tab1[2],$tab1[0]);
- $valeur2=mktime($rat1[0],$rat1[1],$rat1[2],$tab2[1],$tab2[2],$tab2[0]);
- $diff=($valeur1-$valeur2)/60; //minutes
- if($diff<60)
- {
- $temp=$diff-abs($diff);
- $temp=$temp*60; //secondes
- $time=sprintf("%smn %ss",abs($diff),$temp);
- }
- else
- {
- $diff=$diff/60; //heures
- if($diff<24)
- {
- $temp=$diff-abs($diff);
- $temp=$temp*60; //minutes
- $tempo=$temp-abs($temp);
- $tempo=$tempo*60; //secondes
- $time=sprintf("%sh %smn %ss",abs($diff),abs($temp),$tempo);
- }
- else
- {
- $diff=$diff/24; //jours
- $temp=$diff-abs($diff);
- $temp=$temp*24; //heures
- $tempo=$temp-abs($temp);
- $tempo=$tempo*60; //minutes
- $tempor=$tempo-abs($tempo);
- $tempor=$tempor*60; //secondes
- $time=sprintf("%sjours %sh %smn %ss",abs($diff),abs($temp),abs($tempo),$tempor);
- }
- }
- return $time;
- }
|
Maintenant pour l'affichage de mon tableau d'archivage je fais ceci
Code :
- if(empty($_REQUEST["Mac"])){ $Mac = ""; }
- else { $Mac = $_REQUEST["Mac"]; }
- include ('/root/www/protected/srv_etat/fonction_time');
- /*Programme d'archivage du serveur de supervision*/
- function historique($Mac)
- {
- $time=0;
- $valeur="";
- $duration="";
- $sql_table=sprintf("SELECT * FROM Tsrv_serveur WHERE Mac='%s' ORDER BY Heure ASC", $Mac);
- $result_table=mysql_query($sql_table) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
- $num_rows=mysql_num_rows($result_table);
- if($num_rows>0)
- {
- $row_table=mysql_fetch_array($result_table);
- $valeur=sprintf("%s",$row_table['Etat_Serv']);
- $duration=sprintf("%s",$row_table['Heure']);
- while($row_table=mysql_fetch_array($result_table))
- {
- if(strcmp($row_table['Etat_Serv'],$row_table['Etat_Serv'])==0)
- {
- $time=temps_ecoule($row_table['Heure'],$duration);
- $valeur=sprintf("%s",$row_table['Etat_Serv']);
- $duration=sprintf("%s",$row_table['Heure']);
- $sql_table1=sprintf("INSERT INTO Tsrv_Opt(Date, Statut, Duree) VALUES (%s,%s,%s)",$duration,$valeur,$time);
- $result_table1=mysql_query($sql_table1);
- while($row_table1=mysql_fetch_array($result_table1))
- {
-
- }
- }
- else
- {
- $time=temps_ecoule($row_table['Heure'],$duration);
- $sql_table2=sprintf("INSERT INTO Tsrv_Opt(Date, Statut, Duree) VALUES (%s,%s,%s)",$duration,$valeur,$time);
- $result_table2=mysql_query($sql_table2);
- while($row_table2=mysql_fetch_array($result_table2))
- {
-
- }
- $valeur=sprintf("%s",$row_table['Etat_Serv']);
- $duration=sprintf("%s",$row_table['Heure']);
- }
- }
- }
- }
|
Mon problème est au niveau de l'INSERT INTO. J'aurais souhaité faire un SELECT je crois que j'ai besoin de me changer l'air car je n'y vois plus grande chose.
---------------
Merci
|