Olli1967: Text einlesen, verändern und in eine Datenbank speichern.

Beitrag lesen

Hallo Tom,

Danke für deine Hilfe, habe das Script nochmal mit einem richtigen Editor angeschaut und dann auch den Syntax Fehler gefunden (Windows Notepad war da wohl nicht ganz richtig ;-)). Jetzt läuft es gut durch.
Im Eifer des Gefechts habe ich auch gleich ein 2tes Script für den Datenimport geschrieben was auch funktioniert. Was ich da nur nicht verstanden habe ist, das die Zeile:

  
while (false !== (fgets($source)))  

nur genau die Hälfte importiert, während alles prima funktioniert mit:

  
while (false !== (!feof($source)))  

Hier nochmal das ganze 2te Script:

  
<?php  
error_reporting(E_ALL);  
  
function daten_import($source)  
{  
  $source = fopen($source, "rb");  
  $db = mysqli_connect("localhost","root","start","","3306") or die("Keine Verbindung zur Datenbank!");  
  $sql = "CREATE DATABASE `telegramme`";  
  $ergebnis=mysqli_query($db, $sql);  
  $i=0;  
  
  if ($source)  
{  
	while (false !== (!feof($source)))  
	{  
		$ipteiler = fgets($source);  
	list($t1, $t2, $t3, $t4, $t5, $t6, $t7, $t8, $t9) = explode(",", $ipteiler);  
	  
	$ins = ("replace into telegramme.`daten`  
	values('".$t1."','".$t2."','".$t3.":".$t4.":".$t5.":".$t6."','".$t7."','".$t8."','".$t9."');");  
    $i++;  
	echo ".";  
	  
$ergebnis=mysqli_query($db, $ins);  
//$muell_loeschen=("delete from telegramme.`daten` where richtung not like 'S->' and richtung not like '<-E'");  
//$ergebnis=mysqli_query($db, $muell_loeschen);  
  
  	}  
}  
 else  
{  
	fclose($source);  
 return false;  
}  
  
	echo "fertig! von $source wurden $i Zeilen in die Datenbank geschoben<br>";  
	fclose($source);  
  return true;  
}  
  
// Hier ist das Script durchgelaufen  
$_filenames = glob('G:\xampp\htdocs\Kartonwege\Daten_Source\*.csv');  
  
if (is_array($_filenames))  
{  
    foreach($_filenames as $source)  
    {  
        $ready = daten_import($source);  
  
        if ($ready)  
        {  
            echo "$source wurde fehlerfrei eingelesen<br>";  
        }  
        else  
        {  
            echo "<p>$source konnte nicht fehlerfrei eingelesen werden!</p>";  
        }  
    }  
}  
  
?>  
  

Nochmal Danke.

Gruß Olaf