Tom: csv aus sql datenbank zeilenweise in datei schreiben

Beitrag lesen

Hello,

*** huch da fehlt noch die Verbindung zum Server...
  *** aber das kannst Du mal selber einbauen

if(mysql_select_db($database_local, $local))
  {
      $query_images = "SELECT $fieldlist FROM 00\_images";
      $result = mysql_query($query_images, $local) or die(mysql_error());

if ($result)
      {
         if ($fh = fopen($dateiname, 'wb+'))
         {
             if ($flock($fh, LOCK_EX))
             {
                 while ($_row = mysql_fetch_assoc($result))
                 {
                     if(!fputcsv($fh, $_row, ,';' '"'))
                     {
                         fehlermeldung('umpf, kann nicht mehr schreiben');
                         break;
                     }
                 }
             }
             else
             {
                 fehlermeldung('blah, Fehler beim Locking');
             }
             fclose($fh);
         }
         else
         {
             fehlermeldung('blubb, Fehler bei Dateiöffnung');
         }
         mysql_free_result($result);
     }
     else
     {
        fehlermeldung('hagah, Kein MySQL-Result vorhanden: '.mysql_error($con);
     }
  }
  else
  {
     fehlermeldung ('dammich, kann Datenbank nicht ansprechen');
  }

http://de.php.net/manual/en/function.fputcsv.php
Mit fputcsv() kannst Du eine CSC-Datei erzeugen, die nachher mit fgetcsv wieder lesbar ist.
Alle CSV-Leseprogramme können damit aber nicht umgehen, weil hier nur Strings in die Delimiter eingepackt werden, reine numerische Werte aber nicht. Das mag aber Excel nun wieder ganz gerne, weil es daran die Typunterscheidung betreibt.

Ein harzliches Glückauf

Tom vom Berg

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