Daten begrenzen bei CSV import

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

  • Daten begrenzen bei CSV import

    Hallo,

    gibt es eine möglichkeit beim Import einer CSV Datei die Zeilen die Eingetragen werden zu begrenzen ?

    Angenommen es sind 120000 Zeilen in der Datei. Ich möchte aber nur die ersten 50000 eintragen.

    Grund dieser Frage ist der Timeout der bei PHP anfällt. Das Script bricht ab weil die Datei zu groß ist und es werden keine Daten eingetragen.

    Vieleicht kann man ja auch das Timout umgehen ?

    MFG
    Bitsecure

  • #2
    es gibt mehrere möglichkeiten csv zu importieren. wie machst du es?

    Kommentar


    • #3
      per script. Die Daten liegen auf einem anderem Server.

      Brauchst Du teile aus dem Quelltext ?

      Kommentar


      • #4
        würde mir erstmal reichen, wenn du mir sagst, was das script macht, ob es mit mysql dir datei direkt importiert, oder aber - wie ich vermute - zeilenweise einliest.

        Kommentar


        • #5
          die Daten werden auf meinem Server zwischengespeichert und dann Zeilenweise eingelesen.

          Kommentar


          • #6
            Und genau da musst du ansetzen.

            die schleife kannst du so begrenzen, dass sie nur x mal durchläuft. Fertig!

            Kommentar


            • #7
              vieleicht in diesem abschnitt ?

              PHP-Code:
              // Datei Zeile für Zeile einlesen
                      
              $eingestellte_auktion=0;
                      
              $laenge=filesize($dateiname);
                      while(!
              feof($f))
                      {
                          
              $felder=fgetcsv($f,$laenge,";") ;
                          if (
              count($felder)==21 )
                          { 

              Kommentar


              • #8
                ziemlich genau sogar.

                Kommentar


                • #9
                  hast du auch eine tip wie ?

                  Kommentar


                  • #10
                    zum bsp, indem du eine zähler einbaust?

                    Kommentar


                    • #11
                      gibts da irgendwo eine anleitung oder kann man irgendwo was nachlesen ?

                      Kommentar


                      • #12
                        naja, das sind grunlagen

                        Daher sollte es nicht so schwer sein, einer variable den wert 0 zuzuweisen und dann bei jedem schleifendurchlauf 1 dazu zu zählen.

                        suche dazu auch im forum, manual, suma, ...

                        Kommentar


                        • #13
                          na dann mach ich das mal. danke !!

                          Kommentar


                          • #14
                            noch'n tipp:
                            wenn du dir irgendwo zwischenspeicherst wo du stehengeblieben bist, kannst du beim nächsten mal mit fseek() direkt dorthin springen und weitermachen ..
                            mfg,
                            [color=#0080c0]Coragon[/color]

                            Kommentar


                            • #15
                              Die ganze Datei wird erst geladen und dann verarbeitet also eingelesen. Ich krieg den Mist aber nicht ans Laufen und bin es jetzt leid. Nehme jetzt einen eigenen Server. Dann gibt eigene PHP einstellungen.

                              Kommentar

                              Lädt...
                              X