Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Datenspeicherung in Datenbank Row

Einklappen

Neue Werbung 2019

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

  • ShadyTM
    hat ein Thema erstellt [Erledigt] Datenspeicherung in Datenbank Row.

    [Erledigt] Datenspeicherung in Datenbank Row

    Guten Tag liebe Community!

    Ich versuche gerade so eine art "Chat" zu Coden.
    Und möchte den gesamten Chat verlauf in 1ner Tabellenspalte in der Datenbank speichern!
    Kennt ihr da möglichkeiten wie das aussehen könnte?
    Ich hatte an soetwas ähnliches wie das hier gedacht:

    User1|Text|Datum,User2|Text|Datum,User3|Text|Datum, ...

    Jedoch gäbe es ja beim Spalten der einzelnen Daten probleme wen ein User in seinem Text ein '|' benutzt.

    Kennt ihr ne möglichkeit?


    Liebe Grüße,
    ShadyTM

  • wolf29
    antwortet
    Schau Dir z.B. das )nicht mehr ganz aktuelle) Tutorial an:

    http://tutorialzine.com/2010/10/ajax...hat-php-mysql/

    mal was für's Verständnis.

    mfg wolf29

    Einen Kommentar schreiben:


  • tkausl
    antwortet
    Zitat von ShadyTM Beitrag anzeigen
    Also sollte ich mindestens 2 Tabelle nehmen?
    Gibts da wirklich keine andere möglichkeit
    Warum? Was ist an der das Problem?

    Zitat von ShadyTM Beitrag anzeigen
    und jetzt kommt nicht mit "Speichern in Files"
    wtf

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    Eine Datenbank arbeitet Zeilenorientiert und ist darin ziemlich gut.
    Warum suchst du nach Alternativen? Benutze die Datenbank so, wie es gedacht ist und alles wird gut...

    Einen Kommentar schreiben:


  • ShadyTM
    antwortet
    Sorry, die Daten werden nich in ne Spalte sondern in einen neuen Eintrag(Insert) bzw Tabelle gequetscht.

    Also sollte ich mindestens 2 Tabelle nehmen?
    Gibts da wirklich keine andere möglichkeit und jetzt kommt nicht mit "Speichern in Files"

    Liebe Grüße

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    Ist ja relativ egal..
    Ja, weil deine beide Varianten falsch sind.

    Du machst eine Tabelle mit DREI Feldern:
    user_id - INT
    nachricht - TEXT (oder VARCHAR(255) oä)
    datum - DATETIME

    Für jeden Satz, den ein User schreibt, wird EIN Datensatz (row) in dieser Tabelle erzeugt.

    Zitat von Chris. Beitrag anzeigen
    Du solltest dich (so scheint es) mit den Grundlagen von MySQL befassen.

    Einen Kommentar schreiben:


  • wolf29
    antwortet
    Wen ein User eine Konversation startet, wird eine neue Spalte erstellt.
    Wo von wem? Du hast extra eine Tabelle, damit du die Daten nicht in eine Spalte quetscht. Bau es vernünftig auf und du wirst später keine Probleme haben mit Datenmanipulation oder -auslesen.

    Wen der "Fuer" also der andere User antwortet, soll die gesamte Konversation die nun zwischen beiden Teilnehmern geschieht in der "Text" Spalte gepseichert werden..
    Ne nicht eine Spalte! Du benötigst mindestens(!) 2 Tabellen (eine User, eine konversation).

    mfg wolf29

    Einen Kommentar schreiben:


  • ShadyTM
    antwortet
    Und nochmal:
    Wen ein User eine Konversation startet, wird eine neue Spalte erstellt.

    Diese beinhaltet:
    id|Von|Fuer|Text|Datum|VonBeendet

    Wen der "Fuer" also der andere User antwortet, soll die gesamte Konversation die nun zwischen beiden Teilnehmern geschieht in der "Text" Spalte gepseichert werden..

    Einen Kommentar schreiben:


  • Chris.
    antwortet
    Ich finde es einfach besser anstatt immer wieder für jede Antwort eine Spalte zu erstellen..
    Spalten einer Tabelle erstellst du nur einmal, dannach setzt du lediglich Datensätze ein. Du solltest dich (so scheint es) mit den Grundlagen von MySQL befassen.

    Einen Kommentar schreiben:


  • ShadyTM
    antwortet
    wolf29:
    Ich finde es einfach besser anstatt immer wieder für jede Antwort eine Spalte zu erstellen..

    (Es wird mehr eine art Posteingang/Nachrichten.. deswegen kein Ajax)


    lstegelitz:
    Ja ob das ganze jetzt so ausschaut:
    Tabelle: User | Text | Datum
    Eintrag: User1| Text | Datum
    Eintrag: User2| Text | Datum
    Eintrag: User3| Text | Datum

    oder
    Tabelle: Text
    Eintrag: User1|Text|Datum,User2|Text|Datum,User3|Text|Datum ,

    Ist ja relativ egal.. bei allen beiden wird es Probleme geben wen der User | benutzt.
    Liebe Grüße

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    in 1ner Tabellenspalte
    Hier liegt der Fehler...

    User|Text|Datum
    Das gehört nicht in ein Feld, sondern in drei.. du kannst deine Tabelle genau so aufbauen.

    Einen Kommentar schreiben:


  • wolf29
    antwortet
    Und möchte den gesamten Chat verlauf in 1ner Tabellenspalte in der Datenbank speichern!
    Warum das den Mach die deine Datenbank doch vernünftig "normalisiert" und google mal nach AJAX Chat tutoria oder so ähnlich. Gibt es einfache & gute Anleitungen.

    mfg Wolf29

    Einen Kommentar schreiben:

Lädt...
X