Tutorials

Mit PHP und CSV Dateien Tutorial

Einloggen
Benutzername:
Passwort:

Passwort vergessen?
Kostenlos
Anmelden
anzeigen
Mit PHP und CSV Dateien


2851 - phate - 30.06.2006 13:43 Uhr - Version: 1 - - verlinken als BB-Code


In diesem Tutorial beschäftigen wir uns wie man eine CSV Datei ausliest und auch neue Daten in die datei hineinschreibt.
Erstmal zur Erklärung:

Eine CSV-Datei ist ähnlich einer Textdatei nur sind die einzelnen daten in einer Zeile durch ein ausgwähltes Zeichen getrennt. Die CSV Datei ist bei PHP für die Anwender gedacht, die auf ihrem Webspace kein MySQL haben, aber trotzdem in den Genuss von Datenbanken kommen wollen. Natürlich ist CSV nicht so mächtig wie MySQL. Mit PHP gibt es eine Funktion, mit der man CSV Dateien Zeile für Zeile ausliest und die Zeile dann in die Datenteile zerlegt:

fgetcsv

fgetcsv werden drei Parameter übergeben:
fgetcsv(dateizeiger, dateigroesse, trennzeichen)

Um alle Zeilen einer CSV Datei auszulesen packt man die Funktion in eine while-Schleife. Die Daten werden dann in einem Array zurückgeliefert.

Die CSV-Datei beinhaltet bei diesem Test 3 Zeilen:

1
2
3
01.01.2007 um 00:00;Testuser;Hi das ist mein Beitrag
01.01.2007 um 00:10;Testuser;Hier ist ja nichts los
01.01.2007 um 00:20;Testuser;Hallo jemand da


Hier ist ein script, das eine CSV Datei ausliest und ausgibt Smily NR:9 anzeigen.php)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html><body>
<?
$dz
=fopen("test.csv","r");
$size=filesize("test.csv");
while (
$data=fgetcsv($dz,$size,";")) {
 echo 
"<p><small>";
 echo 
$data[1];
 echo 
", ";
 echo 
$data[0];
 echo 
"</small><br>";
 echo 
$data[2];
 echo 
"</p>";
}
fclose($dz);
?>
<a href="eintragen.php">Antworten</a>
</body></html>


Jetzt kommen wir zum eintragen Smily NR:9 eintragen.php)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<html>
<body>
<?
$date
=date("d.m.Y \u\m H:i");
$user=$_POST['name'];
$text=$_POST['text'];
if (empty(
$user) && empty($text)) {
echo 
"<form action='eintragen.php' method='post'>";
echo 
"<input type='text' name='name' value='Name'><br>";
echo 
"<input type='text' name='text' value='Beitrag'><br>";
echo 
"<input type='submit' value='Eintragen'>";
} elseif (!empty(
$user) && !empty($text)) {
$dz=fopen("test.csv","a");
$eintrag="\n";
$eintrag.=$date;
$eintrag.=";";
$eintrag.=$user;
$eintrag.=";";
$eintrag.=$text;
fwrite($dz,$eintrag);
fclose($dz);
echo 
"<a href='anzeige.php'>Beiträge anzeigen</a>";
}
?>
</body></html>


mfg pHaTe

Mitglieder-Kommentare


#1 von B4ckflip
Das ist schön erklärt nur hab ich leider nichts kapiert Smily NR:8 hab von sowas keine Ahnung ...

Nur registrierte Mitglieder könnten einen Kommentar schreiben.

Melde dich doch ganz einfach an, es ist kostenlos. :-)