Frag bezüglich Ticket System

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
  • Hallo Breadfishler,
    ich schreibe gerade mein Ticketsystem, so, dass man es nachher auch im UCP nutzen kann. Meine Frage ist nun, wie ich die Nachrichten von dem Admin und dem Spieler sortieren kann nach dem Datum(In SAMP). Die Tabellenstruktur sieht so aus:

    Code
    CREATE TABLE IF NOT EXISTS `gsr_tickets` (
      `tID` int(11) NOT NULL AUTO_INCREMENT,
      `tOwner` int(11) NOT NULL,
      `tAdmin` int(11) NOT NULL,
      `tStatus` int(11) NOT NULL,
      `tCategory` int(11) NOT NULL,
      `tOText` text NOT NULL,
      `tAText` text NOT NULL,
      PRIMARY KEY (`tID`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


    tOText ist hierbei der Text von dem Spieler, wo er immer wieder Antworten zuschreiben können soll, genauso wie tAText, welches der Text vom Administrator ist.
    Das Format solch einer Nachricht sieht so aus: [%i.%i.%i.%i-%i.%i] %s\n
    Dazu ein Beispiel:

    Code
    [01.05.2014-15:54]: Hallo


    Nun ist meine Frage, wie ich die einzelnen Nachrichten splite und dann sortiere nach datum?


    Es wäre super nett, wenn mir einer Helfen könnte.


    Mit freundlichen Grüßen
    Adrian Rodriguez

  • Füg noch eine Spalte in deiner Tabelle ein zb:
    Per CP/Navicat:
    Spalte mit dem Typ Timestamp erstellen als Standart Wer CURRENT_TIMESTAMP nutzen
    oder
    Per SQL:

    SQL
    ALTER TABLE `gsr_tickets` ADD `tTime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP


    Dann kannste mit dem Query das Sortieren:

    SQL
    SELECT * FROM `gsr_tickets` ORDER BY tTime  DESC


    So wird beim Erstellen eines Eintrags in der Tabelle die Erstelluhrzeit eingesetzt.

  • So, jetzt ist meine Frage, wie ich meine Abfrage so splitte, dass ich alle offenen Tickets in einem Dialog anzeigen kann, meine Abfrage sieht so aus:
    format(_query, sizeof _query, "SELECT * FROM gsr_tickets WHERE tStatus='1' OR tStatus='2'");
    Dies soll dann folgend formatiert werden:

    Code
    [%i] Ticket Ersteller: %s, Status: %s


    %i = Ticket ID