TXT Datein in Datenbank einlesen?!

medico

Erfahrenes Mitglied
Hallo,

ich habe ein riesen Problem...und zwar habe ich ca. 300 einzelne TXT-Files die ich alle in ein DB einlesen muss.

Meine DB hat 3 Spalten id | rubrik | text
Die Files müssen in die Text spalte und ihnen muß auch noch eine Rubrik zugeteilt werden, die steht nicht in der Files sonder die sind nur so sortiert....d.h. ich habe bei mir auf der Festplatte ca. 30 Ordner mit den Rubriken 100-130 und im jeden Ordner sind die entsprechenden Files...

Wie kann ich das jetzt am einfachsten lösen?



Gruß MediCo
 
hmm,

schreib dir einfach ein Script, die Programmiersprache solltest du so wählen dass sie auch mit Datenbanken arbeiten kann.
 
Hallo Medico!

Ich gehe hier mal von PHP und MYSQL aus!

Habe schnell ein Script zusammengestückelt. Ist zwar auch noch immer ein großer Aufwand aber wenns nur einmal sein muß:

Hier der Code:

PHP:
<?

$dbserver="localhost"; // DB-Server
$dbuser="user"; // Username
$dbpass="passwort"; // Password 
$dbname="dbname"; // Datenbankname
@$connection=mysql_connect($dbserver,$dbuser,$dbpass);
if (!$connection)
    {
        exit;
    }
mysql_select_db($dbname);

function listdir($path=".")    
{
    $dir = dir($path);
    $files=array();
    while($file=$dir->read())
    {
        if($file!="." && $file!=".." && $file!="index.php") 
        { 
            array_push($files, $file); 
        }
    }
    $dir->close();
    return $files;
} 

//Hier der Aufruf der Funktion 
$file=listdir();
foreach($file as $filename) 
{ 
    
//hier legst du den Rubriknamen fest
$rubrik="1";
$fp = fopen($filename,'rb');
$text = fread($fp,filesize($filename));
fclose($fp);
@$outcome=mysql_query("INSERT INTO test VALUES (NULL,'$rubrik','$text')");
require('../../failure.php'); // das ist bei mir zum Fehler abfangen
}

?>

Als index.php in dem jeweiligen Unterverzeichnis abspeichern und aufrufen.
den Rubriknamen mußt du dir in diesem Fall jedesmal umändern. Wenn
das nicht reicht, sollte es zumindest ein Ansatz gewesen sein.

mfg Hoizwurm
 
Zuletzt bearbeitet:
Zurück