Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

gästebuch - txt file daten werden gelöscht...

hallo
hab ein gästebuch mit flash und das entsprechende php...
aber es funkt nicht richtig im txt file werden dauernd daten gelöscht...
bin anfänger wer hilft mir bitte...

<?
if (!isset($name) || !isset($email) || !isset($message) || empty($name) || empty($email) || empty($message)) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Input required for all fields.");
exit;
}

$email = strtolower($email);

$message = str_replace("ä","ae",$message);
$message = str_replace("ö","oe",$message);
$message = str_replace("ü","ue",$message);
$message = str_replace(":",".",$message);

addentry($name, $email, $message);

function addentry($name, $email, $message) {

$posted = strftime("%D %I:%M %p");

$message = stripslashes($message);

$file = array_reverse($file);
$file = fopen('entry.txt', 'r+');

if (!$file) {
print "&result=Fail";
print "&errorMsg=" . urlencode("Could not open entry.txt file. Change CHMOD levels to 766.");
exit;
}

fputs($file, "&result=okay&entries=<font color=\"#000000\">Name:</font> $name\n<font color=\"#000000\">Email:</font> <font color=\"#000066\"><u><A href=\"mailto:$email\">$email</A></u></font><br>\n<font color=\"#000000\">Posted:</font> $posted\n<font color=\"#000000\">Message:</font> $message\n\n");
fclose($file);

}

mail("mm@the-planet-rocks.com","New Guestbook entry!","$name\n$email\n\n$message","From: ".$email);

print "&result=okay";
exit;

?>

merci gruss andy

Hier gehts zum Orginal Eintrag "gästebuch - txt file daten werden gelöscht..." im Forum

Antworten

Hi

Also im Php manual steht zu fopen
Code:                   In Zwischenablage kopieren (nur IE)
1">

Da du ja nix lesen willst, hätte ich
Code:                   In Zwischenablage kopieren (nur IE)
2">

beim fopen genommen


2.

hi
ja das geht schon ...aber nützt mir nichts.
am ende... weil am anfang sollten die neuesten einträge sein.

also sollte ich das textfile auslesen... dann am anfang den neuen eintrag machen...
...danach wieder das gelesene "alte" file dranhängen...

hast du ne idee?
das ding sollte am sonntag 03.04.05 online gehen...
macht mich krank.. hab schon stunden daran verbracht!!

helft mir bitte!!!

gruss andy


3.

Wenn du Daten in die Textdatei schreibst, und du den Dateizeiger an den Anfang setzt, schreibt PHP wie ein Texteditor, bei dem du den Modus Replace ausgewält hast: er überschreibt alles!

Besser ist es also, wenn du keine Datenbank zur Verfügung hast, die Einträge nacheinander reinzuschreiben und bei der Ausgabe dann umzudrehen!


4.

das ding liest flash... ich hab nur dieses php.!

ich hab keine datenbank. - schreibe in das textfile.

denke es geht wenn ich das alte file auslese in ne variable ablege... (bitte um code)
danach schreib ich die neuen daten ins leere txt (bitte um code)
und dann häng ich am soeben geschriebenen txt die daten am ende ran (bitte um code)

hab schon so viel versucht.. bin einfach änfanger... bitte helft mir!
danke...
gruss andy


5.

Hallo ich habs geschafft!! Danke euch allen und CHEERS :-)

[CODE]//Alte Datei auslesen:
$old_msg = implode("",file("entry.txt"));
$old_msg = str_replace("&result=okay&entries=", "", $old_msg);
$old_msg = str_replace("", "", $old_msg);

//Neuen Eintrag davor hängen
$eintrag = "&result=okay&entries=<font color=\"#000000\">Name:</font> $name\n<font color=\"#000000\">Email:</font> <font color=\"#000066\"><u><A href=\"mailto:$email\">$email</A></u></font><br>\n<font color=\"#000000\">Posted:</font> $posted\n<font color=\"#000000\">Message:</font> $message\n\n".$old_msg;

//$eintrag speichern, dabei Datei überschreiben
$datei = fopen("entry.txt","w");
fwrite($datei,$eintrag);
fclose($datei);


6.

du machst es kompliziert, dass es schon weh tut ...

sowas macht man normalerweiße so, dass man es nacheinander in die datei schreibt udn bei der ausgabe, funktionen wie [doc]array_reverse[/doc] benutzt ...


Hier gehts zum Orginal Eintrag "gästebuch - txt file daten werden gelöscht..." im Forum
 
phpforum.de | Impressum