Das Exportieren von Programmen in andere Sprachen ist eines der Dinge, die Programmierer lieben. Wir haben
im WEB
Zwei verschiedene Programmierumgebungen: Client- (Browser) und Serverseite, gemäß der Definition des HTTP-Protokolls,
Wir können Serverprogramme schreiben, die andere Sprachen auf dem Client ausgeben. Wir haben ihn als Server
ausgewählt
Als Client-Ausgabe werden serverseitige Sprache und JavaScript verwendet. In dieser Frage zeigen wir Ihnen, wie Sie es verwenden
Die Lösung speichert die Daten auf der Client-Seite und zeigt sie in Chatrooms, News-Systemen oder an jedem anderen gewünschten Ort an
Die implementierte Anwendung erreicht eine minimale Datenübertragung zwischen dem Server und dem Client (Browser).
Bitte um Unterstützung von:
php4
Javascript
Rahmen
Hauptidee:
Wir haben versucht, mit PHP einen Chatroom zu entwickeln, der auf dem HTTP-Protokoll basiert (HTTP CHAT ROOM),
Obwohl das HTTP-Protokoll kein gutes Protokoll zum Chatten ist, wird es von Firewalls oder Proxys nicht beeinträchtigt
PHP kann diese Funktion vollständig implementieren, ohne JAVA-APPLETS zu verwenden. Es gibt zwei Hauptprobleme bei Chatrooms:
Da der IE erstens die SERVER PUSH-Technologie nicht unterstützt, können wir nur die CLIENT PULL-Technologie verwenden (d. h.
).
Automatische Aktualisierung auf dem Client), das zweite Problem liegt sogar noch tiefer: Denn die Idee besteht darin, die Aktualisierung auf dem Client, dem Server
, durchzuführen
Der Server muss jedes Mal alle Nachrichten übertragen, was eine große Menge an Datenübertragung bedeutet, was auch die Hauptursache für Chatroom-Verzögerungen ist
Aus den Hauptgründen versucht dieser Artikel, das Problem zu lösen:
Mithilfe der Frames-Technologie (Frames) können Sie die angegebene Seite aktualisieren, ohne andere Seiten neu laden zu müssen. Dies kann
Um den Umfang der Service-/Client-Datenübertragung (C/S) zu reduzieren. Unser Modell basiert auf diesem Schema.
„Master“-Datei: Definieren Sie die Framework-Struktur
Seite „Loader“: Daten importieren
Seite „Anzeige“: Daten anzeigen
Bei dieser Lösung wird die „Loder“-Box automatisch alle „x“ Sekunden aktualisiert – die Idee ist, die Daten im „Master“
zu speichern
Datei, sodass die „loder“-Seite nur Daten vom Server anfordern muss, die der Client nicht hat. Wir verwenden Zeitstempel (Zeitstempel)
Notieren Sie sich jede Nachricht, um zu bestimmen, welche Nachrichten an den Client gesendet werden müssen und welche nicht übertragen werden dürfen. Wir verwenden PHP4.0-Sitzungsverwaltung (Sitzung)
Speichern Sie den letzten aktualisierten Zeitstempel des Clients (letzter Zeitstempel), sodass der Zeitstempel sowohl für den Server als auch für den Client sichtbar ist. Wenn „Loader“-Datei
Wenn Daten aus der „Master“-Datei empfangen werden (Hinweis: Die „Master“-Datei ist groß, wird aber nur einmal übertragen), aktualisieren Sie die Anzeigeseite („diaplay“)
Die Seite „display“ ruft einfach die Javascript-Funktion namens „displaymsgs()“ in der „master“-Datei auf, um die Nachricht anzuzeigen. Diese Funktion wird dynamisch angezeigt
Die in der „Master“-Datei gespeicherten Daten, das Folgende ist das allgemeine Flussdiagramm:
1. Der Browser fordert die „Master“-Seite (Frame) an, die „Master“-Seite wird vom Server an den Client (Browser) übertragen und dann „Master“
Die Datei generiert das Framework und übergibt die „Loader“- und „Display“-Seiten an den Client.
2. Auf der Serverseite wird die „Loader“-Datei analysiert: Wenn der Client die Sitzungsvariable „timestamp“ nicht definiert, wird die „loder“-Datei
sein
Rufen Sie alle Daten vom Server ab, generieren Sie Javascript-Code, um die Daten in der „Master“-Datei zu speichern, und speichern Sie dann die Variable „Zeitstempel“ als
Sitzungsvariable.
3. Die „Loder“-Seite generiert Javascript-Code, um die „Anzeige“-Seite zu aktualisieren.
4. Die Aktualisierungsanforderung veranlasst die Seite „display“, die Javascript-Funktion „diaplaymsgs()“ aufzurufen, um Daten anzuzeigen
5. Gehen Sie alle „x“ Sekunden
zurück zu Schritt 2
Wir können es uns wie folgt vorstellen:
=============================================== ======
„Master“-Datei: sehr groß, definiert die Funktion displaymsgs() und speichert Daten und Anfangswerte.
„Loader“-Datei: klein, ruft Daten vom Server ab und generiert Javascript-Code
Datei „display“: sehr klein, ruft die Funktion „diaplaymsgs()“ der Datei „master“ auf
=============================================== =======
Hinweis: Die „Master“-Datei wird nur einmal gesendet
„loder“- und „display“-Dateien werden alle „x“ Sekunden aktualisiert
Der „Loder“ mag bei der ersten Übertragung sehr groß sein, in Zukunft wird er jedoch sehr klein sein
Die Datei „diaplay“ bleibt unverändert
Wenn Sie sich über die oben genannten Ideen immer noch nicht im Klaren sind, richten wir unten einen Chatroom ein, um die Methode im Detail zu erklären. Dieser Chatroom dient nur einer einfachen Demonstration
Daher ist es vielleicht nicht sehr nützlich, aber Sie können diese Idee definitiv zum Erstellen komplexerer Chatrooms verwenden. Denken Sie daran, dass diese Idee nicht nur für Chatrooms gilt. :)
Bitte verwenden Sie zunächst das MySQL-Datenbankformular:
===========================
Tabelle testbar erstellen (
Zeitstempel Datum/Uhrzeit,
Text
);
===========================
Die „Master“-Datei lautet wie folgt:
=============================================
lines=new Array();
Funktion displaymsgs() {
for(i=0;i
');
}
以上就介绍了php最小化数据传输:在客户端存储数据, 包括了客户端存储数据方面的内容,希望对PHP教程有兴趣的朋友有所帮助.