_D4rk_: [PHP/MySQL] Problem mit time() u. MySQL

Hi zu allen,
ich bins mal wieder, ich habe ein Script geschrieben wo ein Fehler drin ist nach verschiedensten Debuggen habe ich das Problem glaub ich gefunden. Jetzt sind meine Fragen geht das und(Warscheinlich nicht) wie Löse ich das Problem?

MySQL Tabelle:
Tabellenname: system
Spalte(n):update

PHP Script:
<?php

include("../../inc/mysql.php"); //Hier wird die DB Verbindung aufgebaut

$sql = "SELECT * FROM system";
    $sql2 = mysql_query($sql) OR die(mysql_error());

$update_time_2 = $sql2['update']; //Der Wert in der DB ist $zeit_time
    $zeit_time = time();
    $update_time = $update_time_2 + 590;

if($update_time <= time())
    {

echo "Ein ganz toller Text";
     //$zeit_time wird hier jetzt in die DB eingetragen

}
?>

  1. Der Code ist ja recht abenteuerlich. Kannst Du vielleicht einfach mal so nett sein und klar und ausführlich beschreiben welche Anforderung Du an Dein Script hast? Vielleicht noch die SQL-Datenbasis ein wenig beschreiben? Ggf. noch anmerken was Du versucht hast und warum das nicht geklappt hat (Fehlermeldung? Problemisolierung betrieben?)?

    1. Der Code ist ja recht abenteuerlich. Kannst Du vielleicht einfach mal so nett sein und klar und ausführlich beschreiben welche Anforderung Du an Dein Script hast? Vielleicht noch die SQL-Datenbasis ein wenig beschreiben? Ggf. noch anmerken was Du versucht hast und warum das nicht geklappt hat (Fehlermeldung? Problemisolierung betrieben?)?

      Ok, also ich häng mal unten die Tabelle dran. Also das Script soll auslessen wann das Script selber das letzte mal ausgeführt wird und wenn 590 sec vergangen sind die IF ausführen. Ich habe das Script mal extrem gekürzt da es sonnst ein paar hundert Zeilen lang wär aber wenn ich den Tabellen Inhalt mit echo ausgebe kommt dabei nichts. Wenn ich aber in die Tabelle mit PHPMyAdmin gucke dann ist dort eine Zahl(die Uhrzeit in TimeStamps(oder wie das heißt)). Ich gehe also davon aus das ich einen Fehler in der DB Strucktur habe will heißen INT ist Falsch. Eine Fehler Meldung an sich kommt aber nicht. Aber ich wüste auch nicht was ich abgesehen von INT benutzen sollte.

      Anhang:
      CREATE TABLE system (
        update int(10)
      }

      1. Du lässt Dein Script, wenn es ausgführt wird, einen Datumswert "LastExecuted" in die DB schreiben, beim nächsten Aufruf nimmt Dein Script eine Prüfung vor, ob der definierte Zeitraum (irgendfwas mit 59) verstrichen ist und führt nach dieser Prüfung ggf. einen Job aus.

        Wichtig:

        • Freunde Dich mit der MySQL-Doku an
        • Freunde Dich mit den Datentypen von MySQL an
        • Freunde Dich mit den Datums- Zeitfunktionen von MySQL an
        • Freunde Dich mit der Syntax an (ein geschicktes SELECT macht hier bereits den Job)
        • Löse Dein Problem rein MySQL-seitig, so dass MySQL entweder einen positiven oder negativen numerischen Wert zurückliefert oder auch bspw. ein trockenes 'JobHasToBeExecuted' oder ein 'NoJob' zurückliefert.