[PHP & MySQL] Zeit eintragen, verändern und löschen

olektu

Grünschnabel
Hi,
Ich hoffe der Titel triff passt.
Also ich möchte eine zeit in die Datenbank eintragen also z.b. 36000 steht für sekunden also 36000 sekunden und dann möchte ich das diese zeit abläuft und nach ablauf dieser zeit soll ein wert in der Datenbank wieder auf 0 gesetzt werden.
Das alles soll automatisch ablaufen


würde mich über Viele Antworten freuen :-)


mfg
 
Du musst eine weiter Spalte einführen, in der die letze Aktualisierung gespeichert wird (Zeitpunkt)

Dann durch Akutell - letzte Aktualisierung erhälst du die Zeit, welche du von deinen 36 000 abziehen musst.
 
ok Vielen Dank für deine Antwort das mit der neuen Spalte ist mir klar, könntest du mir bitte vielleicht einen kleinen Beispiel PHP Codeschnipsel machen?
 
Hi

Cookiebuster hat doch schon alles gesagt?
PHP:
$zeit = 36000;
$aktualisierung = 10000;
$vergangene_zeit = $zeit-$aktualisierung;
echo $vergangene_zeit;
 
Ich habe es jetzt so :
die die wird mit
PHP:
$xxx = time()  + 604800; // + 7 Tage
dann wird $xxx in die datenbank eingetragen in die tabelle game_users in die spalte geo_time und wenn der wert von geo_time unter den der jetztigen zeit fällt dann wird die Spalte geologe von 1 auf 0 gesetzt soweit bin ich jetzt jedoch möchte ich die zeit aus der Datenbank auslesen ich habe es schon mit

PHP:
$geo_time = "SELECT `geo_time` FROM game_users WHERE id = '1'";
          $abfrage = mysql_query($geo_time);
          echo $abfrage;
also das
PHP:
WHERE id = '1'";
steht speziel zum test für meine userid und muss dann später durch
PHP:
WHERE `id` = '". $CurrentUser['id'] ."';", 'users');
ersetzt werden weil ich wissen will obs berahupt geht aber es geht nicht ich bekomme als ausgabe Resource id #124 normalerweise müsste ich zumindestens 1275051470 als ausgabe bekommen

Edit: Problem mit mysql_fetch_object gelößt :-) bekomme jetzt leider 0001275051470 muss die 3 nullen wegbekommen hat jmd ne idee ?



lg
 
Zuletzt bearbeitet:
ZEROFILL für das Feld entfernen,
alternativ in php nach int casten

Grüße BN
 
Danke für deine Antwort habe Problem garnicht mehr wenn ich es durch die tpl datei ausgebe kommt das korrekte Datum nurnoch 1
Es gibt in meinem Spiel 9 Offiziere

PHP:
		$abfrage = mysql_query("select * from game_users");
  
        while ($row = mysql_fetch_object($abfrage)) {
        $geo = ($row->geo_time);
		$adm = ($row->adm_time);
		$ing = ($row->ing_time);
		$tech = ($row->tech_time);
		$kon = ($row->kon_time);
		$wis = ($row->wis_time);
		$lag = ($row->lag_time);
		$spio = ($row->spio_time);
		$kom = ($row->kom_time);
		$datum = date("d.m.Y - H:i:s",$geo);
		$datum1 = date("d.m.Y - H:i:s",$adm);
		$datum2 = date("d.m.Y - H:i:s",$ing);
		$datum3 = date("d.m.Y - H:i:s",$tech);
		$datum4 = date("d.m.Y - H:i:s",$kon);
		$datum5 = date("d.m.Y - H:i:s",$wis);
		$datum6 = date("d.m.Y - H:i:s",$lag);
		$datum7 = date("d.m.Y - H:i:s",$spio);
		$datum8 = date("d.m.Y - H:i:s",$kom);
		}

dadurch hat jeder offizier ein individuelles Auslauf-datum nun möchte ich das bei jedem sein datum angezeigt wird habe schon überlegt ob das irgendwie mit ner for-schleife geht denke aber das es nicht geht ....
in der tpl lasse ich es so ausgeben
Code:
Läuft bis : {offi_time}
nun möchte ich das es bei jedem ein anderer wert ausgegeben wird jetzt hab ich da
PHP:
$bloc['offi_time'] 	  =
hinter das = muss ich eine variable setzten aber ich weiß nicht wie ich das schaffen soll das alle werte korrekt angezeigt werden ich habs auch schon mit nem array versucht aber das hat nichts geklappt hat jemand vielleicht eine idee?


mfg
 
PHP:
$rows = array ();
while ($row = mysql_fetch_assoc ($abfrage)) {
        $rows [] = $row;
}

$optOffis = array (
        'geo_time' => 'Geologe',
        'adm_time' => 'Administrator',
        'ing_time' => 'Ingenieur',
        und so weiter
)

$smarty->assign ('offiTimes', $rows);
$smarty->assign ('optOffis', $optOffis);

HTML:
<table>
{foreach key=key item=userOffiTimes from=$offiTimes}
        <tr>
        {foreach key=offizierIndex item=offizierName from=$optOffis}
               <td> {$offizierName}: {$userOffiTimes['offizierIndex']}</td>
        {/foreach}
        </tr>
{/foreach}
</table>


sollte so klappen, Smarty ist bei mir glaub 4 Jahre her ... :D
 
Zurück