Dynamisches HTML Unterschied PHP/Javascript?

4 Antworten

Ich würde die Trennung nicht an funktionalen Aspekten festmachen, sondern nur am Kriterium "Was spielt sich auf dem Client ab? Was auf dem Server?"

Der Client (Webbrowser) versteht HTML, CSS und Javascript. Damit kann man komplette, interaktive Anwendungen schreiben, die lokal ablaufen. Im Internet Explorer gab es mal die "HTML-Applikationen", sie haben sich aber nicht durchgesetzt. Denn zwei zentrale Probleme aller lokalen Desktop-Anwendungen werden dadurch nicht gelöst: 1. Wie kommt die Anwendung (und Updates davon) überhaupt auf den lokalen Rechner? 2. Wie erreiche ich eine zentrale Datenhaltung, ohne Datenbankzugriffs-Software auf die Clients auszurollen und zu konfigurieren?

Die Antwort ist der Webserver: 1. wird gelöst, indem die Anwendung zentral dort liegt und vor der Benutzung zum Client (Webbrowser) gesendet wird. 2. wird gelöst, indem man die Kommunikation mit der Datenbank auf den Webserver verlagert.

Serverseitige Programmierung (z.B. mit PHP) kommt dann ins Spiel, wenn der Server keine statischen, sondern zur Laufzeit auf dem Server errechnete oder ermittelte Daten an den Client senden soll. Das kann so aussehen, dass der Webserver einfach HTML zum Client sendet. Manchmal braucht man aber auch komplexere Sachen, wo sich quasi ein Zwiegespräch zwischen Client und Server entspannen soll. Dafür nimmt man dann gerne wieder Javascript auf dem Client und dazu passende serverseitige Programmierung.

Wenn PHP läuft, dann nie auf dem Client, immer auf dem Server. Auch wenn eine Webseite die Endung ".php" haben sollte - das heißt nicht, dass der Browser PHP interpretieren könnte.

Javascript lief dagegen ursprünglich nur auf dem Client. Das hat sich inzwischen geändert, es gibt auch Webserver, die mit Javascript arbeiten.

Woher ich das weiß:Berufserfahrung – Langjährige Berufserfahrung als IT-Berater

Mal ganz grob zusammengefasst:

PHP benutzt man z.B. überall wo man auf Datenbanken zugreifen will, Login-Systeme realisieren, "includes" benutzt werden (damit man z.B. nicht auf jeder Unterseite manuell ein Menü einfügen muss, und entsprechend bei Änderungen auch auf jeder anpassen) etc, also im Grunde alles, was Serverseitig ausgeführt wird.

JavaScript dagegen wird nicht vom Server sondern vom Browser ausgeführt und daher für clientseitige Funktionen genutzt, z.B. Manipulationen von DOM Objekten (verschieben / verändern von Teilen einer Webseite ohne diese neu laden zu müssen) und ähnliches.

Zusätzlich gibt es dann noch Ajax, welches im Grunde beide Techniken kombiniert indem innerhalb des JavaScript ein HTTP Request ausgeführt wird, durch den Informationen mit Hilfe von PHP (oder einer anderen Serverseitigen Sprache) z.B. aus einer DB geholt oder andere Serverseitige Aktionen durchgeführt werden, ohne dass die eigentliche Seite neu geladen werden muss.


perhp  25.04.2016, 11:17

JavaScript könnte man jetzt auch serverseitig machen zB. mit Hilfe von node.js, deswegen würde ich die Trennung zwischen JS und PHP nicht mehr so hart trennen. Aber früher war es eindeutig so.

0

Dann gibt es dynamisches HTML, wo durch die Einbindung von javascript und php weitere Funktionen implementiert werden. 

Also irgendwas stimmt mit deiner Idee/Abgrenzung von dynamisch und statisch nicht so recht.

"Dynamisches HTML" ist jedenfalls laut https://de.wikipedia.org/wiki/Dynamisches_HTML im Wesentlichen HTML + JavaScript.

Woher ich das weiß:Berufserfahrung – Studium + Berufspraxis

Grundsätzlich kann man sagen das HTML Scripte auf dem Client ausgeführt werden, PHP Scripte auf dem Server.
Ob man das so immer aufsplitten kann wie von Dir beschrieben, kann ich jetzt nicht nachvollziehen. Ich verwende zB auch kein Javascript um die Ausführung von Webseiten auf möglichst vielen Browsern funktionsfähig zu halten.