[MYSQL] Datetime

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Tag ;)


    Ich möchte gerne eine Log-Funktion erstellen, scheitere allerdings an dem Problem, das ich nicht genau weiß, wie ich die Datetime Funktion von Mysql anwenden soll.


    Wenn mir dazu jemand eine Beispiel query machen könnte, wäre ich demjenigen dafür sehr dankbar ;)


    Mit Datetime meine ich übrigens den Typ vom Feld in mysql ;)


    //push

    Einmal editiert, zuletzt von Niko1561 ()

  • Wird sind leider kein MySQL Hilfe Forum.
    Ich versteh trotzdem nicht,was du da jetzt wissen möchtest ?


    http://dev.mysql.com/doc/refman/5.1/de/datetime.html


    Wenn du nur reinschreiben willst, würde sowas klappen:

    SQL
    // Tabelle:
      Date - Datetime
      Text - varchar(256)
    // SQL Kommando
    INSERT INTO `LOG` VALUES( NOW() , 'DER LOGTEXT' )


    Zitat

    Datetime Funktion


    Zitat

    Mit Datetime meine ich übrigens den Typ vom Feld in mysql ;)


    Was denn nun ?

  • Ich meine ich hab in meiner Datenbank ein Feld erstellt mit dem Typ "Datetime", nun möchte ich da Datum+Uhrzeit reinbringen, wozu dieser Typ ja auch geeignet ist.
    Auf der Seite war ich auch schon, hat mir aber nicht wirklich weitergeholfen.



    stock ADMLOG(name[], command[], bem1[], bem2[], bem3[])
    {
    new query[150],query2[150], year, month, day, hour, minute, second,datetime[50];
    getdate(year, month, day);
    gettime(hour, minute, second);
    format(datetime, sizeof(datetime), "%d-%d-%d %d:%d:%d", year, month, day, hour, minute, second);
    format(query, sizeof(query), "INSERT INTO `ADMCMD-Log` (`Admin`,`Befehl`,`Uhrzeit``Bemerkung1`,`Bemerkung2`,`Bemerkung3`) VALUES ('%s','%s','%d','%s','%s','%s')", name, command, datetime, bem1, bem2, bem3);
    mysql_query(query);
    }


    geht in "[pwn]" nicht, sonst wärs nur eine Zeile, änder es später kurz hab grad wenig zeit
    so hab ichs probiert, klappt aber nicht

  • "so hab ichs probiert, klappt aber nicht"
    Solche Aussagen sind immer sehr dürftig. Damit kann keiner wirklich was Anfagen.
    Was klappt denn nicht ? Hast du mal das SQL Kommando testweise manuell ausprobiert ?


    Hättest du letzteres getan,hättest du gesehen,dass dein SQL Kommando nicht richtig aufgebaut wurde.

    Zitat

    format(query, sizeof(query), "INSERT INTO `ADMCMD-Log` (`Admin`,`Befehl`,`Uhrzeit``Bemerkung1`,`Bemerkung2`,`Bemerkung3`) VALUES ('%s','%s','%d','%s','%s','%s')", name, command, datetime, bem1, bem2, bem3);


    Bist du dir wirklich sicher,dass du %d als Platzhalter für "%d-%d-%d %d:%d:%d" ( datetime ) nehmen kannst ? Denk nochmal drüber nach.

    Spoiler anzeigen
    Wahrscheinlich nicht,sonst hätte ich es nicht geschrieben.

    Abgesehen davon, du hättest auch einfach NOW() nehmen können.
    Klappt es dann immernoch nicht,dann lässt du dir am besten query mal per print() ausgeben und testest es manuell per phpMyAdmin o.Ä. .