Also, ich habe direkt nach <?php den Code
function int_int_divide( $x, $y ) {
return ( $x- ( $x% $y ) )/ $y;
}
function give_zeit( $zahl ) {
$seconds= $zahl% 60;
$zahl= int_int_divide( $zahl, 60 );
$minutes= $zahl% 60;
$zahl= int_int_divide( $zahl, 60 );
$hours= $zahl;
return sprintf( '%02d:%02d:%02d', $hours, $minutes, $seconds );
}
eingefügt. Ist also relativ am Anfang.
Dann hab ich diesen Code:
$query = "SELECT sec_to_time(sum(time_to_sec(TotalBlockTime))) FROM flights ".$condition;
$result=mysql_query($query);
$TFT = mysql_result($result,0);
durch diesen ersetzt:
$query= 'SELECT sum( time_to_sec( TotalBlockTime ) ) FROM flights '. $condition;
$result= mysql_query( $query );
$zahl= mysql_result( $result, 0 );
$text= give_zeit( $zahl );
Weiter habe ich diesen Code:
echo '<br><table width="300" cellspacing="1" cellpadding="2" align="center" style="font: normal 11px/14px Arial,sans-serif;padding:7px 7px 7px 7px">'.$TDListOdd.
"<div align=\"center\"><strong><u>Virtual Airline Statistics</u></strong><br>".
"Total flights".$startMsg.": $NrfFlights<br>
Total flight time: $TFT h<br>
Total passengers carried: $TPC<br>
Total Cargo carried: $TCW</div>".
$ListStop;
echo "<br>";
durch diesen ersetzt (wegen dem $TFT, diesen Zeigt die erste Anfrage):
echo '<br><table width="300" cellspacing="1" cellpadding="2" align="center" style="font: normal 11px/14px Arial,sans-serif;padding:7px 7px 7px 7px">'.$TDListOdd.
"<div align=\"center\"><strong><u>Virtual Airline Statistics</u></strong><br>".
"Total flights".$startMsg.": $NrfFlights<br>
Total flight time: $text h<br>
Total passengers carried: $TPC<br>
Total Cargo carried: $TCW</div>".
$ListStop;
echo "<br>";
Dann als zuletzt weiter unten diesen Code:
$query = "SELECT PilotName, COUNT(PilotName) as TnF, SEC_TO_TIME(SUM(TIME_TO_SEC(TotalBlockTime))) AS TTotalBlockTime, SUM(NbrPassengers) AS TNbrPassengers, SUM(BonusPoints) AS TBonusPoints, SUM(PenalityPoints) AS TPenalityPoints, SUM(BonusPoints - PenalityPoints) AS TotalPoint FROM flights GROUP BY PilotName ORDER BY $sortColumn LIMIT $pStart,$pageLines";
if(!$result=mysql_query($query))
{
echo "SQL Error - ".mysql_error()."<br>".$query;
return;
}
durch diesen ersetzt:
$query = "SELECT PilotName, COUNT(PilotName) as TnF, SUM(TIME_TO_SEC(TotalBlockTime)) AS TTotalBlockTime, SUM(NbrPassengers) AS TNbrPassengers, SUM(BonusPoints) AS TBonusPoints, SUM(PenalityPoints) AS TPenalityPoints, SUM(BonusPoints - PenalityPoints) AS TotalPoint FROM flights GROUP BY PilotName ORDER BY $sortColumn LIMIT $pStart,$pageLines";
$result= mysql_query( $query );
$zahl= mysql_result( $result, 0 );
$text= give_zeit( $zahl );
if(!$result=mysql_query($query))
{
echo "SQL Error - ".mysql_error()."<br>".$query;
return;
}
Und das Resultat ist wie gesagt, dass die erste Anfrage korrekt in HH:MM:SS angezeit wird, die zweite jedoch weiterhin als Sekunden.
Zweite Anfrage:
$query = "SELECT PilotName, COUNT(PilotName) as TnF, SUM(TIME_TO_SEC(TotalBlockTime)) AS TTotalBlockTime, SUM(NbrPassengers) AS TNbrPassengers, SUM(BonusPoints) AS TBonusPoints, SUM(PenalityPoints) AS TPenalityPoints, SUM(BonusPoints - PenalityPoints) AS TotalPoint FROM flights GROUP BY PilotName ORDER BY $sortColumn LIMIT $pStart,$pageLines";
$result= mysql_query( $query );
$zahl= mysql_result( $result, 0 );
$text= give_zeit( $zahl );
So, was hätte ich nun falsch eingefügt?