Tips

Auf diesen Seiten werde ich nach und nach verschiedene Tips und Tricks zu diversen computerrelevanten Themen veröffentlichen. Zur Zeit sind diese Seiten noch im Aufbau, daher kann es sein, daß noch nicht alle Elemente einwandfrei funktionieren.

Der Tip des Tages

[Web Publishing - PHP]

Schlagworte: MIME-Typ, HTTP, Dateityp

Richtigen Dateityp mit PHP ausgeben

PHP sendet im Normalfall die Ausgabedaten immer mit dem MIME-Typ text/html. Wenn Sie mit PHP jedoch ein Bild erzeugen und direkt ausgeben oder XML-Daten ausgeben, dann sollten die Daten auch mit dem richtigen Dateityp gekennzeichnet werden.

In PHP benutzt man dafür den header()-Befehl

header('Content-Type: image/png')

um im HTTP-Header den jeweiligen MIME-Typ der Ausgabedaten zu setzen.

Der header()-Befehl muß vor jeglicher PHP-Ausgabe aufgerufen werden. Wenn vorher schon Daten ausgegeben wurden - z.B. mit dem echo-Befehl, dann wurden die Header-Daten schon versendet und die Daten schon als text/html gekennzeichnet. Beachten Sie auch, daß eine vorherige Ausgabe von Daten auch implizit passieren kann - z.B. durch Leerzeichen, Zeilenumbrüche u. ä. außerhalb von <?php ... ?> oder durch eventuelle Fehler- oder Warnmeldungen des Skriptes.

Bewerten Sie diesen Tip:

6 Stimmen: o

Der Zufallstip

[Web Publishing - CSS]

Schlagworte: PHP, CSS

Dynamische CSS-Dateien mit PHP

Gelegentlich ist es erforderlich, in einer HTML-Datei je nach Anforderungen unterschiedliche Stylesheets einzubinden. Beispielsweise wählt ein registrierter Benutzer eine eigene, frei definierbare Farbkombination, die gespeichert und für das Anzeigen der Seite verwendet werden soll. Oder man möchte abends ein anderes Design als tagsüber haben. Dann ist es sinnvoll, die entsprechende CSS Datei dynamisch zu erzeugen. Mit PHP geht das folgendermaßen.

Man erzeugt eine PHP-Datei stil.php, die folgende Struktur hat:

<?php
header("Content-type: text/css");
...
if ($nacht) {
echo 'body {background-color:black; color:white;}';
}
else {
echo 'body {background-color:white; color:black;}';
};
?>

Das PHP-Skript liefert also CSS-Anweisungen zurück, die je nach Tageszeit unterschiedlich sind. Das Skript wird nun in den HTML-Dateien mit <link rel="stylesheet" type="text/css" href="stil.php"> eingebunden. Der header()-Befehl sorgt im Skript dafür, daß die Datei als CSS-Datei erkannt wird.

Man kann den Webserver natürlich auch so einstellen, daß Dateien mit der Endung .css von PHP geparst werden. In diesem Fall kann man dem Stylesheet die gewohnte Endung .css geben.

Bewerten Sie diesen Tip:

28 Stimmen: +

Die beliebtesten 10 Tips

Die neuesten 10 Tips

Haben Sie eine Frage oder einen Tip?




Buchtips