Geschrieben von jubworld am 23.06.2006, 22:31

Hallo
hier erkläre ich, wie man in eine Textdatei (beispielname.txt) schreibt und sie ausliest.
Das kann man zum Beispiel auch bei einem Dateibasiertem Gästebuch gebrauchen.
Vorrausgesetzt wird, dass ihr euch mit Variablen "auskennt".
Also:
als erstes ertellen wir eine .php datei mit namen: schreiben.php
in dieser datei wird in die php datei geschrieben.
die befehle dazu:
fopen() =
öffnen der datei
fwrite() oder fputs() =
schreiben in die datei
fclose() =
schliessen der datei
explode() =
zerteilen mit einm zeichen, in einzelne arrays
ab hier beginnt die php datei:
-als erstes bekommen wir die variablen:
$variable1 = $_POST['name1'];
$variable1 = $_POST['name1'];
$variable1 = $_POST['name1'];
-jetzt öffnen wir die datei, bzw weisen der geöffneten textdatei eine variable ($fd) zu ; die erklärung zu "a+" unten (***):
$fd = fopen("dateiname.txt","a+");

-die 3 variablen werden zu einer zusammengefasst und durch ein zeichen / eine zeichenkombi getrennt (|-|) und am ende der zeilenumbruch ( " \n " ):
$aus3mach1 = $variable1."|-|".$variable2."|-|".variable3."\n";

-in die textdatei wird geschrieben:
fwrite ($fd,$aus3mach1);

-die textdatei wird geschlossen:
fclose ($fd);

also folglich sieht schreiben.php so aus:
<?php
$variable1 = $_POST['name1'];
$variable1 = $_POST['name1'];
$variable1 = $_POST['name1'];
$fd = fopen ("dateiname.txt","a+");
$aus3mach1 = $variable1."|-|".$variable2."|-|".variable3."\n";
fwrite ($fd,$aus3mach1);
fclose ($fd);
?>

jetzt muss nurnoch eine weiterleitung mit html oder wie auch immer zu lesen.php gemacht werden.

lesen.php:
am anfang wieder die datei öffnen, aber diesesmal mit "r":
$fd = fopen ("dateiname.txt","r");

jetzt werden die zeilen / die zeile gelesen, ambesten mit einer while schleife, wobei mn $i was einfach für die zahl steht die bei jeder neuen zeile um eins erhöht wird und man so die zeilen einzeln lesen kann ; $ex ist ein array...:
while ($zeile[$i] = fgets($fd))
{
$ex = explode ("|-|",$zeile[$i]);
$variable1 = $ex[1];
$variable2 = $ex[2];
$variable3 = $ex[3];
$i++;
}

Jetzt mumss in der while schleife nurnoch das ausgegeben wie man es haben will....

*** "a+": das a bedeutet das was in die datei geschrieben wird, wird immer an das bestehende in der datei angehängt und das + hinter dem a bedeutet dass die datei erstellt wird, falls sie noch nicht vorhanden ist. es gibt auch noch: "r+" bzw nur "r" und "w+" bzw "w" : r bedeutet aus datei kann NUR gelesen werden, w bedeutet die datei wird komplett überschrieben... und das + wieder, dass die datei falls nicht vorhanden, erstellt wird.

mfg
jubworld

Bewertung Anzahl
6
42,9 %
6 Bewertungen
5
35,7 %
5 Bewertungen
3
7,1 %
1 Bewertungen
2
14,3 %
2 Bewertungen