Datumsangabe

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Datumsangabe

    Hallo zusamman,

    ich habe ein kleines problem mit unserem ticketsystem,

    hier wird das datum für die ticketanfrage falsch angezeigt, immer einen tag zurück.
    Heute ist mit aufgefallen das das ticket von gestern nun auch das datum von heute hat.

    Das war die orginal funktion in der datei:

    function time_convert($mysql_timestamp) {
    global $config;
    $t = mysql_fetch_array(mysql_query("SELECT UNIX_TIMESTAMP($mysql_timestamp) AS timestamp"));
    $t[timestamp] += ($config[timezone] * 3600);
    return $t[timestamp];
    }

    hier wurde mir aber immer diese fehlermeldung gezeigt:

    mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/web2/html/osticket/class.ticket.php on line 283


    nun habe ich die funktion geändert in:

    function time_convert($mysql_timestamp) {
    global $config;
    $time = explode(":", $mysql_timestamp);
    $t=mktime($time[0], $time[1], $time[2], date("m"), date("d"), date("Y"));
    $t += ($config[timezone] * 3600);

    return $t;
    }

    ?>


    die fehlermeldung ist weg, nur das mit dem datum passt nicht, wie es aussieht rechnet es sich immer mit und das auch noch einen tag zurück.

    Es sollte so sein:

    ticket heute erstellt -> in der admin dann 07.01.2008
    tickes von gestern -> in der admin dann 06.01.2008

    die datums sollten also gespreichert sein
    kann mir jemand helfen?

    ich suche nun schon zwei tage und nächte....komme nicht dahinter

    viele grüße
    Christoph

  • #2
    Wieso machst du das so umständlich? Die $mysql_timetsamp kommt doch sicher aus einer Datenbankabfrage. Dort kannst du doch direkt das richtige Datumsformat abfragen. Dann wird auch die Zeitzone richtig berücksichtigt.
    ich glaube

    Kommentar


    • #3
      hallo,

      danke erstmal für deine Antwort.

      leider bin ich nicht der große Künstler was Datenbanken usw, angeht.

      Mit PHP beschäftige ich mich auch kaum, aber ich muß ja mal anfangen wenn es zu fehlern kommt....

      Evtl. einen Tip für mich kleinen anfänger


      Viele grüße
      Christoph

      Kommentar


      • #4
        OffTopic:
        Evtl. einen Tip für mich kleinen anfänger
        Almosen für die Armen! Almosen für die Armen!
        Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

        Kommentar


        • #5
          cool,
          wenn dein Tipp almosen für die armen wäre nehme ich diese gerne....

          Kommentar


          • #6
            Die Frage ist ja mal woher kommt $mysql_timestamp und wie seht das aus. Und was soll dann aus dieser Funktion herauskommen?
            Die Fehlermeldung im ersten Beispiel lässt vermuten, dass das Format nicht stimmt. Aber wen du die SQL-Statements so verschachtelst, gibt es auch weniger klare Debug-Möglichkeiten.
            Gruss
            H2O

            Kommentar


            • #7
              Mach in der Funktion mal eine Testausgabe mit echo($mysql_timestamp);.

              Wenn da das Format nicht stimmt, dann musst du sowieso die Stelle wiederfinden, in der die Funktion aufgerufen wird. Und dann kannst du dir das Gewurschtel auch sparen und gleich das richtige Datumsformat abfragen.

              Also: Finde die Stelle, die time_convert falsch aufruft.
              ich glaube

              Kommentar

              Lädt...
              X