Portal > Foren > PHP > PHP-Programmierung > Frage zu Tutorial (Gästebuch auf Textdatei basierend)
Antwort
 
Themen-Optionen
Alt 21.07.2008, 12:23 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard Frage zu Tutorial (Gästebuch auf Textdatei basierend)

Guten Morgen alle zusammen (wenn man noch von Morgen sprechen kann )!!

Ich habe hier ein tolles PHP-Tutorial gefunden, mit dem man ein Gästebuch erstellen kann, was auf keiner normalen Datenbank basiert, sondern wo die Einträge in einer TXT-Datei gespeichert werden.

Hier der Link zum Tutorial:

http://www.developers-guide.net/foru...atei-basierend

Ich hab das zum Teil übernommen, zum Teil verändert und zum Teil auch neue Dinge hinzugefügt, wie zum Beispiel ein relativ kompliziertes, dafür jedoch sehr gutes Captcha. Hier findet ihr mein aktuelles Gästebuch (eher eine Test-Version

http://www.schueler-gegen-mobbing.de/gb/gb2.php

Ich habe jedoch eine sehr wichtige Frage. Es klappt ja alles ganz gut, allerdings möchte ich auch gerne Absätze in meine Einträge einfügen. Wenn ich jetzt Absätze mache, alle anderen Felder ausfülle und auf Absenden klicke, wird nur der erste Absatz übernommen. Warum? Der ganze Eintrag wird in der Variable $eintrag gespeichert. Diese wird, so wie sie ist, in die gaestebuch.txt Datei eingelagert (Die befindet sich im gleichen Verzeichnis, könnt ihr also auch aufrufen). Probiert doch mal aus, einen Beitrag mit Absätzen zu machen, wenn ihr die TXT-Datei seht, dann wisst ihr auch, warum das nicht geht: Der erste Absatz ist (logischer Weise) in der Reihe, in der sich auch Datum, Uhrzeit, Name usw. befinden. Anschließend kommt eine leere Zeile und dann beginnt der zweite Absatz. Eigentlich sollte jedoch pro Zeile ein Eintrag stehen.

Ich hoffe, ihr wisst, was ich meine. Wenn nicht, dann fragt einfach Ich brauche jetzt eine Lösung für das Problem. Gibt es die Möglichkeit, die Einträge so zu speichern, dass sie zwar in der TXT-Datei in einer Reihe erscheinen, jedoch später wieder richtig ausgegeben werden? Muss man da HTML-Tags hinzufügen, die einen Zeilenumbruch erzeugen? Oder wird dieser dann einfach nur ausgegeben, allerdings nicht umgesetzt?

Sorry wegen der vielen Fragen

Achja, @Jann Hendrik, danke für die Antwort, vielleicht lässt sich das ja wirklich übernehmen!

Liebe Grüße,
Alex
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 12:45 Nach oben    #2
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Noch ne Kleinigkeit:

In dem Tutorial wurde in einem folgenden Beitrag das Problem angesprochen, was passiert, wenn man || eintippt. Also das ist zwar sehr wahrscheinlich, man kann das aber einfach ändern, in dem man sich ein anderes Zeichen überlegt. Z.B.: <> oder ## oder °° usw. Es können ja auch mehr als zwei Zeichen sein, aber eigentlich sind die ja zum Trennen da
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 12:46 Nach oben    #3
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

Also ... das Problem ist, dass in der Datei der Zeilenumbruch direkt als Zeichen gespeichert wird.

Beim Auslesen wird aber zeilenweise vorgegangen, daher erscheint auch nur die eine Zeile.

Was du also machen muss ist das Zeichen
Code:
\r\n
durch eine Zeichenfolge deiner Wahl ersetzen (vor dem speichern).

Nach dem Speichern musst du dann die Zeichenfolge wieder durch ein <br> ersetzen, damit du dann den Zeilenumbruch dargestellt bekommst.

Zitat:
Zitat von sgmalex Beitrag anzeigen
In dem Tutorial wurde in einem folgenden Beitrag das Problem angesprochen, was passiert, wenn man || eintippt. Also das ist zwar sehr wahrscheinlich, man kann das aber einfach ändern, in dem man sich ein anderes Zeichen überlegt. Z.B.: <> oder ## oder °° usw. Es können ja auch mehr als zwei Zeichen sein, aber eigentlich sind die ja zum Trennen da
Das ist richtig. Du kannst da auch dreißig Zeichen für nutzen....
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 12:49 Nach oben    #4
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Verstehe... Aber wie genau setzt man das um?
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 13:43 Nach oben    #5
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Noch ne Frage: Irgendwie werden Umlaute und ß nicht mehr richtig angezeigt, ich weiß aber nicht, woran das liegt. Am Anfang ging es, jetzt nicht mehr (seht ihr ja selber, in den ersten beiden Einträgen sind Umlaute ganz normal dargestellt, in den letzten beiden nicht mehr). Ich habe es schon mit htmlentities() versucht...

Geändert von sgmalex (21.07.2008 um 15:14 Uhr).
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 14:54 Nach oben    #6
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Ich glaub ich blick grad ein bisschen durch^^

Was du also machen muss ist das Zeichen
Code:
\r\n
durch eine Zeichenfolge deiner Wahl ersetzen (vor dem speichern).


Macht man das mit str_replace()?

Ich habe damit mal ein bisschen rumgespielt, wenn man jetzt jedoch einen Absatz macht, wird <br /> angezeigt, allerdings nicht umgesetzt...
__________________
Mobbing in der Schule

Geändert von sgmalex (21.07.2008 um 15:14 Uhr).
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 15:01 Nach oben    #7
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

ja... nun hast du es selbst rausgefunden

str_replace ist eine Möglichkeit.
Damit kannst du auch äöüß in die HTML-entities übersetzen.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 15:30 Nach oben    #8
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Oh mist, jetzt geht gar nichts mehr...

Also das mit den äöüß hat ich schon ausprobiert, ging eigentlich nicht. Bei den Absätzen... Hat sich leider auch das \r\n in der TXT-Datei aufgelöst, wodurch alle nachfolgenden Einträge in einer Zeile stehen und man leider nicht mehr neue Einträge sieht. Ich poste mal das, was ich hab, um euch zu zeigen, wie mein Code aussieht. Vielleicht findet ihr ja den Fehler.
__________________
Mobbing in der Schule
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 15:50 Nach oben    #9
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

PHP-Code:
<?php
require_once("recaptchalib.php");
// Der Name der Gästebuch-Datei lautet:
$datenbankdatei 'gaestebuch.txt';
$mailempfaenger 'alex.webmaster.sgm@gmail.com';

# the response from reCAPTCHA
$resp null;
# the error code from reCAPTCHA, if any
$error null;
  
// Überprüfung, ob die Datei vorhanden ist.
// wenn nicht vorhanden, dann versuche diese zu erstellen
// wenn das Erstellen nicht erfolgreich war (mangelnde Rechte), dann Skript abbrechen
if(!file_exists($datenbankdatei))
    if(!@
touch($datenbankdatei))
        die(
"Fehler: Die Datenbank ist nicht erreichbar.");

if(isset(
$_POST['button'])) {

// wenn das Formular abgeschickt wurde, dann führe das hier aus (Daten in die Datei eintragen)
   
// Überprüfe, ob Name und Text angegeben wurde - sonst kein Eintrag
    
if($_POST['name'] == "" || $_POST['email'] == "" || $_POST['eintrag'] == "") {
    echo 
'Es fehlen Angaben. Bitte vollst&auml;ndig ausf&uuml;llen.';
    } else {
// Überprüfe, ob Captcha richtig eingegeben wurde
    
$privatekey "6LePhgIAAAAAAOHiXY91Kc5tqdpBRqZew541fdKu";
    
$resp recaptcha_check_answer ($privatekey,
                                
$_SERVER["REMOTE_ADDR"],
                                
$_POST["recaptcha_challenge_field"],
                                
$_POST["recaptcha_response_field"]);
        if (!
$resp->is_valid) {
          die (
"Sicherheitscode nicht korrekt. " .
           
"(Fehler: " $resp->error ")");
        } else {
        

// als erstes werden die Daten zu einem langen string zusammengefasst. Damit die einzelnen Variablen später wieder getrennt werden können setzen wir ein Trennzeichen. In diesem Fall habe ich mich für || entschieden.
// das \n am Ende sorgt dafür, dass ein Zeilenumbruch in der Textdatei gemacht wird. Das ist für das Auslesen wichtig!
        
$eintrag date('d.m.Y - H:i:s').' || '.$_SERVER["REMOTE_ADDR"].' || '.$_POST['name'].' || '.$_POST['email'].' || '.$_POST['site'].' || '.$_POST['eintrag']."\r\n";

// Nun wird die Datei geöffnet. Der Modus 'a' gibt an, dass die Datei zum Schreiben geöffnet wurde und die Daten hinten dran gehängt werden
        
$file fopen($datenbankdatei,"a");
        
// Absätze ermöglichen

        
$from = array("Ä""ä""Ö""ö""Ü""ü""ß""\n");
        
$to = array("&Auml;""&auml;""&Ouml;""&ouml;""&Uuml;""&uuml;""&szlig;""<br />");
        
$eintrag str_replace("$from""$to""$eintrag");

// mit fwrite werden nun die Daten, welche wir vorher zu einer Variable zusammengefasst haben hineingeschrieben
        
fwrite($file$eintrag);

// Datei schliessen
        
fclose($file);

// Ausgabe für den User:
        
echo '<h2>Danke '.$_POST['name'].' f&uuml;r Ihren Eintrag!</h2>Die Daten wurden erfolgreich aufgenommen.<br /><a href="'.$_SERVER["PHP_SELF"].'">Zur&uuml;ck zum G&auml;stebuch</a>';
   
// eMail wird verschickt:
        
@mail($mailempfaenger"Gästebucheintrag""Folgender Eintrag wurde hinterlassen:\r\n\r\nName: ".$_POST['name']."\r\nEMail: ".$_POST['email']."\r\nWebsite: ".$_POST['site']."\r\nText: ".$_POST['eintrag']."\r\nIP: ".$_SERVER["REMOTE_ADDR"]."\r\n".date('d.m.Y - H:i:s'), "From: ".$_POST['email']."\r\nX-Mailer: PHP/" phpversion());
        }
    }
} else {
// wenn das Formular nicht ausgefüllt wurde, es also nur einfach angezeigt werden soll, dann führe diesen Teil aus:

// Anzeige der Einträge aus dem Gästebuch:
    
echo '<h2>Mein G&auml;stebuch</h2>';

// Öffnen der Datei im Lese-Modus:
    
$file fopen($datenbankdatei'r');

// Solange wiederholen, bis die Datei vollständig ausgelesen wurde
    
while (!feof($file)) {
// Zeile für Zeile auslesen:
        
$zeile  fgets($file5000);
        
$daten  explode(" || "$zeile);
        
$datum  $daten[0];
        
$ip     $daten[1];
        
$name   $daten[2];
        
$email  $daten[3];
        
$site   $daten[4];
        
$eintrag $daten[5];

// Ausgabe auf den Bildschirm:

            
if($name != "" && $eintrag != "") {
                if (
$site == "http://" OR $site == "") {
                echo 
'<u>'.htmlentities($nameENT_NOQUOTES).' schrieb am '.$datum.' folgendes:</u><br />'.htmlentities($eintragENT_NOQUOTES).'<br /><br />';
                } else {
                  echo 
'<u><a href="'.$site.'">'.htmlentities($nameENT_NOQUOTES).'</a> schrieb am '.$datum.' folgendes:</u><br />'.htmlentities($eintragENT_NOQUOTES).'<br /><br />';
                }
            }
    }
    
fclose($file);

// Trennlinie zwischen alten Einträgen und dem Formular:
    
echo '<hr />';

// Formular für weitere Einträge:
    
echo '<h2>Neue Eintr&auml;ge:</h2>
    <p>Daten mit * m&uuml;ssen angegeben werden.</p>
<form method="post" action="'
.$_SERVER["PHP_SELF"].'">
<table>
<tr>
<td>*</td><td width="100"><p>Ihr Name:</p></td><td><input type="text" name="name"></td>
</tr>
<tr>
<td>*</td><td><p>Ihre EMail:</p></td><td><input type="text" name="email"></td>
</tr>
<tr>
<td></td><td><p>Ihre Website:</p></td><td><input type="text" name="site" value="http://" /></td>
</tr>
<tr>
<td>*</td><td><p>Ihr Eintrag:</p></td><td><textarea name="eintrag" cols="45" rows="7"></textarea></td>
</tr>
<tr>
<td>*</td><td>Sicherheitscode:</td><td>'
;
$publickey "6LePhgIAAAAAAOIHfNA2FO-pRjqi1roMCco1O45B";
echo 
'<script>
var RecaptchaOptions = {
   lang : \'de\',
   theme : \'clean\'
};
</script>'
;
$privatekey "6LePhgIAAAAAAOHiXY91Kc5tqdpBRqZew541fdKu";
echo 
recaptcha_get_html($publickey);
echo 
'</td>
</tr>
<tr>
<td></td><td><input type="submit" name="button" value="Absenden"></td><td></td>
</tr>
</table>
</form>'
;
}
?>
__________________
Mobbing in der Schule

Geändert von sgmalex (22.07.2008 um 15:22 Uhr).
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.07.2008, 17:58 Nach oben    #10
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Das ganze ist echt merkwürdig, auf http://www.schueler-gegen-mobbing.de...hnecaptcha.php gehen die umlaute ganz normal. Nur halt auch die Absätze nicht.
__________________
Mobbing in der Schule
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.07.2008, 09:51 Nach oben    #11
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

Der Unterschied dürfte sich dadurch erklären, dass du \r\n als Steuerzeichen dort einbaust und damit dann auch in der Text-Datei für einen Zeilenumbruch sorgst...
Das kann man zwar auch umgehen, indem man das nicht in " sondern in ' umhüllt, aber ... du kannst anstelle der Zeichenfolge auch mal was anderes nehmen...

Nimm mal als Zeichenfolge für den Zeilenumbruch, die du dir in der Datei speicherst gleich <br>, das hat den Vorteil, dass du das zum Auslesen nicht nochmal ändern musst.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.07.2008, 15:21 Nach oben    #12
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Geht leider auch nicht. Ich habe den aktuellen Code jetzt oben aktualisiert.
__________________
Mobbing in der Schule
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.07.2008, 16:09 Nach oben    #13
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

\n
\r
\n\r
\t
das sind alles reservierte Zeichen, die du dafür nicht nehmen solltest.

Nimm einfach mal direkt <br>
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.07.2008, 23:14 Nach oben    #14
Neuer Benutzer
 
Registriert seit: 21.07.2008
Beiträge: 17
Standard

Hab es nochmal versucht, weiß aber nicht, ob ich das gleiche gemacht habe, wie du es meinst. Vielleicht solltest du nochmal konkret angeben, wo genau was geändert werden muss.

PHP-Code:
<?php
require_once("recaptchalib.php");
// Der Name der Gästebuch-Datei lautet:
$datenbankdatei 'gaestebuch.txt';
$mailempfaenger 'alex.webmaster.sgm@gmail.com';

# the response from reCAPTCHA
$resp null;
# the error code from reCAPTCHA, if any
$error null;
  
// Überprüfung, ob die Datei vorhanden ist.
// wenn nicht vorhanden, dann versuche diese zu erstellen
// wenn das Erstellen nicht erfolgreich war (mangelnde Rechte), dann Skript abbrechen
if(!file_exists($datenbankdatei))
    if(!@
touch($datenbankdatei))
        die(
"Fehler: Die Datenbank ist nicht erreichbar.");

if(isset(
$_POST['button'])) {

// wenn das Formular abgeschickt wurde, dann führe das hier aus (Daten in die Datei eintragen)
   
// Überprüfe, ob Name und Text angegeben wurde - sonst kein Eintrag
    
if($_POST['name'] == "" || $_POST['email'] == "" || $_POST['eintrag'] == "") {
    echo 
'Es fehlen Angaben. Bitte vollst&auml;ndig ausf&uuml;llen.';
    } else {
// Überprüfe, ob Captcha richtig eingegeben wurde
    
$privatekey "6LePhgIAAAAAAOHiXY91Kc5tqdpBRqZew541fdKu";
    
$resp recaptcha_check_answer ($privatekey,
                                
$_SERVER["REMOTE_ADDR"],
                                
$_POST["recaptcha_challenge_field"],
                                
$_POST["recaptcha_response_field"]);
        if (!
$resp->is_valid) {
          die (
"Sicherheitscode nicht korrekt. " .
           
"(Fehler: " $resp->error ")");
        } else {
        

// als erstes werden die Daten zu einem langen string zusammengefasst. Damit die einzelnen Variablen später wieder getrennt werden können setzen wir ein Trennzeichen. In diesem Fall habe ich mich für || entschieden.
// das \n am Ende sorgt dafür, dass ein Zeilenumbruch in der Textdatei gemacht wird. Das ist für das Auslesen wichtig!
        
$eintrag date('d.m.Y - H:i:s').' || '.$_SERVER["REMOTE_ADDR"].' || '.$_POST['name'].' || '.$_POST['email'].' || '.$_POST['site'].' || '.$_POST['eintrag']."\r\n";

// Nun wird die Datei geöffnet. Der Modus 'a' gibt an, dass die Datei zum Schreiben geöffnet wurde und die Daten hinten dran gehängt werden
        
$file fopen($datenbankdatei,"a");
        
// Absätze ermöglichen

        
$from = array("Ä""ä""Ö""ö""Ü""ü""ß""<br />");
        
$to = array("&Auml;""&auml;""&Ouml;""&ouml;""&Uuml;""&uuml;""&szlig;""<br />");
        
$eintrag str_replace("$from""$to""$eintrag");

// mit fwrite werden nun die Daten, welche wir vorher zu einer Variable zusammengefasst haben hineingeschrieben
        
fwrite($file$eintrag);

// Datei schliessen
        
fclose($file);

// Ausgabe für den User:
        
echo '<h2>Danke '.$_POST['name'].' f&uuml;r Ihren Eintrag!</h2>Die Daten wurden erfolgreich aufgenommen.<br /><a href="'.$_SERVER["PHP_SELF"].'">Zur&uuml;ck zum G&auml;stebuch</a>';
   
// eMail wird verschickt:
        
@mail($mailempfaenger"Gästebucheintrag""Folgender Eintrag wurde hinterlassen:\r\n\r\nName: ".$_POST['name']."\r\nEMail: ".$_POST['email']."\r\nWebsite: ".$_POST['site']."\r\nText: ".$_POST['eintrag']."\r\nIP: ".$_SERVER["REMOTE_ADDR"]."\r\n".date('d.m.Y - H:i:s'), "From: ".$_POST['email']."\r\nX-Mailer: PHP/" phpversion());
        }
    }
} else {
// wenn das Formular nicht ausgefüllt wurde, es also nur einfach angezeigt werden soll, dann führe diesen Teil aus:

// Anzeige der Einträge aus dem Gästebuch:
    
echo '<h2>Mein G&auml;stebuch</h2>';

// Öffnen der Datei im Lese-Modus:
    
$file fopen($datenbankdatei'r');

// Solange wiederholen, bis die Datei vollständig ausgelesen wurde
    
while (!feof($file)) {
// Zeile für Zeile auslesen:
        
$zeile  fgets($file5000);
        
$daten  explode(" || "$zeile);
        
$datum  $daten[0];
        
$ip     $daten[1];
        
$name   $daten[2];
        
$email  $daten[3];
        
$site   $daten[4];
        
$eintrag $daten[5];

// Ausgabe auf den Bildschirm:

            
if($name != "" && $eintrag != "") {
                if (
$site == "http://" OR $site == "") {
                echo 
'<u>'.htmlentities($nameENT_NOQUOTES).' schrieb am '.$datum.' folgendes:</u><br />'.htmlentities($eintragENT_NOQUOTES).'<br /><br />';
                } else {
                  echo 
'<u><a href="'.$site.'">'.htmlentities($nameENT_NOQUOTES).'</a> schrieb am '.$datum.' folgendes:</u><br />'.htmlentities($eintragENT_NOQUOTES).'<br /><br />';
                }
            }
    }
    
fclose($file);

// Trennlinie zwischen alten Einträgen und dem Formular:
    
echo '<hr />';

// Formular für weitere Einträge:
    
echo '<h2>Neue Eintr&auml;ge:</h2>
    <p>Daten mit * m&uuml;ssen angegeben werden.</p>
<form method="post" action="'
.$_SERVER["PHP_SELF"].'">
<table>
<tr>
<td>*</td><td width="100"><p>Ihr Name:</p></td><td><input type="text" name="name"></td>
</tr>
<tr>
<td>*</td><td><p>Ihre EMail:</p></td><td><input type="text" name="email"></td>
</tr>
<tr>
<td></td><td><p>Ihre Website:</p></td><td><input type="text" name="site" value="http://" /></td>
</tr>
<tr>
<td>*</td><td><p>Ihr Eintrag:</p></td><td><textarea name="eintrag" cols="45" rows="7"></textarea></td>
</tr>
<tr>
<td>*</td><td>Sicherheitscode:</td><td>'
;
$publickey "6LePhgIAAAAAAOIHfNA2FO-pRjqi1roMCco1O45B";
echo 
'<script>
var RecaptchaOptions = {
   lang : \'de\',
   theme : \'clean\'
};
</script>'
;
$privatekey "6LePhgIAAAAAAOHiXY91Kc5tqdpBRqZew541fdKu";
echo 
recaptcha_get_html($publickey);
echo 
'</td>
</tr>
<tr>
<td></td><td><input type="submit" name="button" value="Absenden"></td><td></td>
</tr>
</table>
</form>'
;
}
?>
__________________
Mobbing in der Schule
sgmalex ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.07.2008, 07:20 Nach oben    #15
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

Versuch es mal so:
PHP-Code:
// Absätze ermöglichen
        
$from = array("Ä""ä""Ö""ö""Ü""ü""ß");
        
$to = array("&Auml;""&auml;""&Ouml;""&ouml;""&Uuml;"