Sie sind hier: Startseite -> PHP-Codeschnipsel -> Inhalt dynamisch einfügen

Mit PHP Inhalt dynamisch einfügen

Einfache Lösung für umfangreiche Seiten

Im Normalfall schreibt man auf seinen Webseiten die Texte, ergänzt mit Bilder und/oder Video und speichert das Ganze ab, um es online anbieten zu können. Zentral wird man vielleicht Online Werbung festlegen, die automatisch eingefügt wird. Dazu gibt es auch Lösungen, bei denen per Skript automatisiert Werbebanner geschaltet werden können, aber dabei fehlt es oft an Kontrolle.

Interessant ist, dass schon alleine wegen der vielen Handynutzung Werbung und andere zusätzliche Inhalte im obersten Bereich der Seite nicht mehr gefragt ist. Aber es ist nicht möglich, dynamisch und nachträglich mitten im Text etwas einzubauen. Falsch. Es geht mit PHP sogar sehr einfach.

Ausgangslage für den dynamischen Inhalt

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

Wir haben es mit einem x-beliebigen Artikel und zwei normalen Absätzen zu tun. Zwischen diesen Absätzen soll nun ein nachträglicher Inhalt eingebaut werden.

Was wir wollen

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

Hier steht jetzt ein neuer Inhalt

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

Inhalt dynamisch mit PHP einfügen

Wie sieht die Lösung aus? Sie ist fast schon peinlich einfach. Was man braucht, sind zwei PHP-Befehle und das war es dann auch schon wieder.

$text1 = utf8_encode($obj->text1);
$content_table = explode("", $text1);

In die Variable $text1 liest man aus der Datenbank den Text ein, der im aktuellen Beispiel sinnigerweise vom Datenfeld text1 kommt. Statt diesen aber auf der Seite anzuzeigen, wir er mit dem PHP-Befehl explode zerlegt und zwar in Absätze, also dem HTML-Tag p. Das heißt, im Speicher steht jetzt der Text als Array zur Verfügung und jede Einheit besteht aus einem Absatz.

$absatz_menge = count($content_table);

Die Variable $absatz_menge zählt nun mit dem PHP-Befehl count wie viele Absätze wir haben. Im aktuellen Beispiel also zwei Stück.

$content_table[1] .= "Hier steht jetzt ein neuer Inhalt";

Nun fügen wir nach dem ersten Absatz unseren neuen Inhalt ein. Das wird erreicht, indem der Wert [1] aus dem Array genutzt wird und mit der Zeichenfolge .= wird in PHP weiterer Inhalt angehängt. Das heißt, der bekannte Absatz bekommt eine Ergänzung.

In dem Fall ist es der oben schon präsentierte Satz, das könnte jetzt aber auch der Code für Werbung, ein Video oder eine Bildergalerie sein.

$text1 = implode($content_table, "");

Und jetzt kommt das Gegenteil, nämlich der PHP-Befehl implode, der alle Absätze wieder zu einer Einheit zusammenführt und $text1 übergeben wird. Damit steht der Text wieder zur Verfügung, hat aber die angeführte Ergänzung mit im Gepäck. Wenn man nun den Text auf der Seite darstellt, ist der eingefügte Satz auch enthalten.

Wozu brauche ich das?

Eine häufige Anwendung ist tatsächlich eine nachträgliche Ergänzung wie die Online Werbung. Wenn man verschiedene Werbeformen ausprobieren möchte, kann man mit diesen wenigen Skriptzeilen an unterschiedlicher Position Banner schalten und schauen, ob diese angenommen werden.

Ergänzend kann man diese Abfrage durchführen:

if($absatz_menge > 8) {
$content_table[7] .= "irgendein Inhalt";
}

Dabei wird abgefragt, ob der Artikel mehr als 8 Absätze hat und falls ja, wird nach dem siebenten Absatz der hier eingetragene Inhalt angezeigt.

Das heißt, dass man dynamisch auf den Inhalt reagieren kann. Stellen Sie sich vor, sie haben eine Seite mit 500 Artikel und wollen selbst bestimmen, wo Werbung stehen soll. Dann können Sie mit diesem kleinen Tipp vollautomatisch alle 500 Artikel bestücken. Nach dem 2. Absatz ist zu weit oben? Kein Problem - ändern Sie von 2 auf 3 und alles ist erledigt. Sie haben sehr kurze Texte? Kein Problem - mit der Abfrage können Sie das regeln und nur bei langen Texten wird zusätzliche Werbung angezeigt.

Mit diesen einfachen Überlegungen können Sie genauso automatisiert agieren wie es die großen Werbenetzwerke durchführen - allerdings müssen Sie sich mit den Werbebannern herumschlagen.

Eine Idee ist auch, dass man zum Beispiel Veranstaltungshinweise mit einem Rahmen integriert, die man später wieder herausnehmen möchte. Für die Zeit der Ankündigung wird dieser Veranstaltungshinweis eingebaut und wenn die Veranstaltung läuft, löscht man den Eintrag einfach im Hauptdokument und alle 500 Artikel sind wieder davon befreit - einfacher geht es nicht.

Lesen Sie auch

Mit PHP kann man natürlich ganze Webseiten realisieren, aber oft braucht es nur kleine Codes für bestimmte Lösungen, die dann Teil des ganzen Großen werden. Ein Thema hat mit den Rahmenbedingungen zu tun wie etwa das Auslesen der IP-Adresse eines Besuchers, eine andere Lösung besteht darin, die Herkunft des Besuchers zu ermitteln. Auch das Verschlüsseln einer Mailadresse zum Schutz vor Spam kann wichtig sein, speziell für E-Mail-Adressen, die auf der Webseite angeführt werden (Kontaktadressen zum Beispiel).

Das Ermitteln der Bildgröße ist auch immer wieder gefragt und mit PHP sehr einfach zu lösen. Das Datum manipulieren ist überhaupt besonders oft in Skripte ein Thema. Interessant ist auch die Lösung mit einer Zufallszahl per PHP.

Beim Text gibt es so manche Problemstellung. Wie mit CSS kann man auch in PHP Großbuchstaben festlegen, was mitunter direkt im Skript besser gelöst sein mag. Die Textlänge ist oft gefragt, speziell bei kürzeren Formularfeldern oder kleinen Inhaltsbereichen, bei denen dann ein Kürzen anzudenken ist.

Spannend sind auch große Lösungen mit geringem Aufwand wie das dynamische Hinzufügen von Inhalt.

Themenseiten

Diesen Artikel teilen

Infos zum Artikel

Inhalt mit PHP dynamisch einfügenArtikel-Thema: Mit PHP Inhalt dynamisch einfügen
Beschreibung: Das 🖥 Praxisbeispiel zeigt, wie man mit PHP sehr einfach nachträglichen Inhalt (Werbung, Hinweise, Ergänzungen) in den ✅ Inhalt aufnehmen kann.

Kategorien

Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen

Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel
Praxisartikel