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

Beitrag lesen

Hello,

Guten Morgen Tom,

habe das Script jetzt mal zusammengedängelt. Leider funktioniert es irgendwie nicht. Mache ich da was falsch. :-(


<?php

error_reporting(E_ALL);    ## das kann zum Entwickeln ganz hilfreich sein!

function convert_file($source, $target)

$source = fopen($source, "rb");
  $target = fopen($target,"wb");
  $i=0;

if ($source and $target)

{

while (false !== ($inputstr = fgets($source, 4096))
      {
          $inputstr = strtr($inputstr, ":", ",");
          $inputstr = str_replace("<-", ",<-", $inputstr);
          $inputstr = str_replace("S->", ",S->", $inputstr);
          $inputstr = str_replace("<S", "S", $inputstr);
          $inputstr = str_replace("<M", "M", $inputstr);
          $inputstr = str_replace(" SP", ",SP", $inputstr);
          $inputstr = str_replace(" TCP", ",TCP", $inputstr);
          $inputstr = str_replace(">", "", $inputstr);
          $ergebnis = trim ($inputstr);

$zerlegen = explode(",", $ergebnis);

$zeile=implode(',',$zerlegen)."\n";

##            fputs($target,$zeile);    ## das war doppelt

$i++;
          fputs($target, $zeile);
          echo ".";
      }

}                                   ## Klammer hat gefehlt

else
  {

fclose($source);                ## besser ist's, [ ... ]
        fclose($target);                ## vor dem Abbrechen Files schließen

return false;
  }

echo "fertig! von $source wurden $i Zeilen bearbeitet<br>";
  fclose($source);
  fclose($target);

return true;
}

$_filenames = glob('G:/xampp/htdocs/Kartonwege/Daten_Source/*.txt');

if (is_array($_filenames))   ## es würde auch reichen "if ($filenames)", aber das ist schmuddleig
{
    foreach($_filenames as $source)
    {
        $target = $source.'.csv';      ## Zieldatei heitß dann z.B. 'T20090603.telegram.csv'
        $ready = convert_file($source, $target);

if ($ready)
        {
            echo "$source wurde fehlerfrei konvertiert<br>";
        }
        else
        {
            echo "<p>$source konnte nicht fehlerfrei konvertiert werden!</p>";
        }
    }
}

?>


>   
> ----------------------------------------------------------------------  
>   
> Ich habe noch nie mit declaration von Funktionen gearbeitet.  
  
Sonst entdecke ich jetzt nichts mehr.  
Nimm das Error\_Reporting(E\_ALL) mit rein.  
  
Und wenn Du Fehlermeldungen bekommst, dann poste die auf jeden Fall vollständig. Das vereinfacht ungemein die Hilfestellung.  
  
In dieses Verzeichnis muss der Apache (PHP) auch schreiben dürfen!  
  
    G:/xampp/htdocs/Kartonwege/Daten\_Source/  
  
  
  
  
Liebe Grüße aus dem schönen Oberharz  
  
  
Tom vom Berg  
![](http://selfhtml.bitworks.de/Virencheck.gif)  
  

-- 
Nur selber lernen macht schlau  
<http://bergpost.annerschbarrich.de>