CSV DAtei

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • CSV DAtei

    Hallo

    ich möchte die Werte einer MYSQL Datenbank in eine CSV Datei schreiben lassen;
    Es soll aber immer der aktuelle Datensatz in der Datei stehen und nicht einfach angehängt werden - bisher habe ich mit $fp = fopen($datei, "a"); die Daten in eine Datei geschrieben - hier werden die Datensätze leider nicht überschrieben.
    knowledge is power - arm yourself

  • #2
    ???
    Vielleicht mal mit 'w' anstelle des 'a' versuchen?

    Wenn Du fopen() schon gefunden hast, wieso hast Du nicht weitergelesen?
    http://de3.php.net/manual/de/function.fopen.php
    'w': Öffnet die Datei nur zum Schreiben und setzt den Dateizeiger auf den Anfang der Datei sowie die Länge der Datei auf 0 Byte. Wenn die Datei nicht existiert wird versucht sie anzulegen.
    Konrad

    In a world without walls and fences, who needs Windows and Gates ?
    (Sun Microsystems)

    Kommentar


    • #3
      da hab ich ja

      Wenn ich das Attribut "w" verwende schreibt er mir nur einen Datensatz in die Datei;
      Ich lasse mit einer while Schleife die Datensätze auslesen:
      hier der Quellcode:
      while ($array_result = mysql_fetch_array($result))
      {
      $string = "".$array_result[1].",".$array_result[2].",".$array_result[3].",".$array_result[4].";";
      $datei = "export.csv";
      $fp = fopen($datei, "a+");
      fputs($fp, $string);
      fclose($fp);

      }
      knowledge is power - arm yourself

      Kommentar


      • #4
        ist ja auch kein wunder wenn du das in der while() machst, überschreibst du jedesmal den letzten datensatz. daten in der while() sammel/zusammenfassen, und danach in die datei schreiben
        h.a.n.d.
        Schmalle

        http://impressed.by
        http://blog.schmalenberger.it



        Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
        ... nur ohne :-)

        Kommentar


        • #5
          Oder vor der 'while' einfach die Datei mit 'w' auf Null-Länge setzen, was aber nicht so schön ist.
          Wenn nämlich nix aus der DB kommt, haste ne leere Datei.

          Also: DB auslesen, String oder noch besser nen Array bauen, schauen, ob da was drin ist, mit 'w' alles auf einmal in die Datei schreiben.
          Konrad

          In a world without walls and fences, who needs Windows and Gates ?
          (Sun Microsystems)

          Kommentar


          • #6
            danke

            auf die einfachsten Sachen kommt man machmal nicht - dank auch
            knowledge is power - arm yourself

            Kommentar


            • #7
              oder so
              PHP-Code:
              while ($array_result mysql_fetch_array($result))
                
              $dateiinhalt[]=implode(',',$array_result);
              $text=implode("\n",$dateiinhalt);
              $fp=fopen('datei.ext','wb');
              fwrite($fp,$text);
              fclose($fp); 
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar

              Lädt...
              X