DynPG in eine Webseite einbinden: Unterschied zwischen den Versionen

Aus DynPG-Wiki
Wechseln zu: Navigation, Suche
(Infobox-Templates eingefügt)
 
(14 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
[[Category:Integration_in_eine_Webseite]]
 
[[Category:Integration_in_eine_Webseite]]
Hier wird davon ausgegangen, dass DynPG bereits installiert und konfiguriert ist! Wenn dies nicht der Fall ist, schauen Sie zuerst im Kapitel [[:Category:Installation und Update|Installation und Update]] nach.
+
{{Einführungsartikel}}
  
Glückwunsch! DynPG ist also installiert und kann bereits, mit Hilfe des sogenannten "BackEnds", konfiguriert werden. Nun will ich daran gehen ein Minimalbeispiel für die Einbindung in eine Website zu zeigen. Wir erstellen nun eine Datei mit bspw. dem Namen '''''"index.php"'''''. Die Ordnerstruktur könnte dann in etwa so aussehen:  
+
== Einbinden von DynPG ==
 +
DynPG kann in jede beliebige HTML-Seite eingebunden werden. Dies geschieht, indem zuerst die entsprechende HTML-Datei mit der Endung <tt>.php</tt> versehen wird. Die Integration erfolgt nun durch Einfügen folgender Zeilen am Anfang der Seite:
  
[[Image:sample1_dirstructure.jpg|Abbildung 2.1. Ordnerstruktur des Minimalbeispiels]]
+
'''Snippet - Einbinden von DynPG'''
 +
<code>[php,N]
 +
<?php
 +
  require('../cms/getcontent.php');
 +
  $GLOBALS["DynPG"]->SetParam_PathToRoot('../cms/');
 +
?>
 +
</code>
  
Im Ordner '''''"cms"''''' ist also unser CMS installiert. Nun füllen wir die Datei mit etwas Standard-Html-Code:
+
{{Note
{{-}}
+
|die relativen Pfadangaben müssen an den Speicherort Ihrer DynPG-Installation angepasst werden.}}
<code>[php, N]
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
+
<head>
+
<title>Minimalbeispiel</title>
+
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+
</head>
+
  
<body>
+
'''Erklärung''':
Hallo Welt!
+
</body>
+
  
</html>
+
Diese Zeilen müssen Sie als erstes in jeder PHP-Datei, in der Sie DynPG nutzen wollen, angeben. Dadurch werden die Anweisungen für die Code-Snippets von DynPG verfügbar gemacht.
</code>
+
  
Nun wollen wir DynPG einbinden und dazu schreiben wir die folgenden Zeilen in den Kopf von "index.php":  
+
* ''Zeile 1'': Die erste Zeile muss den Pfad zur Datei mit dem Namen <tt>getcontent.php</tt> enthalten. Diese Datei befindet sich im Hauptverzeichnis von DynPG. Da es sich um eine relative Pfadangabe handelt, erfolgt die Angabe ausgehend vom Verzeichnis, in dem sich die gerade bearbeitete PHP Datei befindet.  
 +
* ''Zeile 2'': In der zweiten Zeile geben Sie das Verzeichnis an, in dem Sie DynPG installiert haben. Auch hier erfolgt die Angabe ausgehend vom Vezeichnis, in dem sich die gerade bearbeitete PHP Datei befindet. Um ein höheres Verzeichnis zu erreichen schreiben Sie zwei Punkte ( <tt>..</tt> ). Jede Ordnerangabe müssen Sie mit einem "Slash" ( <tt>/</tt> ) abschließen.
  
<code>[php, N]
+
'''Ein einfaches Beispiel''':
 +
 
 +
Nehmen wir an, Sie haben die folgenden Dateistruktur auf Ihrem Server:
 +
* die Datei <tt>beispielseite.php</tt> liegt im Verzeichnis <tt>seiten/beispielseite.php</tt>.
 +
* die Dateien von DynPG sind im Verzeichnis <tt>dynpg/</tt> gespeichert
 +
* die Ordner <tt>seiten/</tt> und <tt>dynpg/</tt> befinden sich im selben Verzeichnis
 +
 
 +
Die Pfadangaben sehen dann folgendermaßen aus:
 +
<code>[php,N]
 
<?php
 
<?php
require 'cms/getcontent.php';
+
  require('../dynpg/getcontent.php');
$DynPG->SetParam_PathToRoot('cms/');
+
  SetParam_PathToRoot('../dynpg/');
 
?>
 
?>
 
</code>
 
</code>
  
Dieser Code dient dazu alle Funktionalitäten von DynPG in der aktuellen HTML-Datei verfügbar zu machen. In Zeile 3 muss der relative Pfad zu dem DynPG-Ordner (hier "cms/") stehen.  
+
{{Note
 +
|die relativen Pfadangaben müssen an den Speicherort Ihrer DynPG-Installation angepasst werden.}}Wenn Sie ein Snippet mit dem <tt>include</tt> Befehl von PHP in eine Seite einbinden, die DynPG bereits auf diese Weise eingebunden hat, dann können Sie diese Zeilen in dem Snippet, dass Sie einbinden möchten, weglassen.}}
  
[[Image:caution.png]] '''Achtung!''' Diese beiden Zeilen müssen unbedingt an oberster Stelle in der Datei stehen (ohne führende Freizeile!!)
+
== Minimalbeispiel ==
 
+
Zum Testen der Einstellung können Sie das folgende Minimalbeispiel verwenden. Passen Sie hier die ersten beiden Zeilen wie im vorherigen Abschnitt beschrieben an. Wir wollen zudem gleich eine Liste aller im Backend vorhandenen Gruppen ausgeben. Dazu fügen wir zwei weitere DynPG-Anweisungen zwischen den <tt>body</tt> Tags ein.
Nun können wir also loslegen. Wir wollen alle Gruppen (bei der Installation von DynPG wurden bereits automatisch Gruppen erzeugt!) in unserer Datenbank anzeigen lassen. Dazu fügen wir die folgenden Zeilen '''''zwischen die body-tags''''' unserer HTML-Seite ein:
+
  
 
<code>[php, N]
 
<code>[php, N]
 
<?php
 
<?php
$DynPG->SetParam_AG_Anytime(true);
+
  require('../dynpg/getcontent.php');
$DynPG->Write_AllGroups();
+
  $GLOBALS["DynPG"]->SetParam_PathToRoot('../dynpg/');
 
?>
 
?>
 +
 +
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 +
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
 +
<head>
 +
<title>Minimalbeispiel</title>
 +
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
 +
</head>
 +
 +
<body>
 +
  <?php
 +
    $GLOBALS["DynPG"]->SetParam_AG_Anytime(true);
 +
    $GLOBALS["DynPG"]->Write_AllGroups();
 +
  ?>
 +
</body>
 +
 +
</html>
 
</code>
 
</code>
  
Was genau das alles bedeutet, dazu werde ich später kommen, wenn wir aber alles richtig gemacht haben, dann müsste bei aufrufen der Seite nun folgende Ausgabe zu sehen sein:
 
 
[[Image:frontend_example1.jpg|Abbildung 2.2. Ausgabe des Minimalbeispiels|200px]]
 
  
 +
Was genau die Anweisungen bedeuten, werden wir im nächsten Artikel zu den [[Die drei Ansichten von DynPG|drei Sichten von DynPG]] sehen. Wenn wir aber alles richtig gemacht haben, dann müsste beim Aufrufen der Seite nun eine ähnliche Ausgabe, wie die folgende zu sehen sein:
  
Der komplette Code der HTML-Datei kann [http://www.dynpg.ch/doku/ch05s01s01.html#link.example.minimal_code hier] heruntergeladen werden.
+
[[Image:frontend_example1.jpg|Abbildung 2.2. Ausgabe des Minimalbeispiels]]

Aktuelle Version vom 26. September 2011, 16:23 Uhr

Note.png Dieser Artikel ist Teil einer Reihe von Einführungsartikeln zu DynPG

Webseiten erstellen mit DynPG | DynPG in eine Webseite einbinden | Die drei Ansichten von DynPG | Eine einfache Inhaltsübersicht | Dynamisches Navigationmenü ... | CSS | Templates

zurück zu Kategorie:Integration in eine Webseite

Einbinden von DynPG

DynPG kann in jede beliebige HTML-Seite eingebunden werden. Dies geschieht, indem zuerst die entsprechende HTML-Datei mit der Endung .php versehen wird. Die Integration erfolgt nun durch Einfügen folgender Zeilen am Anfang der Seite:

Snippet - Einbinden von DynPG

<?php
  require('../cms/getcontent.php');
  $GLOBALS["DynPG"]->SetParam_PathToRoot('../cms/');
?>
Note.png Bemerkung: die relativen Pfadangaben müssen an den Speicherort Ihrer DynPG-Installation angepasst werden.

Erklärung:

Diese Zeilen müssen Sie als erstes in jeder PHP-Datei, in der Sie DynPG nutzen wollen, angeben. Dadurch werden die Anweisungen für die Code-Snippets von DynPG verfügbar gemacht.

  • Zeile 1: Die erste Zeile muss den Pfad zur Datei mit dem Namen getcontent.php enthalten. Diese Datei befindet sich im Hauptverzeichnis von DynPG. Da es sich um eine relative Pfadangabe handelt, erfolgt die Angabe ausgehend vom Verzeichnis, in dem sich die gerade bearbeitete PHP Datei befindet.
  • Zeile 2: In der zweiten Zeile geben Sie das Verzeichnis an, in dem Sie DynPG installiert haben. Auch hier erfolgt die Angabe ausgehend vom Vezeichnis, in dem sich die gerade bearbeitete PHP Datei befindet. Um ein höheres Verzeichnis zu erreichen schreiben Sie zwei Punkte ( .. ). Jede Ordnerangabe müssen Sie mit einem "Slash" ( / ) abschließen.

Ein einfaches Beispiel:

Nehmen wir an, Sie haben die folgenden Dateistruktur auf Ihrem Server:

  • die Datei beispielseite.php liegt im Verzeichnis seiten/beispielseite.php.
  • die Dateien von DynPG sind im Verzeichnis dynpg/ gespeichert
  • die Ordner seiten/ und dynpg/ befinden sich im selben Verzeichnis

Die Pfadangaben sehen dann folgendermaßen aus:

<?php
  require('../dynpg/getcontent.php');
  SetParam_PathToRoot('../dynpg/');
?>
Note.png Bemerkung: die relativen Pfadangaben müssen an den Speicherort Ihrer DynPG-Installation angepasst werden.
Wenn Sie ein Snippet mit dem include Befehl von PHP in eine Seite einbinden, die DynPG bereits auf diese Weise eingebunden hat, dann können Sie diese Zeilen in dem Snippet, dass Sie einbinden möchten, weglassen.}}

Minimalbeispiel

Zum Testen der Einstellung können Sie das folgende Minimalbeispiel verwenden. Passen Sie hier die ersten beiden Zeilen wie im vorherigen Abschnitt beschrieben an. Wir wollen zudem gleich eine Liste aller im Backend vorhandenen Gruppen ausgeben. Dazu fügen wir zwei weitere DynPG-Anweisungen zwischen den body Tags ein.

<?php
  require('../dynpg/getcontent.php');
  $GLOBALS["DynPG"]->SetParam_PathToRoot('../dynpg/');
?>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
<head>
	<title>Minimalbeispiel</title>
	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
</head>
 
<body>
  <?php
    $GLOBALS["DynPG"]->SetParam_AG_Anytime(true);
    $GLOBALS["DynPG"]->Write_AllGroups();
  ?>
</body>
 
</html>


Was genau die Anweisungen bedeuten, werden wir im nächsten Artikel zu den drei Sichten von DynPG sehen. Wenn wir aber alles richtig gemacht haben, dann müsste beim Aufrufen der Seite nun eine ähnliche Ausgabe, wie die folgende zu sehen sein:

Abbildung 2.2. Ausgabe des Minimalbeispiels