Aus .txt zeilenweise mittels PHP in MySQL-Datenbank schreiben
Hallo Forum.
Für ein Schulprojekt haben wir eine Liste mit über 2000 Spielen enthalten, die wir in eine DB schreiben sollen + Genres etc dazuschreiben sollten.
Die ganzen Spiele sind in einer .txt gespeichert ...
Habe es so umgeformt, dass das Format folgendes ist:
Spielname; Spieljahr; Herstellername
Also z.B.:
100000 Pyramid ;1988;Basada
Die Datenbank besteht aus 4 Tabellen, 3 davon sind hier nur relevant:
-->Spiel (spiel_id,spiel_name,spiel_genre,spiel_hersteller,spiel_farbe,spiel_sprache,spiel_jahr)
-->Hersteller (hersteller_id,hersteller_name)
-->Genre (genre_id,genre_name)
sprache (sprache_id,sprache_name)
Wie ich mit PHP Werte aus einer .txt auslese und in eine DB auslese ist mir schon klar, aber wie kann ich die Trennung machen?
Also wie lese ich eine Zeile so aus, dass ich sie z.B. in einem array speichern könnte, etwa so:
while ($zähler <= $zeilen in txt) {
$array['0'] = $erste spalte in .txt (also z.B. 100000 Pyramid);
$array['1'] = $zweite spalte in .txt (also z.B. 1988);
$array['2'] = $dritte spalte in .txt (also z.B. Basada);
$zähler++;
}
Greetz, Lousek
Für ein Schulprojekt haben wir eine Liste mit über 2000 Spielen enthalten, die wir in eine DB schreiben sollen + Genres etc dazuschreiben sollten.
Die ganzen Spiele sind in einer .txt gespeichert ...
Habe es so umgeformt, dass das Format folgendes ist:
Spielname; Spieljahr; Herstellername
Also z.B.:
100000 Pyramid ;1988;Basada
Die Datenbank besteht aus 4 Tabellen, 3 davon sind hier nur relevant:
-->Spiel (spiel_id,spiel_name,spiel_genre,spiel_hersteller,spiel_farbe,spiel_sprache,spiel_jahr)
-->Hersteller (hersteller_id,hersteller_name)
-->Genre (genre_id,genre_name)
sprache (sprache_id,sprache_name)
Wie ich mit PHP Werte aus einer .txt auslese und in eine DB auslese ist mir schon klar, aber wie kann ich die Trennung machen?
Also wie lese ich eine Zeile so aus, dass ich sie z.B. in einem array speichern könnte, etwa so:
while ($zähler <= $zeilen in txt) {
$array['0'] = $erste spalte in .txt (also z.B. 100000 Pyramid);
$array['1'] = $zweite spalte in .txt (also z.B. 1988);
$array['2'] = $dritte spalte in .txt (also z.B. Basada);
$zähler++;
}
Greetz, Lousek
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 90224
Url: https://administrator.de/forum/aus-txt-zeilenweise-mittels-php-in-mysql-datenbank-schreiben-90224.html
Ausgedruckt am: 10.04.2025 um 16:04 Uhr
4 Kommentare
Neuester Kommentar
Tag,
du suchst nach explode()
~Arano
Edit:
Hm...
du suchst nach explode()
<?php
$spielesammlung_txt=file('spile_db.txt');
foreach($spielesammlung_txt as $spiel){
list($name,$genre,$hersteller)=explode('; ',$spiel);
echo 'Name: '.$name;
echo 'Genre: '.$genre;
echo 'Hersteller: '.$hersteller;
}
?>
~Arano
Edit:
Hm...
foreach(file('spile_db.txt') as $spiel){
...könnte auch funktionieren...
Daaas ist ganz einfach !
1. s. file()
2. file() liest dir die Datei zeilenweise in ein Array und mit der foreach-Schleife, gehst du dann die Elemente in dem Array einzelnt durch (hier die einzelnen Zeilen der ursprünglichen Datei)
Gruß Arano
1. s. file()
2. file() liest dir die Datei zeilenweise in ein Array und mit der foreach-Schleife, gehst du dann die Elemente in dem Array einzelnt durch (hier die einzelnen Zeilen der ursprünglichen Datei)
Gruß Arano