CSV mit PHP

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

  • #16
    D.h. ich ersetze diese Zeilen:
    PHP-Code:
    for ($i 0$i sizeof($fcontents); $i++)
    {
        
    $line trim($fcontents[$i]);
        echo 
    "<tr bgcolor=\"#D3D3D3\">
    <td colspan=\"3\">
    $line <br></td></tr>";
        
    $arr explode(";" $line);
        
    #Wenn die CSV Datei TAB separiert ist, 
            #muss "," durch "/t" ersetzt werden
        
    $sql "insert into test values ('"implode("','",$arr) ."')";
        
    #TABELLENNAME durch den Namen der 
            #Tabelle in der Datenbank ersetzen
        
        
    mysql_query($sql);
        echo 
    "<tr bgcolor=\"#32CD32\">
            <td colspan=\"3\">" 
    $sql "<br>\n</td></tr>";
        
        if(
    mysql_error())
        {
            echo 
    "<tr bgcolor=\"red\">
              <td colspan=\"3\">" 
    mysql_error() . "<br>\n</td></tr>";
        }

    durch die hier?

    PHP-Code:
    $query mysql_query("LOAD DATA INFILE {datei} FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n'"); 
    Höre nie auf zu versuchen. Versuche nicht aufzuhören.

    Kommentar


    • #17
      Original geschrieben von arkos
      ah sorry, hab das mit den spalten überlesen...

      da muss ich noch mal drüber nachdenken und eine rauchen.
      warum muss es vertikal sein (am rande gefragt) - wieviele flags hat dann deine db, oder wird die immer über "alter table" erweitert...

      musst du nicht, aber erklär doch mal bitte warum du das so machst...
      das ist ganz einfach. hier kannst du es dir mal selbst anschauen. ich habe mir eine datenbank mit all den feldern angelegt, die ich brauche. es sind die felder, die ich für die druckerspezifikationen brauche. da sich diese druckerspezifikationen ändern und täglich neue drucker ins haus kommen, möchte ich meine datenbank nicht jeden tag per hand erneuern, sondern einfach es in der csv ändern und dann hochladen. der rest geschieht ja dann normaler weise von alleine.

      schau dir einfach mal die csv an und dann denke ich, hat sich deine frage von selbst beantwortet.

      Druckerspezi
      Höre nie auf zu versuchen. Versuche nicht aufzuhören.

      Kommentar


      • #18
        ok, verstehe und denke, dass ich eine brauchbare lösung habe:

        vertausche die spalten und zeilen in der EXCEL liste, sodass du in den den spalten die spezifikationen und in den zeilen die drucker hast.

        bsp:
        zeile 1:

        desktop 2 zoll etc; thermodirekt; zebra; u.s.w.

        dann kannst du das ding mit einem einzeiler via load data infile in die db kriegen...



        edit: ja, dann ersetzt du das, wie du es oben schon angedeutet hast
        **********
        arkos
        **********

        Kommentar


        • #19
          Re: Re: Re: CSV mit PHP

          Original geschrieben von sk4r
          Also ich bin kein kleines Kind.
          Wenn du auf klar formulierte Rückfragen nicht eingehst, muss ich aber davon ausgehen.
          nun zu deinen rückfragen. es wird horizontal in die datenbank gespeichert. ich brauche aber das script, welches vertikal die datensätze ablegt. jetzt sag mir, dass du das nicht verstanden hast.
          Viel eher solltest du dir diesen Tonfall schnellstens abgewöhnen.

          Ja, das ist eine verständliche Antwort auf meine Rückfrage, und bestätigt meine Vermutung - aber wieso bitte sagst du das nicht gleich so?


          Dann lese doch zunächst alles in ein zweidimensionales Array ein - und mache dann eine einfache Zeilen-Spalten-Transformation, in dem du das ganze mit zwei For-Schleifen durchgehst.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #20
            Original geschrieben von arkos
            ok, verstehe und denke, dass ich eine brauchbare lösung habe:

            vertausche die spalten und zeilen in der EXCEL liste, sodass du in den den spalten die spezifikationen und in den zeilen die drucker hast.

            bsp:
            zeile 1:

            desktop 2 zoll etc; thermodirekt; zebra; u.s.w.

            dann kannst du das ding mit einem einzeiler via load data infile in die db kriegen...



            edit: ja, dann ersetzt du das, wie du es oben schon angedeutet hast
            Hmm aber wenn ich diese .xls exportiere dann stehen alle druckernamen in einer zeile, alle druckertypen in einer zeile usw. geht es bspweise nicht, dass ich mit der ersten zeile alle id's ausfülle, mit der 2. zeile alle druckernamen usw?

            Original geschrieben von wahsaga
            Wenn du auf klar formulierte Rückfragen nicht eingehst, muss ich aber davon ausgehen.

            Viel eher solltest du dir diesen Tonfall schnellstens abgewöhnen.

            Ja, das ist eine verständliche Antwort auf meine Rückfrage, und bestätigt meine Vermutung - aber wieso bitte sagst du das nicht gleich so?


            Dann lese doch zunächst alles in ein zweidimensionales Array ein - und mache dann eine einfache Zeilen-Spalten-Transformation, in dem du das ganze mit zwei For-Schleifen durchgehst.
            Das habe ich auch eben probiert. Hab das vor 10 minuten in nem anderen board gelesen. Aber ich bin nicht wirklich weiter gekommen. Also kurz gesagt, es hat nicht funktioniert.
            Höre nie auf zu versuchen. Versuche nicht aufzuhören.

            Kommentar


            • #21
              Original geschrieben von sk4r
              Das habe ich auch eben probiert. Hab das vor 10 minuten in nem anderen board gelesen. Aber ich bin nicht wirklich weiter gekommen. Also kurz gesagt, es hat nicht funktioniert.
              Tolle Problembeschreibung ...

              Wenn du uns zeigen würdest, wie du es probiert hast, könnten wir dir vielleicht weiterhelfen.


              Btw: Gewöhne dir bitte mal sinnvolles Zitieren an - jedes Mal Fullquotes, wenn du dich nur auf einen Teil beziehst, sind reichlich unnötig.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #22
                Lieber wahsaga, wenn ich gemein wäre, würde ich dich jetzt fragen, wie alt du bist. soviele rechtschreib- und kommasetzungsfehler, wie du machst, macht kein erwachsener. das sollst du nicht als beleidigung sondern als konter ansehen.

                es gibt doch das sprichwort. es gibt keine dummen fragen. es gibt nur dumme antworten.
                Zuletzt geändert von sk4r; 20.09.2006, 14:39.
                Höre nie auf zu versuchen. Versuche nicht aufzuhören.

                Kommentar


                • #23
                  Hmm aber wenn ich diese .xls exportiere dann stehen alle druckernamen in einer zeile, alle druckertypen in einer zeile usw.
                  deswegen sollst du die .xls-datei so ändern, das in einer zeile als erstes druckername(info) als nächstes druck dann hersteller etc steht. also zeilen und spalten vertauschen.


                  geht es bspweise nicht, dass ich mit der ersten zeile alle id's ausfülle, mit der 2. zeile alle druckernamen usw?
                  wenn du die infos in der db zeilenweise dann so hast:

                  id info druck ...
                  1 desktop... thermodirekt ...

                  dann kannst du die infos bestens auslesen.

                  bsp: select * from druckerdb where id="1"
                  und schon hast du alle infos zum ersten drucker...


                  wenn du sie "senkrecht" reinschreiben willst, hast du das problem, dass du deine datenbank mit jedem neuen drucker auch über "alter table add column" (oder so) erweitern musst.

                  dein denkansatz ist dort glaube ich falsch.
                  **********
                  arkos
                  **********

                  Kommentar


                  • #24
                    Original geschrieben von sk4r
                    soviele rechtschreib- und kommasetzungsfehler, wie du machst, macht mein erwachsener.
                    Sagt jemand, der nicht mal die Taste für Großbuchstaben findet ...?
                    das sollst du nicht als beleidigung sondern als konter ansehen.
                    Ich sehe es als Beleg dafür an, dass du hier gar keine sinnvolle Diskussion bzgl. deines Problems mehr führen willst, sondern nur stänkern - also *close*
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #25
                      CSV mit PHP

                      leute,

                      was soll denn dieses kleinkarierte gehabe? sowohl sk4r als auch wahsaga.

                      @sk4r: wahsaga hat schon recht und gar nicht so viele rechtschreibfehler drinne, wie du sagst... und dein ton war auch daneben

                      @wahsaga: das ist nicht das bild, was ich von dir durch deinen blog bezüglich fc islam habe. ist doch fast ne ähnliche trotzreaktion.

                      so, nu gebt euch die hand, und wir sind wieder konstruktiv
                      seid freundlicher bzw. geduldiger
                      **********
                      arkos
                      **********

                      Kommentar


                      • #26
                        Re: CSV mit PHP

                        *zusammenführ*, *re-open*

                        Original geschrieben von arkos
                        ist doch fast ne ähnliche trotzreaktion.
                        Ich habe keine Lust, mich immer wieder von Leuten blöd anpinkeln zu lassen, die noch nicht einmal ihr Problem nachvollziehbar beschreiben können.


                        @sk4r: Wenn du weiter dein problem diskutieren willst, bitte.
                        Allen anderen Unfug lässt du hier aber bitte raus.
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #27
                          @wahsaga: verstehe dich voll und ganz, kommt als mod sicher nicht selten vor

                          @sk4r: konntest du nun mit meinem vorschlag was anfangen?
                          **********
                          arkos
                          **********

                          Kommentar


                          • #28
                            ich will nur mein fehler aufräumen
                            PHP-Code:
                            $datei="http://t.sunnynation.de/test/Mappe1.csv";
                            $fcontents file($datei);

                            foreach(
                            $fcontents as $k=>$v){
                              echo 
                            $k."-".$v." ".implode"--",explode(";" $v))."<br>";
                            $fcontents[$k]=explode(";" $v);

                            }
                            function 
                            getspaltenarray($index,$array){
                            $arr=array();
                            //hier habe ich fehler gemach, da ich es gar nicht getestet habe
                            foreach($array as $ding){$arr[]=$ding[$index];}
                            return 
                            $arr;
                            }
                            //spalte 2
                            echo "dein array <pre>".print_r(getspaltenarray(2,$fcontents),true)."</pre>"
                            aber dass die Menschen etwas programmieren, und dann Ihr eigene Queltext nicht nachvollziehen können kann ich nicht begreifen
                            Slava
                            bituniverse.com

                            Kommentar

                            Lädt...
                            X