View Single Post
ישן 13-11-07, 00:10   # 1
Maccabi4ever
חבר חדש
 
מיני פרופיל
תאריך הצטרפות: Oct 2007
הודעות: 18

Maccabi4ever לא מחובר  

חיסור זמנים ב php בעיה

הקוד :
קוד:
<?php
//$selectit = mysql_query("SELECT * FROM resultboard WHERE id=5");
//$select = mysql_fetch_array($selectit,MYSQL_ASSOC);
$timegame = $select[time];
$curtime = new tTime();
$curtime->vTime = date("l:H:m");
$curtime->fInit();
$curtime->fCalculate();
$gametime = new tTime();
$gametime->vTime = $select["time"];
$gametime->fInit();
$gametime->fCalculate();
$datenow = $curtime->minu;
$timegame = $gametime->minu;
if ($datenow-$timegame >= 0 && $datenow-$timegame < 45)
 echo "מחצית ראשונה";
else if ($datenow-$timegame == 45 && $datenow-$timegame <= 60)
 echo "מחצית"; 
else if ($datenow-$timegame > 60 && $datenow-$timegame < 105)
 echo "מחצית שנייה"; 
else if ($datenow-$timegame >= 105)
 echo "הסתיים"; 
else
 echo "לא התחיל"; 
class tTime
{
 var $vTime;
 var $day;
 var $hour;
 var $minu;
 
 function fInit(){
  list($this->day,$this->hour,$this->minu) = explode(":",$this->vTime);}
  
 function fCalculate(){
  $this->minu = $this->minu + ($this->hour + $this->day * 24) * 60;}
}
?>
עכשיו שאני עושה הצגת התוצאה של החיסור ב echo הוא מציג לי מספר כזה -30500 משהו כזה
אז הכנסתי לו נתון ש timegame זה 23:00:00 (מוגדר ב phpmyadmin על time) והשעה עכשיו 00:08:00 אז הוא לא מציג לי את ההפרש הנכון הוא צריך להציג שעה ו 8 דקות יענו 68 דקות והוא מציג לי מספר -30500 ובגלל זה ב if ים הוא לא מציג את המידע הדרוש הוא מציג את מה שקטן מ 0 שבגלל צריך להציג מה שגדול מ 60 ...

מה הבעיה ?

Last edited by Maccabi4ever; 13-11-07 at 00:13..
  Reply With Quote