LiveChat mit AJAX

Ich habe gehört dass man mittels AJAX einen LiveChat programmieren kann, was durchaus ein nettes Feature für meine private Homepage wäre.
Mittlerweile beherrsche ich JavaScript schon ziemlich gut, habe von AJAX ansich aber noch relativ wenig Ahnung.
Weiß jemand wieviel Aufwand so ein AJAX-Chat ist, bzw. ob es sich lohnt etwas in diese Technologie einzuarbeiten? :slight_smile:

Soweit wie ich das bisher hier im Board mit dem AJAX mitbekommen hab kann man damit wirklich sehr viel machen weil viele der Funktionen hier sind mit AJAX gemacht daher könnte ich mir gut vorstellen das es sich lohnen würde da bisschen einzuarbeiten.
Ich selbst kann dir da leider nicht helfen da ich weder JavaScript noch AJAX kann.

AJAX ist ja eine serverseitige Kombination aus JavaScript und XML, wobei ich mich frage wozu ich XML für specialeffekts wie drag&drop benötige? :confused:

hmm ich könnte mir vorstellen das es Regeln beschreibt wie/wo/was man verschieben kann und was damit geschehen soll.

Ist “serverseitig” und JavaScript nicht ein Wiederspruch?
Meins Wissens wird doch JavaScript nur vom Browser beachtet.

Nein, eben nicht :wink:
AJAX funzt nur Serverseitig, das XMLHTTPRequest-Objekt kann nur auf einem Server ausgeführt werden und somit mit einer XML-Datei in Verbindung zu treten.
Allerdings wäre für mich jetzt interessant wie ich sowas überhaupt managen soll, weiß wer wie man überhaupt der XML-Datei Einträge hinzufügt, bzw die Baumstruktur verändert? :cool:

Schonmal bei Wikipedia umgesehen? Ajax_(Programmierung
Schade das man immernoch auf WIkipedia verlinken muss aber man kann ja nicht alles können :smiley:

Hm, netter Artikel, aber den kenn ich schon.
Ich lass AJAX lieber bleiben, zuviel Quelltext, für zuwenig ergebnis! :stuck_out_tongue_winking_eye:

Vielleicht schonmal was vom GWT gehört? Das ist ein Ajax-Framework von Google. Man schreibt nicht eine Zeile Javascriptcode sondern „reines“ Java und daraus wird das „Ajax“ generiert! Es gibt sogar schicke „UI-Widgets“. Wenn du Java kannst solltest du es dir vielleicht mal anschauen. Und berichte wie es war :wink:

AJAX ist eine clientseitige technik, es werden im “hintergrund” der seite per JavaScript Requests an den Server abgesetzt, als Protokoll kann dabei XML benutzt werden, muss aber nicht.

Serverseitig müssen die Requests entgegengenommen werden und eine entsprechende Antowrt liefern, diese wird dann vom JavaScript in die Seite eingebaut.

hmm, es gibt doch ebenso ajax-effekte die auch lokal funktionieren oder?
diese lightbox zB funktioniert auch zumindest teilweise mit ajax, ist aber auch lokal voll lauffähig (icon das den ladestatus anzeigt, usw.)
genau diese interessanten features werden in den tutorials nie aufgeführt -.-

Ajax ist ja auch nicht viel mehr als ein bestimmtes JS-Objekt. Der Hauptteil der Lightbox ist ganz normales JavaScript (auch wenn ich nicht die geringste Ahnung hab wie so was geht ;)), ich denke, nur das dynamische Laden der nächsten Bilder ist Ajax. Und dieses Laden benötigt schon die Verbindung zum Server.

Das dachte ich auch, dem ist aber anscheinend nicht so! Denn die Ladeanimation ist auch lokal zu sehen. (Frag mich net warum lokal Ladezeiten bei Bildern auftreten können, es war einfach so :wink:

naja, ob ich das bild nu aus dem netz oder von der lokalen platte lade ist dem browser doch piepegal (1). fakt ist, dass da ein bild ausgetauscht wird OHNE die seite neu zu laden und (warscheinlich) auch ohne das dieses bild vorher irgendwo schon unsichtbar rumlag, es wird also asynchron (zum laden der seite) im hintergrund geladen und angezeigt. und von wo es geladen wird, ist dafür nich wichtig.

(1) jeder browser kann ja mit sachen wie file:// umgehen

hm, ich hab mittlerweile mal einen ajax-chat programmiert, allerdings ist das praktisch nicht machbar, wegen zu großer serverlast :frowning:

Mal ein paar Missverstaendnisse aus dem Weg raeumen…

AJAX ist keine Programmiersprache, mit AJAX selber kann man nichts erstellen. AJAX ist auch kein JS Objekt usw.

AJAX ist eine Technik um asynchrone Kommunikation zwischen dem Server und Client zu ermoeglichen. Im Namen steckt zwar XML, aber das ist nicht notwendig fuer eine AJAX applikation.

AJAX wird clientseitig durch Javascript realisiert, was serverseitig laeuft ist egal (Java, Php, Perl oder einfach txt).

Hm, AJAX bezeichnet ja eigentlich nur diese Technologie, aber das XmlHttpRequest-Object ist JavaScript :slight_smile:

XmlHttpRequest-Object allein ist aber kein Ajax und allein damit kann man auch nichts machen.

Du brauchst Javascript fuer das absenden, aber eine serverseitige sprache zum verarbeiten…

Entschuldigt wenn ich mich hier auch noch mit meinem ersten poist so reinhänge, aber ich dacht ich schreib es trotzdem :slight_smile:

So wie es deathbyaclown schon geschrieben hat ist das völlig korrekt. Ausserdem sollte man vielleicht wissen das Sachen wie Lightbox, del.ico.us und co ebenfalls auf nativen JavaScript basieren. Denn AJAX macht keinerlei solcher „Animationen“. AJAX ist nur die >Schnittstelle< zu einer Serverseitigen Scriptsprache wie Java, PHP, CGi, weiß der Geier was …
Drag&Drop ist ebenso reines JS, man nimmt nur AJAX um am Ende der Interaktion einen erfolg zu haben, so ist eben der Drag&Drop Warenkorb gefüllt und mann kann den gleich bestellen, etc pp …

@christoph: Wenn Deine Chat zu >Server<-lastig ist dann liegt keineswegs an AJAX sondern nur an Deiner Implementierung mit einer der Serverseitigen Scriptsprachen.

Gut Schuß
VuuRWerK :wink:

Ich hab eine .txt Datei,in jeder Zeile steht in Wort, und ich möchte immer nur die eine Zeile auslesen bzw ausgeben. z.B. nur Zeile 1 ausgeben,nur Zeile 4 ausgeben.Wie muss ich das machen?

Wie kann man das machen, dass er sich einfach irgend eine Zeile nimmt und die ausgibt,zuällig.Wie damals beim Würfel!Als er zufällig ne Zahl gewürfelt hat.

Hoffe ihr könnt mir helfen.

Ich verschiebs erstmal ins allgemeine Java.
Naja eine Sache wäre die Datei einlesen dann mit split("
") oder ^ war glaube der RegEx für den Zeilenumbruch, so nach jeder Zeile trennen und dann per Zufall oder wie auch immer die Zeilennummer dir holen und aus dem entstandenen Array dir die Zeile holen.

Eine andere Idee wäre die Zufallszahl erzeugen und dann einfach mir readLine() von dem BufferedReader einfach solange einlesen bis man da angekommen ist.