wo fehlt die Schleife?

Golz

Erfahrenes Mitglied
Hi,

ich habe Prog, dass mir CSV Dateien in eine DB einließt.


Das Problem ist, dass er nur die erste Zeile bzw garkeine Zeile einließt :(

ich glaube, dass hier eine Schleife fehlt aber ich weiß net genau wo ich die einsetzen soll.

Hier mal der Code.

PHP:
?>
<object id="Adressen" classid="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83">
 <param name="DataURL" value="' .$_POST['csv']. '">
 <param name="UseHeader" value="true">
 <param name="FieldDelim" value=";">
</object>
<?php
$vorname_csv = "<span datafld=\"Vorname\"></span>" ; 
$name_csv = "<span datafld=\"Name\"></span>" ; 
$user_csv = "<span datafld=\"Username\"></span>" ; 
$pass_csv = "<span datafld=\"Passwort\"></span>" ;					
			
mysql_select_db($database_klassensprecherwahl, $klassensprecherwahl);
$query_csv_user_einspielen = "INSERT INTO `user` (`Username`, `Name`, `Vorname`, `Passwort`, `Page`, `Gewaehlt`, `Online`, `admin`) VALUES ('$vorname_csv', '$name_csv', '$user_csv', MD5('$pass_csv') , './user.php', '0', '0', '0')";
$csv_user_einspielen = mysql_query($query_csv_user_einspielen, $klassensprecherwahl) or die(mysql_error());
//weiterleiten an ./user_a_a_l.php um weitere User anlegen zu können
header("Location: ./user_a_a_l.php?username_admin_uaal=$upload_user");
exit;

Die CSV Datei Sieht volgendermaßen aus:

Code:
Vorname;Name;Username;Passwort
alexander;morello;user1;123
patrick;gölz;user2;123
andre;gärtner;user3;123
henning;renz;user4;123
daniel;schaller;user5;123
massi;morello;user6;123
peter;fuchts;user7;123
matze;simroth;user8;123
micha;baldauf;user9;123
michael;siegle;user10;123
die erste Zeile iss für die benennung der Felder (wenn ich richtig informiert bin :D )

in meiner DB habe ich aber mehr Felder als ich in der CSV habe. die fülle ich Statisch auf wie man oben erkennen kann. :D


Gruß

Patrick
 
PHP:
$handle = fopen ("datei.csv", "r");
while ($data = fgetcsv ($handle, 1000, ";")) {
  print_r ($data);
}
fclose ($handle);
 
das Problem bei deiner hilfe iss, dass die Datei Lokal auf dem rechner ist und nicht auf dem Server, dann bringt er einen Fehler und wenn ich versuche die Variable zu öffnen bringt er mir einen Fehler.
 
Golz hat gesagt.:
das Problem bei deiner hilfe iss, dass die Datei Lokal auf dem rechner ist und nicht auf dem Server, dann bringt er einen Fehler und wenn ich versuche die Variable zu öffnen bringt er mir einen Fehler.
Könntest du versuchen dich etwas deutlicher auszudrücken und deine Texte vor dem Absenden noch einmal querlesen. Was du schreibst versteht kein Mensch. Zudem ist es essentiell zu wissen, welcher Fehler auftaucht, weil wir alle hinsichtlich hellseherischer Fähigkeiten unterentwickelt sind.

Fakt ist: Der oben gepostete Code kann keine Daten in die Datenbank schreiben, weil das Script keine CSV-Daten erhält. Wenn die lokal vorhandene CSV-Datei eingespielt werden soll, muss diese entweder über einen HTTP-Upload auf den Server übertragen werden oder du kopierst die Datei selbst per FTP. Wenn die Datei letztendlich auf dem Server liegt, kannst du mit _voodoos Code-Schnipsel die Daten einlesen, zeilenweise durchlaufen und in die Datenbank einfügen.

Dein geposteter Code schreibt nur einmalig HTML-Code in die Datenbank - und zwar den, den du zuvor den Variablen zugewiesen hast. Eine Verbindung zur CSV-Datei besteht jedenfalls nicht.
 
Zurück