gb-speichern.phpinclude/gb/verarbeiten.php
PHP-Befehle:
Code: <?php ?>
<?php .... ?>
<!-- Eingaben verarbeiten --> <?php include "../../include/gb/verarbeiten.php"; ?>
<!-- Kontrolle und speichern -->
<?php
// Kontrolle ob das Spam-Feld leer ist
if ( $xgb_spam ){
// in die Datenbank schreiben
}
Code: date()
Befehl: $... = date("d.m.Y, G:i");
$... Dies ist die neue Variable, in der das Datum und die Zeit
gespeichert sind.
(...) In der Klammer sind die Platzhalter.
Verwendete Platzhalter:
Befehl: $datum_zeit = date("d.m.Y, G:i");
$datum_zeit Dies ist die Variable, die das Datum und die
Zeit enthält.
1) Quelltext im Gästebuch:
$datum_zeit = date("d.m.Y, G:i");
2) Quelltext zur Anzeige dieses Beispiels in diesem Dokument:
$datum_zeit = date("d.m.Y, G:i"); echo "$datum_zeit h";
<?php
$datum_zeit = date("d.m.Y, G:i");
echo "$datum_zeit h";
?>
3) Angezeigter Text dieses Beispiels in diesem Dokument:
22.05.2012, 19:08 hGrundlagen und Workshops:
Neue Variable: $zudaten="...";
Bemerkungen zur Formatierung:
\n eingegeben, das ist ein Zeilenumbruch, der durch
php nur im Quelltext wirkt. Dadurch können die einzelnen
Einträge im Quelltext besser gelesen werden.
Der HTML-Text, der im Gästebuch sichtbar ist, wird dabei nicht
umgebrochen.
//Zusätzliche Daten $zudaten = "<h4>Thema: $gb_thema</h4> <p>$gb_eintrag</p> <p>Absender: <a href='mailto:$gb_email'>\n $gb_name</a>, $datum_zeit h</p> \n\n";
Code: str_replace("alt","neu","Zeichenkette")
Befehl: $... = str_replace("alt","neu",$...)
alt enthält dabei die alte Teil-Zeichenkette, die
jeweils durch neu ersetzt wird.
Zweck:
Befehl: $zudaten = str_replace("alt","neu",$zudaten);
(... $zudaten) In dieser Variablen müssen Zeichen
durch andere ersetzt werden.
$zudaten = ...; Dies ist die neue Variable (mit dem
gleichen Namen), in der die Zeichen ersetzt wurden.
1) $zudaten = str_replace("<br />","<br>",$zudaten);
<br /> in die Dateien geschrieben.
<br>
umgewandelt werden.
$zudaten = str_replace("<br />","<br>",$zudaten);
2) $zudaten = str_replace("<br />","",$zudaten);
< und > der Zeilenumbrüche mit
<br /> ergaben <br />.
$zudaten = str_replace("<br />","",$zudaten);
3) $zudaten = str_replace("<p><br>","<p>",$zudaten);
$zudaten = str_replace("<p><br>","<p>",$zudaten);
4) $zudaten = str_replace("<br></p>","</p>",$zudaten);
$zudaten = str_replace("<br></p>","</p>",$zudaten);
Alle Befehle:
$zudaten = str_replace("<br />","<br>",$zudaten);
$zudaten = str_replace("<br />","",$zudaten);
$zudaten = str_replace("<p><br>","<p>",$zudaten);
$zudaten = str_replace("<br></p>","</p>",$zudaten);
Grundlagen und Workshops:
Code: $... = "...";
Befehl: $datenbank = "gb-daten.dat";
gb-daten.dat In dieser Datei werden die Einträge
des Gästebuches gespeichert.
// Die Datenbank wird bezeichnet $datenbank = "../../gaestebuch/gb-daten.dat" ;
Code: fopen ("Dateiname", "Modus")
Modus:
r Datei wird nur zum Lesen geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
r+ Datei wird zum Lesen und Schreiben geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
w Datei wird nur zum Schreiben geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
Sofern die Datei bereits besteht, wird die
Grösse auf 0 Bytes gesetzt
(d.h. ein eventueller Inhalt wird überschrieben).
Sofern die Datei nicht existiert, wird diese neu angelegt.
w+ Datei wird zum Lesen und Schreiben geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
Sofern die Datei bereits besteht, wird die
Grösse auf 0 Bytes gesetzt (d.h. ein eventueller
Inhalt wird überschrieben).
Sofern die Datei nicht existiert, wird diese neu angelegt.
a Datei wird nur zum Schreiben geöffnet, der Dateizeiger wird an
das Ende der Datei gesetzt (d.h der Inhalt wird nicht überschrieben,
sondern neuer Inhalt am Dateiende hinzugefügt). Sofern die Datei
nicht existiert, wird diese neu angelegt.
a+ Datei wird zum Lesen und Schreiben geöffnet, der Dateizeiger
wird an das Ende der Datei gesetzt (d.h der Inhalt wird nicht
überschrieben, sondern neuer Inhalt am Dateiende hinzugefügt).
Sofern die Datei nicht existiert, wird diese neu angelegt.
Befehl: $gb_datei = fopen($datenbank,"r");
$datei Dies ist der ausgegebene "Dateihandle", mit dem auf
die nun geöffnete Datei mit dem gewählten Modus zugegriffen
werden kann.
r Datei wird nur zum Lesen geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
// Die Datenbank wird zum Lesen geöffnet $gb_datei = fopen($datenbank,"r");
Grundlagen und Workshops:
Code: fread("Datei-Handle","maximale Anzahl")
Befehl: $altdaten = fread($datei,10000);
$altdaten In diese Variable werden die in der
Datenbank gespeicherten (alten) Daten gelesen.
$datei,10000); Die Daten kommen aus der angegebenen
Variablen und haben eine maximale Länge wie angegeben.
// Die alten Daten einlesen $altdaten = fread($gb_datei,10000);
Grundlagen und Workshops:
Prinzip: $a+b = "$a $b";
Befehl: $neudaten = "$zudaten $altdaten";
$neudaten Dies sind die neuen Daten des Gästebuches.
"$zudaten $altdaten"; Die neuen Daten bestehen aus den
zugefügten und den alten Daten.
// Neue Daten aus zusätzlichen und alten Daten $neudaten = "$zudaten $altdaten";
Code: fclose ("Datei-Handle")
Befehl: fclose($datei);
($datei) Der Ausdruck in der Klammer wird als "Datei-Handle" bezeichnet.
gb-daten.dat geschlossen.
// Die Datenbank wird wieder geschlossen fclose($gb_datei);
Grundlagen und Workshops:
Code: fopen("Dateiname","Modus")
Modus:
r Datei wird nur zum Lesen geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
r+ Datei wird zum Lesen und Schreiben geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
w Datei wird nur zum Schreiben geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
Sofern die Datei bereits besteht, wird die
Grösse auf 0 Bytes gesetzt
(d.h. ein eventueller Inhalt wird überschrieben).
Sofern die Datei nicht existiert, wird diese neu angelegt.
w+ Datei wird zum Lesen und Schreiben geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
Sofern die Datei bereits besteht, wird die
Grösse auf 0 Bytes gesetzt (d.h. ein eventueller
Inhalt wird überschrieben).
Sofern die Datei nicht existiert, wird diese neu angelegt.
a Datei wird nur zum Schreiben geöffnet, der Dateizeiger wird an
das Ende der Datei gesetzt (d.h der Inhalt wird nicht überschrieben,
sondern neuer Inhalt am Dateiende hinzugefügt). Sofern die Datei
nicht existiert, wird diese neu angelegt.
a+ Datei wird zum Lesen und Schreiben geöffnet, der Dateizeiger
wird an das Ende der Datei gesetzt (d.h der Inhalt wird nicht
überschrieben, sondern neuer Inhalt am Dateiende hinzugefügt).
Sofern die Datei nicht existiert, wird diese neu angelegt.
Befehl: $datei = fopen($datenbank,"w");
$datei Dies ist der ausgegebene "Dateihandle", mit dem auf
die nun geöffnete Datei mit dem gewählten Modus zugegriffen werden
kann.
fopen($datenbank,"w"); Die Datenbank wird geöffnet und
der Modus wird angegeben.
w Datei wird nur zum Schreiben geöffnet,
der Dateizeiger wird auf den Anfang der Datei gesetzt.
Sofern die Datei bereits besteht, wird die
Grösse auf 0 Bytes gesetzt
(d.h. ein eventueller Inhalt wird überschrieben).
Sofern die Datei nicht existiert, wird diese neu angelegt.
// Die Datenbank wird zum Schreiben geöffnet $gb_datei = fopen($datenbank,"w");
Grundlagen und Workshops:
Code: fwrite("Datei-Handle","Daten"[,"maximale Anzahl"])
fwrite schreibt den Inhalt der Zeichenkette "Daten" in die
Datei, auf die das Dateihandle "Datei-Handle" zeigt.
(Das Datei-Handle" muss vorher mit fopen erstellt worden sein)
Befehl: fwrite($datei, $daten);
// Schreibt die neunen Daten in die Datenbank fwrite($gb_datei, $neudaten);
Grundlagen und Workshops:
Code: fclose("Datei-Handle")
Befehl: fclose($datei);
($datei) Der Ausdruck in der Klammer wird als "Datei-Handle" bezeichnet.
gb-datei.dat geschlossen.
// Schliesst die Datenbank fclose($gb_datei);
Grundlagen und Workshops:
Prinzip:
Link: <a href="../../gaestebuch#eintraege">...</a>
Anzeige ...: Gästebuch mit den neuen Einträgen
// Link zu den Einträgen im Gästebuch zeigen echo ' <h3> <br><br><br><br> <a href="../gaestebuch#eintraege"> Gästebuch mit den neuen Einträgen </a></h3>';
<!-- Eingaben verarbeiten -->
<?php
include "../include/gb/verarbeiten.php";
?>
<!-- Kontrolle und speichern -->
<?php
// Kontrolle ob das Spam-Feld leer ist
if ( $xgb_spam ){
// in die Datenbank schreiben
$datum_zeit = date("d.m.Y, G:i");
//Zusätzliche Daten
$zudaten = "<h4>Thema: $gb_thema</h4>
<p>$gb_eintrag</p>
<p>Absender: <a href='mailto:$gb_email'>\n
$gb_name</a>, $datum_zeit h</p>
\n\n";
$zudaten = str_replace("<br />","<br>",$zudaten);
$zudaten = str_replace("<br />","",$zudaten);
$zudaten = str_replace("<p><br>","<p>",$zudaten);
$zudaten = str_replace("<br></p>","</p>",$zudaten);
// Die Datenbank wird bezeichnet
$datenbank = "../../gaestebuch/gb-daten.dat" ;
// Die Datenbank wird zum Lesen geöffnet
$gb_datei = fopen($datenbank,"r");
// Die alten Daten einlesen
$altdaten = fread($gb_datei,10000);
// Neue Daten aus zusätzlichen und alten Daten
$neudaten = "$zudaten $altdaten";
// Die Datenbank wird wieder geschlossen
fclose($gb_datei);
// Die Datenbank wird zum Schreiben geöffnet
$gb_datei = fopen($datenbank,"w");
// Schreibt die neunen Daten in die Datenbank
fwrite($gb_datei, $neudaten);
// Schliesst die Datenbank
fclose($gb_datei);
// Link zu den Einträgen im Gästebuch zeigen
echo '
<h3> <br><br><br><br>
<a href="../../gaestebuch#eintraege">
Gästebuch mit den neuen Einträgen
</a></h3>';
}
?>
↑