Chat in php programmieren

  • Hallo
    Ich muss für meinen Abschluss ein Projekt machen um im Examen zugelassen zu werden. Ich hab mir vorgenommen einen Chat in PHP zu programmieren mit verschiedenen Themenräumen und Usermanagment, .... Ih würde gerne von Leuten wissen die erfahrung in PHP haben was ich dafür wissen muss, usw.
    Ich hab schon auf einigen Seiten gelesen dass man es mit Sockets machen kann oder mit der ganz billigen Variante indem man Textdateien verwendet aber das will ich nicht.


    Freue mich auf euere Antworten


    MfG HolyBeast

  • ich programmier jetzt zwar nicht mit php
    aber ich denke, wenn du das professionell machen willst musste das mit ner MySQL db machen.
    Das z.B. alle nachrichten in ne Tabelle kommen mit username, datum und Chatroom und da die db dann alle x Sekunden ausliest und die page refresht


    Benutzer1 sendet nachricht ---> Nachricht kommt in die DB ---> Benutzer2 läd alle X sekunden die page neu und übergiebt dem php script ne variable mit dem zeitpunkt des letzten abgleichs
    ---> script liest die Nachricht aus und liefert sie an den Benutzer.



    Nur n vorschlag

  • Ich schreibe gerade zufällig für Übungszwecke nen Chat (PHP).
    Die Daten(Nachrichten, User, Sessions, ...) werden bei mir in einer Datenbank verwaltet.
    Registration, Login, der Hauptchannel zum Chatten und einige Sicherheitsfunktionen(Gegen SQLi, XSS und Co) gehen schon.


    Kannst dich ja bei mir per ICQ melden, falls du Fragen hast oder meinen bisherigen Code einsehen möchtest.






    MfG AOL

  • Also nen Chat rein in PHP geht nicht... jedenfalls nicht so das es wirklich gut Läuft denn man müsste nach jeder message die seite neu laden und erst dann würde man neue messages laden können da php serverseitig ist...


    in kombination mit javascript kann das ganze schon eher was werden....


    oder du machst das ganze in flash^^


    minimum anforderung ist fundiertes wissen in php und mysql oder mssql und javascript oder flash....


    allerdings wäre es möglich das ganze auch ohne datenbank zuc oden ist aber sehr ineffizient und unsauber + unschön ( man könnte auch alles in dateien schreiben )


    Also ich habe meinen Chat in PHP und JavaScript gecodet.... sehr effizient und Aja ist nicht zwingend nötig da man genausogut JSON oder nomales content loading nutzen kann...


    MfG Sick^

  • Dass ich Mysql brauche weiß ich. Wissen in Php und Mysql hab ich. Javascript kann ich noch nachschauen um die nötigen Kenntnisse zu bekommen. Würdest du eher nen Socket nehmen um die Nachrichten zu senden oder die Nachichten in die Datenbank schreiben und dann ausschreiben lassen?


    Ich weiß nämlich net genau was ich nehmen soll. In die Sockets muss ich mich noch etwas reinarbeiten.


    MfG HolyBeast

  • Hab zwar keine Ahnung von Sockets, aber wäre eine Datenbank nicht ein wenig umständlich und unklug ?
    Ich meine, erst müssen die Daten gespeichert werden, dann wieder ausgelesen werden, man müsste eine Funktion einbauen,dass die User nicht 100 mal hintereinander a schreiben, sonst haste nachher eine voll gespammte DB.


    Zudem wäre ein Lösch-Intervall praktisch, ich verweise nochmal auf eine volle Datenbank..


    An jmd. der wirklich gut coden kann und nicht nur rudimentär, hab ich recht ?

  • Zur Rechenzeit kann ich nix sagen, hat mich bisher nicht sonderlich interessiert ^^


    Ajax ist ein Verfahren um Daten asyncron nachzuladen.
    d.H. du kannst bestimme Bereiche einer Seite verändern (mit neuen Daten versorgen) ohne die komplette Seite neu zu laden.
    Bsp. google-suche


    http://www.admin-wissen.de/tut…ntwicklung/ajax-tutorial/
    Sehr gutes AJAX-Tutorial.


    Du setzt einfach einen Timer der alle X Sekunden per AJAX eine Abfrage losschickt. Diese geht z.B. auf dein PHP-Script welches dann eventuelle neue Nachrichten ausgibt.


    Gruß
    florian0