wrtlprnft.de - Erste Schritte (PHP)

Damit eine Datei vom Server als PHP-Script interpretiert wird muss sie die Endung *.php oder *.phtml besitzen (Es gibt noch weitere mögliche Ändungen, Sie können diese aber auch zum Beispiel in der .htaccess ändern.).
Sie können die Endung einer beliebigen HTML-Datei in php umbenennen, sie wird vom Browser trotzdem nicht anders angezeigt als davor. Das liegt daran, dass nur interpretiert wird, was zwischen den Tags <?php und ?> steht. Der Rest wird unverändert zum Browser gesendet.

Hier steht HTML-Code.
<?php
	Und hier ist PHP-Code.
?>
Hier ist wieder HTML.
Vorschau des Ergebnisses

Wenn Sie diesen Code auf einen Server hochladen werden Sie eine Fehlermeldung im PHP-Stil bekommen, nämlich
Parse error: parse error, unexpected T_STRING in
{Verzeichnis} on line 3
Das ist also die Art des PHP-Interpreters, Ihnen einen Fehler mitzuteilen. Der Fehler wird einfach als Datei an den Browser gesendet. Meist wird zudem die Ausführung des Skripts abgebrochen und keine weiteren Daten an den Browser gesendet.
Doch wie schaut jetzt korrekter Code aus? Hier ist ein Beispiel, wie ein funktionierendes Skript ausschaut:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title>
   <?php
    print('Hallo Welt!');
   ?>
  </title>
 </head>
 <body>
  <?php
   print('Das ist ein Test!<br><br>Auch HTML-Tags sind erlaubt!');
  ?>
 </body>
</html>
Vorschau des Ergebnisses

Die Zeilennummern gehören nicht zum Quellcode, sie dienen nur der Erklärung.
1−5: Die Datei beginnt wie jedes andere HTML-Dokument mit den üblichen einleitenden Tags. Hier wird kein PHP interpretiert, der Text wird ohne Änderung direkt an den Browser übertragen.
6: Dieser Tag leitet den PHP-Teil ein. Bis zu dem Tag ?> wird alles als PHP interpretiert. In diesem Bereich dürfen nur PHP-Befehle stehen.
7: Dieser Befehl bewirkt die Ausgabe des Textes Hallo Welt! in das zu sendende Dokument.
der auszugebende Text muss sowohl in Klammern als auch in einfachen Anführungszeichen stehen. Die Anführungszeichen zeigen, dass es sich bei dem in ihnen stehenden Zeichen um eine Zeichenkette handelt und nicht um PHP-Code. Die Klammern zeigen, dass die Zeichenkette zur Funktion print() gehören, dazu aber in einem späteren Kapitel.
Zudem endet dieser Befehl, wie jeder PHP-Befehl, auf ein Semikolon (';').
8: Hier wird der <?php-Tag wieder geschlossen. Das folgende HTML wird wieder unverändert an den Browser gesendet.
12−14: Wieder ein PHP-Tag, von dem in einer Datei beliebig viele vorkommen können.
13: Dieser Befehl gibt analog zu dem in Zeile 7 den Text
Das ist ein Test!

Auch HTML-Tags sind erlaubt!

auf dem Bildschirm aus.

Zusammenfassung


Zur Übersicht
Zurück zu: PHP - Was ist das?
Weiter zu: PHP - Der Umgang mit Variablen

wrtlprnft.de - Erste Schritte (PHP)
Logo

wrtlprnft.de - Erste Schritte (PHP)


Zur Navigation
Sie sind hier: wrtlprnft.dePHP-Tutorial → Erste Schritte
URI dieser Seite: http://wrtlprnft.de/index.php?page=phpersteschritte

Damit eine Datei vom Server als PHP-Script interpretiert wird muss sie die Endung *.php oder *.phtml besitzen (Es gibt noch weitere mögliche Ändungen, Sie können diese aber auch zum Beispiel in der .htaccess ändern.).
Sie können die Endung einer beliebigen HTML-Datei in php umbenennen, sie wird vom Browser trotzdem nicht anders angezeigt als davor. Das liegt daran, dass nur interpretiert wird, was zwischen den Tags <?php und ?> steht. Der Rest wird unverändert zum Browser gesendet.
Hier steht HTML-Code.
<?php
	Und hier ist PHP-Code.
?>
Hier ist wieder HTML.
Vorschau des Ergebnisses

Wenn Sie diesen Code auf einen Server hochladen werden Sie eine Fehlermeldung im PHP-Stil bekommen, nämlich
Parse error: parse error, unexpected T_STRING in
{Verzeichnis} on line 3
Das ist also die Art des PHP-Interpreters, Ihnen einen Fehler mitzuteilen. Der Fehler wird einfach als Datei an den Browser gesendet. Meist wird zudem die Ausführung des Skripts abgebrochen und keine weiteren Daten an den Browser gesendet.
Doch wie schaut jetzt korrekter Code aus? Hier ist ein Beispiel, wie ein funktionierendes Skript ausschaut:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title>
   <?php
    print('Hallo Welt!');
   ?>
  </title>
 </head>
 <body>
  <?php
   print('Das ist ein Test!<br><br>Auch HTML-Tags sind erlaubt!');
  ?>
 </body>
</html>
Vorschau des Ergebnisses

Die Zeilennummern gehören nicht zum Quellcode, sie dienen nur der Erklärung.
1−5: Die Datei beginnt wie jedes andere HTML-Dokument mit den üblichen einleitenden Tags. Hier wird kein PHP interpretiert, der Text wird ohne Änderung direkt an den Browser übertragen.
6: Dieser Tag leitet den PHP-Teil ein. Bis zu dem Tag ?> wird alles als PHP interpretiert. In diesem Bereich dürfen nur PHP-Befehle stehen.
7: Dieser Befehl bewirkt die Ausgabe des Textes Hallo Welt! in das zu sendende Dokument.
der auszugebende Text muss sowohl in Klammern als auch in einfachen Anführungszeichen stehen. Die Anführungszeichen zeigen, dass es sich bei dem in ihnen stehenden Zeichen um eine Zeichenkette handelt und nicht um PHP-Code. Die Klammern zeigen, dass die Zeichenkette zur Funktion print() gehören, dazu aber in einem späteren Kapitel.
Zudem endet dieser Befehl, wie jeder PHP-Befehl, auf ein Semikolon (';').
8: Hier wird der <?php-Tag wieder geschlossen. Das folgende HTML wird wieder unverändert an den Browser gesendet.
12−14: Wieder ein PHP-Tag, von dem in einer Datei beliebig viele vorkommen können.
13: Dieser Befehl gibt analog zu dem in Zeile 7 den Text
Das ist ein Test!

Auch HTML-Tags sind erlaubt!

auf dem Bildschirm aus.

Zusammenfassung


Zur Übersicht
Zurück zu: PHP - Was ist das?
Weiter zu: PHP - Der Umgang mit Variablen


Sie sind Besucher Nummer
Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /www/htdocs/v096179/counter.php:2 Stack trace: #0 /www/htdocs/v096179/index.php(65): include() #1 {main} thrown in /www/htdocs/v096179/counter.php on line 2