Logbuch Ausgabe

Imperator_Boot

Grünschnabel
hi leutz,

also zwei kumpels und ich arbeiten an einem browsergame. die beiden wohenne jedoch etwas weiter weg von mir und wir haben daher da problem das wir uns nicht immer treffen können. (höchstens 1 mal die woche) , aber um tortzdem ne vernünftige kommunikation zu gewähren hab ich den vorschlag gebradcht ein kleines logbuch zu proggen. nun ja also jetzt hab ich das problem das ich weiß wie die daten eintragen kann aber nicht wie ausgeben. ich will das über eine txt regeln so das beim eintragen für den namen den betreff und denn eiogentlichen eintrag jeweils eine neue zeile begonnen hat. wenn dann der eintrag zu ende is kommt eine leerzeile und danach gehtz das spielchen von vorne los. also wie gesagt da mit dem eintragen weiß ich wie ichs umsetze aber mit dem ausgeben wird so eine sache. denn woher weiß das programm nun wann ein komplett neuer eintrag beginnt? jetzt is mir die idee gekommen das wenn das ding eingetragen wird einfach die länge der variable gespeichert wird und in eine zeile einträgt und die dann beim ausgeben einfach eingelesen wird und nach der anzahl das programm einen neuen eintrag beginnt auszugeben. weiß aber nicht ob das .
deshalb die frage an euch: geht meine variante und wenn nich wie würdet ihr das dann machen.

IMB

P.S.: Hoffe ich hab mich nicht zu kompliziert ausgedrückt .
:)
 
so mein logbuch ist jetzt fast fertig. hab das mit der speicherung gelöst aber och ein prblem und zwar wenn ich auf abspeichern gehen dan kommt die meldung das es abgespeichert wurde und ich werd wieder zum logbuch zurückgeleitet. aber dort ist kein eintrag zu sehen. außerdem sind die einträge die ich vorher von hand gemacht habe gelöscht.
weiß aber nicht worqan das liegen könnte.
hier der quellcode:

Logbuch.php
Code:
<html><head><title>Logbuch</title></head><body> 
<?
echo "Logbuch
<form action=\"eintragen.php\" method=\"post\">
 	Ihr Name:<br>
 	
 	<input type=\"text\" name=\"Name\" value=\"$name\"><br>
 	
 	Betreff:<br>
 	
 	<input type=\"text\" name=\"Betreff\" value=\"$betreff\"><br>
 	
 	<textarea rows=8 cols=50 name=\"Beitrag\" value=\"$text\">Hier kommt ihr Eintrag hin</textarea><br>
 	
	<input type=\"submit\" name=\"send\" value='Eintrag Abschicken'><br>
	
	</form>";

echo "<br><hr color=black><br>";	
?>
<?
echo "<pre>";
include("log.txt");
echo "<pre>";
?>

eintragen.php

Code:
<html>
<head>
<title></title>
<meta http-equiv="Refresh" content="8; URL=logbuch.php">
</head>
<body>
<?
$datei=fopen("log.txt","w");
fwrite($datei, $name);
fwrite($datei, "<br>");
fwrite($datei, $betreff);
fwrite($datei, "<br>");
$text=nl2br($text);
fwrite($datei, $text);
fwrite($datei, "<br><br>");
if($datei)
{
	echo "Eintrag gespeichert";
	
}
else
{ 
echo "Datei zum schreiben konnte nicht geöffnet werden";
}
fclose($datei);

?>
</body></html>

so hab jetzt leider keine zeit die quelltexte zu kürzen weil ich weg muss.

IMB

P.S.: schonmal danke im vorhaus für die antworten
 
Ist Safe_Mode=ON?

dann heisst es $_POST["name"] anstatt $name
usw

das deine Einträge gelöscht werden, dürfte damit zusammenhängen, das du den Inhalt der Datei überschreibst. Müsstest erst den Inhalt auslesen und dann an den Inhalt das neue anhängen.

Bin aber nicht so fitt in Dateien schreiben/lesen, daher kein Code
 
Nimm doch einfach ein fertiges Gästebuch und pass dir das an. Hab da "zuuuuufällig" eins auf meiner Seite, dass auf Textdateien basiert (inkl. Editfunktion usw.). ;)


Greetz
 
Original geschrieben von sabre
Nimm doch einfach ein fertiges Gästebuch und pass dir das an. Hab da "zuuuuufällig" eins auf meiner Seite, dass auf Textdateien basiert (inkl. Editfunktion usw.). ;)


Greetz

danke fürs angebot aber ich möchte bei der sache ja auch was lernen und das geht schlecht wenn ich alles nur kopiere.
 
bin jetzt soweit fertig nur noch eine funktion will ich einbauen und zwa das der neuste beitrag zuerst angezeigt wird. hab auch schon alle im forum angesprochenen varianten ausproboeirt aber keine . :( (bei der sache mit den arrays wird nur array statt den beiträgen ausgegeben und bei der andern sache mit der speicherung wird der eintrag davor immer gelöscht.

hier der quellcode fürs eintragen :

Code:
<html>
<head>
<title></title>
<meta http-equiv="Refresh" content="3; URL=logbuch.php">
</head>
<body>
<?
	$datei=fopen("log.txt","a+");

	if($datei)
		{
			fwrite($datei,"\n<b>Von:</b>".$_POST[name]."\n");
			fwrite($datei, "<b>Betreff:</b>".$_POST[betreff]."\n");
			$text=nl2br($_POST[eintrag]);
			fwrite($datei,"<b>Eintrag:</b>". $_POST[beitrag]."\n");
			



			echo "Eintrag gespeichert";

		}
	else
		{
			echo "Datei zum schreiben konnte nicht geöffnet werden";
		}
	fclose($datei);
	?>
	</body></html>

hoffe ihr könnt mir helfen.
 
Zuletzt bearbeitet:
PHP:
$file = fopen("datei.txt", "r");
$arr = array();
while(!feof($file)) $arr[] = fgets($file);
$arr = array_reverse($arr);
while(list($key, $val) = each($arr)) echo $val."<br>";
Mein (ungetester) Vorschlag :)

Idee ist die Datei Zeile für Zeile in ein Array zu lesen, diesen dann umzukehren und dann wieder auszugeben :)

p.s.: Kennst du Groß-/Kleinschreibung? ;-)
 
Zuletzt bearbeitet:
Zurück