Die meisten Stiftungen. Wie funktioniert PHP.


  • Web - Anwendung Im Gegensatz zu regulären Programm
  • Wie funktioniert PHP, wo er durchgeführt?
  • Wie eine Variable von PHP zu JavaScript und umgekehrt zu übergeben?
  • Methoden der Kommunikation mit dem Server - Browser.
  • Anzeigen von HTTP - Header Austausch
  • SEHR WICHTIG
  • Kommentare

    Web - Anwendung Im Gegensatz zu regulären Programm
    Anfangen zu schreiben Programme für das Web, in denen viele beginnen Programmierer diesen Fehler. Sie sehen den Browser-Server-System wie eine normale Anwendung. Interactive. Er die Taste gedrückt - das System reagiert. Verbrachte eine Maus - antwortete ich. Alle Informationen, die dem Kunden zur Verfügung steht - und das Programm verfügbar ist, ist das Programm immer im Speicher.
    Also, in Web - Programmierung ist nicht so! .
    Zu einem Zeitpunkt , wenn der Benutzer eine Seite sieht und beginnt eine Aktion mit ihm zu machen, hat PHP bereits abgeschlossen Arbeit! Und nicht ein Benutzer interagiert mit einem PHP-Skript und dem HTML-Seite mit ihr, die er im Browser empfangen. Das Ergebnis eines PHP-Skript in den meisten Fällen ist Klartext. Der Text einer HTML-Seite. Wer hat den Browser und zeigt sie als normale HTML. Sie können selbst sehen, durch ein Skript zu schreiben
    <? echo "Привет, <b>Вася!</b>" ; ?> ; Und dann schaut in die Browser-Quellcode der Seite erhalten. Keine PHP-Tag ist nicht da! nur
    Привет, <b>Вася!</b>
    Da PHP auf dem Server ausgeführt!


    Der Server und der Browser kommunizieren , indem sie sich gegenseitig Anfragen für ein spezielles Protokoll Senden - HTTP. Die Verbindung kann nur einen Browser starten. Er sendet der Server eine Anforderung - eine bestimmte Datei anzuzeigen. Der Server sendet die Datei an den Client.
    Genau das, was passiert. Der Client angefordert - Server gab. Und sofort vergaß ich den Kunden. Es wird deutlich, Antwort auf die Frage, ob es möglich ist, genau zu wissen, wie viele Benutzer Séchas online. Sie können nicht. weil "vor Ort" hat keine. Sie sind verbunden, Anfrage Seiten und getrennt. Verwenden Sie keine permanente Verbindung zum Server, wie Spieler Kwaku haben. Erfahren, nur durch die Zeit jedes Verbindungsaufzeichnung und Aufzeichnungen für eine bestimmte Zeitdauer auswählen.

    Auch hier wird deutlich, dass der Server den Client identifizieren, ist sehr klein. Nur die Tatsache, dass der Client in der HTTP-Anforderung sendet. Bildschirmauflösungen sind nicht dazu da ;-)
    Alles, was der Server über den Client kennen, können Sie das Team sehen
    phpinfo()
    Beispiel Browser mit dem Server kommunizieren:
    Der Benutzer klickt auf den Link, sendet der Browser eine Anfrage an den Server und wartet auf eine Antwort:
    Browser -> PHP

    PHP führt das Skript aus, gibt das Ergebnis im Browser und Ausgänge:
    PHP -> Browser

    Der Browser macht die Seite, " auf der Suche" für ihre Links , die von dem Server (Tag <img src>, <script src angefordert werden sollte > , und so weiter) und sendet die entsprechenden Anfragen. Sie können durch Betrachten der Austausch von Titel zu sehen, da es gerade unter sein wird:
    Browser -> Server - Browser -> Server - Browser -> Server ...

    Der Benutzer füllt das Formular aus und klickt auf den Button:
    Browser -> PHP

    PHP behandelt die Form, schreiben Daten in die Datenbank und sendet den Browser Location - Header:
    PHP -> Browser

    Der Browser erhielt den Titel, da Seitenanfragen
    Browser -> PHP

    PHP führt es ... und so weiter.

    Wie funktioniert PHP, wo er durchgeführt?
    PHP läuft auf dem Server. Der Browser sendet eine Anfrage an einen Server mit PHP-Code-Seite. Der Server der Seite sendet den Interpreter PHP auszuführen, erzeugt Interpreter HTML-Code, der den Server gibt, und der Server an den Client sendet. Kein PHP-Code im Browser nicht bekommen (das ist wichtig! Das bedeutet, dass das PHP-Script-Code ist nicht möglich, zu sehen!). Der einzige Weg, etwas, um das Skript zu schicken - ist auf den Link klicken oder das Formular auf den Button klicken. Damit PHP einige Benutzeraktionen im Browser Griffe - es ist unmöglich. PHP links auf dem Server für neue Anforderungen an die Daten für die Verarbeitung wartet. PHP, aber nicht Skript! Das Skript, das durchgeführt wurde, gibt dem Anwender eine Seite der Arbeit beendet hat. Alle Daten, die in ihm war - verschwunden. Deshalb, wenn eine Variable für nachfolgende Aufrufe an das Skript benötigt wird, ist es notwendig, wieder dieses Skript zu übergeben.

    Wie eine Variable von PHP zu JavaScript und umgekehrt zu übergeben?
    Lassen Sie uns beginnen mit der Tatsache, dass keine Variable übergeben wird, natürlich unmöglich. Da die Variable - ist ein Teil des Programms. Und von einem zum anderen nalzya es passieren. Senden einzige Variable. dh Text. Das heißt, die Differenz zwischen der "Übertragung Variable in JavaScript" und die Bildung von HTML-Tabelle NO NO!
    Daraus ergibt sich die Schlussfolgerung - "Übergeben Sie die Variable" in Javascript ist sehr einfach. Vor allem, ich wiederhole, wenn man bedenkt, dass es keine "Übertragung" ist nicht auf. Ganz einfach erzeugt PHP JavaScript, um die gleiche Art und Weise wie der Rest der Seite, zusammen mit allen Variablen.
    In der gleichen Weise, wie Sie eine Zeile im Browser ziehen "Hallo Welt, das ist John Doe!" Angezeigt und jede JavaScript, mit all seinen Variablen.
    Die einzige Bedingung - Sie haben die Javascript Sie erhalten möchten, sich vorzustellen.
    Zum Beispiel in PHP gibt es eine Variable $name = "Вася" $name = "Вася" Dessen Wert sollte auf JavaScript übertragen werden, zu erhalten
    <script>name="Вася";</script>
    Wir haben gerade schreiben
    <?
    $name
    = "Вася" ;
    ?>
    <script>name=" <? echo $name ; ?> "</script>
    <?
    $name
    = "Вася" ;
    ?>
    <script>name=" <? echo $name ; ?> "</script>
    Echo $ name;?>" </ Script> Das ist in der Tat haben wir gerade unser PHP - Skript gebildet wird , einen Text, wie Sie uns Javascript zu codieren wollen aussieht. Oder auf der anderen Seite, schrieben wir eine Javascript an den richtigen Stellen, indem sie die Ausgangsvariablen von PHP einsetzen.
    Um die verschiedenen Zitate nicht zu verrückt, ist es dringend empfohlen, das alle Javascript Ausgang nicht über das Echo, und genau so, wie hier geschrieben - PHP-Tag zu schließen und nur sie zu öffnen, wo Sie die Variable angezeigt werden soll.

    Wie eine Variable von JavaScript an PHP übergeben?
    Genau wie alle anderen Daten - eine Anfrage an den Server sendet.
    Aber wir müssen klar verstehen, dass etwas aus dem Javascript zu bekommen, natürlich nicht möglich, während der Ausführung von PHP-Skript. Kann nur auf die nächste Anforderung übertragen. Und damit umgehen wird ein weiteres PHP-Skript sein.
    Bei Bedarf aber rbratitsya onClick Ereignis einer Datenbank, sollte daran erinnert werden, dass es auf dem Server ist. Das heißt, ist es notwendig, einen Server anzufordern, die PHP-Skript ausgeführt wird, die auf die Datenbank ansprechen wird, eine Antwort von ihr bekommen und sie an den Browser geben.

    natürlich Mode Technologie asynchrone Kommunikation mit dem Server-Browser Alle oben steht nicht im Widerspruch. Alle Methoden sind die gleichen, nur die Kommunikation mit dem Server führt den Browser nicht selbst, sondern auf JavaScript-Programm.
    Weitere Details finden Sie auf den JavaScript gewidmet Ressourcen gelesen werden. Aus der Sicht von PHP AJAX-Anforderungen unterscheiden sich nicht von den üblichen.

    Methoden der Kommunikation mit dem Server - Browser.
    Wege durch das HTTP-Protokoll vorgesehen ist, ein wenig. Dies ist eine wichtige Information. Keine andere Art und Weise ist nicht vorhanden. In der Praxis verwenden zwei:
    GET - das ist , wenn die Daten in der Adressleiste übertragen wird, zum Beispiel, wenn der Benutzer auf einen Link klickt.
    POST - wenn er drückt einen Knopf auf dem Formular.
    Geformt Seite mit einem Link oder einer Form der GET-Methode - kommt eine Anforderung GET-ten. Gebildet mit der Form, in der die angegebene POST-Methode - POST-ten kommen.
    Um zu bestimmen, welches Verfahren verwendet werden soll, ist es sehr einfach. Wenn das Formular verwendet, um bestimmte Informationen zu verlangen, zum Beispiel - bei der Suche, sollte es die GET-Methode senden. Um die Seite zu aktualisieren, können Sie Lesezeichen und oder an einen Freund senden.
    Wenn als ein Ergebnis der Formularübermittlung Daten geschrieben oder auf dem Server geändert, sollten Sie sie auf der POST-Methode, zu senden und sicher nach der Form der Verarbeitung ist notwendig, den Browser mit der GET-Methode umgeleitet werden. Auch kann POST erforderlich sein, wenn der Server ist notwendig, eine große Menge an Daten zu übertragen (in GET es sehr begrenzt ist), sowie wenn das "Licht" sollte nicht auf die Daten in der Adressleiste übergeben werden (wenn Sie den Benutzernamen und das Passwort eingeben, zum Beispiel). Aber in jedem Fall nach der POST-Verarbeitung sollte immer den Browser zu einer Seite umleiten, auch wenn die gleiche, aber ohne die Formulardaten an das Upgrade nicht neu geschrieben Seite. Zum Beispiel:
    header ( "Location: http://" . $_SERVER [ 'HTTP_HOST' ]. $_SERVER [ 'REQUEST_URI' ]);
    exit;

    Die wichtigste Sache zu erinnern: der Server, auf eigene Initiative an den Client anwenden kann nicht. Wir können nur auf Anfrage etwas an den Browser zu geben - oder Seite, oder klicken Sie auf eine andere Ressource zu beantragen.

    Nützliche Informationen können in verschiedenen HTTP-Header enthalten sein.
    Cookie - wenn der Server ein Cookie gesetzt, und es ist auf dem neuesten Stand, sendet der Browser es mit jeder Anforderung an.
    HTTP - Authentifizierung - wenn der HTTP - Server - Authentifizierung anfordert, sendet der Browser bei jedem Adresse Login und Passwort eingegeben.

    PHP kann HTTP - Header an zwei Teams senden - header () und setcookie ().

    Anzeigen von HTTP - Header Austausch
    Ich empfehle mit HTTP-Header zu üben, wie sie Exchange Server und dem Client.
    Dazu gibt es viele verschiedene Möglichkeiten. Wenn Sie einen beliebten Download-Manager FlashGet haben, können Sie es verwenden. Nur Header zeigt populäre Proxomitron Programm können Sie spezielle Tools herunterladen.
    Auch gibt es viele andere Dienstprogramme, leicht von HTTP-Sniffer Anforderung im Netzwerk gefunden werden.
    Achten Sie darauf, alle Mittel zu verwenden, um die HTTP-Header zu sehen, dass der Browser mit dem Server kommuniziert. Dies ist eine sehr gute Praxis, sowie Check - die Ihr Skript sendet. Es ist bequem, wenn Probleme Installation von Cookies oder Sitzungen debuggen.
    Eine grobe Vorstellung davon , wer kam Titel können auch mit Hilfe der Funktion getallheaders () ermittelt werden. Aber es sollte nicht vergessen werden, dass es nur funktioniert, wenn PHP als Modul kompiliert wird.

    SEHR WICHTIG
    Aus der Tatsache, dass PHP auf dem Server ausgeführt wird, und sendet das Ergebnis an den Browser, sollte es eine einfache, aber sehr wichtige Schlussfolgerung ist. Was PHP im Prinzip nicht in einem Browser angezeigt werden, ist nichts, was nicht durch html getan werden könnte.
    Bevor Sie etwas auf PHP schreiben - probieren Sie es reine HTML zu machen.
    "Durch Drücken von Enter" nicht die Zeichenfolge übersetzen? Und in html Sie nicht versuchen, so Newline? Hat nicht funktioniert? Was für eine Schande. Lesen Sie, wie in html einen Zeilenumbruch zu machen und kommen zurück.

    PHP als Ergebnis ihrer Arbeit bildet das Bild ohne Text, wie Sie es auf dem Bildschirm zu sehen! PHP erzeugt HTML-Code! Und dieser Code unterscheidet sich deutlich von dem Bild, das Sie auf dem Bildschirm sehen. Wenn Sie etwas nicht funktioniert, müssen Sie immer genau den Quellcode der Seite sehen, und nicht, wie es zieht Sie Browser. Im Internet Explorer kann der Quellcode, indem Sie auf das Menü Ansicht angezeigt werden - Ansicht den HTML-Code.
    Wenn Sie nicht laufen Javascript erzeugt PHP-Skript oder HTML zeigt nicht das, was Sie wollen, dann ist dies einfach, das Problem zu beheben.

    1. Zuerst schreiben Sie die notwendigen JavaScript oder HTML - Hände. Wenn Sie ein Problem haben - bitte das entsprechende Forum kontaktieren - für JavaScript oder HTML. PHP nichts zu tun mit.
    2. mit denen zu vergleichen, aus dem PHP erhalten
    3. Um Korrekturen in der PHP-Skript auf den Text, machen ihnen zu geben, nicht von unterschied, was mit der Hand geschrieben.

    Der Browser kann keine Dateien angezeigt werden, die sowohl HTML-Bilder vollgestopft. Der Browser kann nur ihm bekannten Datentypen anzuzeigen. Insbesondere diese oder html oder Bilder. Aber nicht zusammen. Wenn das Bild - der ONE. Einige Bilder zeigen den Browser in einer Reihe nicht. Der Browser kann HTML angezeigt werden, die die Verweise auf mehrere Bilder definiert.
    Bitte, bevor Sie PHP lernen - lernen zumindest die Grundlagen HTML! Bevor Sie etwas von PHP verlangen - versuchen Sie es auf den HTML-Code zu tun.