Semikolon // oder $trennzeichen_excel = ","; --> Komma ############################################################# include("kurs/datenbankanbindung.php"); // fügt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php setcookie("ck_verz","$verz"); // Verzeichnis in Cookie speichern $user_admin=$_COOKIE["user_admin"]; //Cookie laden // Rechteüberprüfung dbconnect(); if ($user_admin == ""){ require("index.php"); exit;} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite $result = mysql_query("SELECT 1 FROM pros_admin_rechte, pros_admin_rechte_zuord , pros_admin WHERE pros_admin_rechte.pros_admin_rolle = pros_admin_rechte_zuord.pros_admin_rolle AND pros_admin_rechte_zuord.faid = pros_admin.faid AND pros_admin.user = '$user_admin' AND pros_admin_rechte_zuord.pros_admin_rolle = 'a_import'"); $row = mysql_fetch_array($result); if ($row[0] != 1){ include("kurs/rechte_subdir.php"); exit;} // Rechteüberprüfung ende $limitedext = array(".csv"); //Erlaubte Dateieindung beim Upload if (isset($_GET['action'])) $action = $_GET['action']; else $action = ""; switch($action){ default: $heute = mktime(0, 0, 0, date("m"), date("d"), date("Y")); // heutiges Datum $heute_format = date("Y-m-d", $heute); // ISO-8601 Format wie in der Datenbank: Formatierung für Vergleiche erforderlich function deleteFiles($verz){ $handle = opendir($verz); while ($file = readdir ($handle)) { if($file != "." && $file != "..") { $datei = $verz.$file; if(@unlink($datei)){ $error = TRUE; } else { $error = FALSE; } } } closedir($handle); return $error; } deleteFiles($verz); // Dateien werden im Uploadverzeichnis gelöscht, falls noch welche darin wären echo " CSV Upload

CSV Upload
Import eines Studienjahrgangs
Datei wählen:
Erlaubte Dateiendungen: *.csv

"; break; case "csvimp": // https://www.tutorials.de/tutorials65420.html $tempname = $_FILES['file']['tmp_name']; $name = $_FILES['file']['name']; $type = $_FILES['file']['type']; $size = $_FILES['file']['size']; $einheit = "Byte"; // Für die Efolgsmeldung. $extlimit = "yes"; //Do you want to limit the extensions of files uploaded $ext = strrchr($name,'.'); if (($extlimit == "yes") && (!in_array($ext,$limitedext))) { $err[] = " Falscher Dateityp

Falscher Dateityp

Es dürfen nur csv-Dateien hochgeladen werden!

"; } if($size > "9900000") { $err[] = " Datei zu groß

Datei zu groß

Die Datei welche Sie hochladen wollen, ist zu gross!
Maximale Dateigroesse beträgt 9.900 KB!

"; } $name = str_replace (array("ä", "ö", "ü", "ß", "Ä", "Ö", "Ü"," "), array("ae", "oe", "ue", "ss", "Ae", "Oe", "Ue", "_"), $name); $heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: https://de2.php.net/manual/de/function.date.php $heuteformat = date("H-i-s_Y-m-d", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll $datum_db = date("Y-m-d H:i:s", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll $neu = $heuteformat."_".$name; setcookie("ck_neu","$neu"); If(empty($err)) { move_uploaded_file("$tempname", "$verz$neu"); // Unterverzeichnisse wie folgt: copy("$tempname", "pdf/$neu"); $row = 1; // Anzahl der Arrays $handle = fopen ("$verz$neu","r"); // Datei zum Lesen öffnen echo " Datensätze prüfen

Datensätze prüfen
"; while ( ($data = fgetcsv ($handle, 1000, $trennzeichen_excel)) !== FALSE ) // Daten werden aus der Datei in ein Array $data gelesen { $num = count ($data); // Felder im Array $data werden gezählt //print "

$num fields in line $row:
\n"; print "\n"; $row++; // Anzahl der Arrays wird // inkrementiert $uid = trim(strtolower($data[0])); $nachname = trim($data[1]); $vorname = trim($data[2]); $mtknr = trim($data[3]); $pokfz = trim($data[4]); $plz = trim($data[5]); $ort = trim($data[6]); $str = trim($data[7]); $stg = trim($data[8]); $stgtext = trim($data[9]); $ag = trim(strtoupper(substr($data[10], 0,1))); $jahrgang = trim(strtoupper(substr($data[10], 1,2))); $pwd = trim(strtolower($data[11])); $geb_tag = trim(strtoupper(substr($data[12], 0,2))); $geb_mon = trim(strtoupper(substr($data[12], 3,2))); $geb_jahr = trim(strtoupper(substr($data[12], 6,4))); $geburtstag = "$geb_jahr-$geb_mon-$geb_tag"; $mail = trim(strtolower($data[13])); print "

"; // for ($c=0; $c < $num; $c++) { // FOR-Schleife: Oder Anzahl der zu importierenden Felder ($num) print "\n"; // uid print "\n"; // Nacname print "\n"; // Vorname print "\n"; // Matrikelnr print "\n"; // KFZ print "\n"; // PLZ print "\n"; // ORT print "\n"; // Straße print "\n"; // STG print "\n"; // StgText print "\n"; // AG print "\n"; // Jahrgang print "\n"; // Passwort print "\n"; // Geburtstag print "\n"; // Mail // } print ""; $ln_inserts[]++; //zählt die Anzahl der importierenden DS } echo "
uid Nachname Vorname Matrikelnr. KFZ PLZ Ort Straße Stg StgText AG Jahr Passwort Geburtsdatum Mail
$uid$nachname$vorname$mtknr$pokfz$plz$ortstr$stg$stgtext$ag$jahrgang$pwd".$geb_tag.".".$geb_mon. ".".$geb_jahr."$mail

"; $zahl=count($ln_inserts); echo"

Sollen die $zahl Datensätze importiert werden?
Auswahl Markieren
Datensätze nicht importieren
Datensätze importieren
   
 
"; }else { foreach($err as $error) echo "$error"; exit; } //Ende if error fclose ($handle); break; case "csvimp2": $neu=$_COOKIE["ck_neu"]; //CSV-Dateinamen um Datei löschen zu können $verz=$_COOKIE["ck_verz"]; //Uploadverzeichnis aus Cookie holen if ($_POST['import'] == "0") // DS sollen nicht importiert werden { $dateiname="$verz$neu"; if (@unlink($dateiname)) // Funktion löscht Dateien und gibt true / false zurück { echo" Import beendet

Importvorgang abgebrochen

Datemsätze wurden nicht importiert!
Die CSV-Datei wurde vom Server gelöscht!



"; }else{ echo" Datei nicht gelöscht

Importvorgang abgebrochen

Datemsätze wurden nicht importiert!
Die CSV-Datei ($neu) konnte nicht vom Server gelöscht werden!



"; } // End if } elseif($_POST['import'] == "1") // DS sollen importiert werden { $row = 1; // Anzahl der Arrays $handle = fopen ("$verz$neu","r"); // Datei zum Lesen öffnen while ( ($data = fgetcsv ($handle, 1000, $trennzeichen_excel)) !== FALSE ) // Daten werden aus der Datei in ein Array $data gelesen { $num = count ($data); // Felder im Array $data werden gezählt //print "

$num fields in line $row:
\n"; print "\n"; $row++; // Anzahl der Arrays wird // inkrementiert $uid = trim(strtolower($data[0])); $nachname = trim($data[1]); $vorname = trim($data[2]); $mtknr = trim($data[3]); $pokfz = trim($data[4]); $plz = trim($data[5]); $ort = trim($data[6]); $str = trim($data[7]); $stg = trim($data[8]); $stgtext = trim($data[9]); $ag = trim(strtoupper(substr($data[10], 0,1))); $jahrgang = trim(strtoupper(substr($data[10], 1,2))); $pwd = trim(strtolower($data[11])); $geb_tag = trim(strtoupper(substr($data[12], 0,2))); $geb_mon = trim(strtoupper(substr($data[12], 3,2))); $geb_jahr = trim(strtoupper(substr($data[12], 6,4))); $geburtstag = "$geb_jahr-$geb_mon-$geb_tag"; $mail = trim(strtolower($data[13])); $passwd = md5($pwd); //$passwd = mysql_escape_string($passwd); // ACHTUNG: AN DIESER ZEILE NICHTS ÄNDERN, da die erste Zeile des Strings rausgefiltert wird bei der Ausgabe der nichtimportierten DS $insert[] .= "INSERT INTO stud (uid, nachname, vorname, mtknr, pokfz, poplz, poOrt, poStrasse, stg, stgText, AG, Jahrgang, Pwd, Geburtstag, mail) VALUES ( '$uid' ,'$nachname' ,'$vorname' ,'$mtknr' ,'$pokfz' ,'$plz' ,'$ort' ,'$str' ,'$stg' ,'$stgtext' ,'$ag' ,'$jahrgang' ,'$passwd' ,'$geburtstag' ,'$mail' ) "; } dbconnect(); for ($i=0;$i Import beendet

Importvorgang erfolgreich

Der Importvorgang wurde erfolgreich beendet!
Die CSV-Datei wurde vom Server gelöscht!

"; $num1 = count ($y); // Anzahl der nicht importierten UIDs if ($y != "") { echo"Es wurden $num1 Datensätze nicht importiert
Wahrscheinlich ist die UID bereits in der Datenbank vorhanden,
oder eines der Felder ist zu lang:

"; } // Ausgabe der nicht importierten DS for ($i=0;$i"; } echo"



"; }else{ echo" Datei nicht gelöscht

Importvorgang erfolgreich

Der Importvorgang wurde erfolgreich beendet!
Die CSV-Datei ($neu) konnte nicht vom Server gelöscht werden!

"; $num1 = count ($y); // Anzahl der nicht importierten UIDs if ($y != "") { echo"Es wurden $num1 Datensätze nicht importiert
Wahrscheinlich ist die UID bereits in der Datenbank vorhanden,
oder eines der Felder ist zu lang:

"; } // Ausgabe der nicht importierten DS for ($i=0;$i"; } echo"



"; } // End if }else { // Es wurde kein Radiobutton gewählt! Technisch aber ausgeschlossen echo "sie müssen eine Auswahl treffen"; } function deleteFiles($verz){ $handle = opendir($verz); while ($file = readdir ($handle)) { if($file != "." && $file != "..") { $datei = $verz.$file; if(@unlink($datei)){ $error = TRUE; } else { $error = FALSE; } } } closedir($handle); return $error; } deleteFiles($verz); // Dateien werden im Uploadverzeichnis gelöscht, falls noch welche darin wären } // ende Action ?>