Tabellenabfrage in CSV oder XLS exportieren?

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

  • Tabellenabfrage in CSV oder XLS exportieren?

    Hallo Leute,

    gibt es eine möglichkeit, mein Ergebniss von einer Tabellenabfrage in eine CSV oder XLS zu exportieren?

    Kann mir da jemand behilflich sein? Hab soetwas noch nie gemacht.

    LG, m-werk
    LG, m-werk

  • #2
    Re: Tabellenabfrage in CSV oder XLS exportieren?

    fputcsv() und co.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      So, hab nun folgendes eingebaut, aber es kommt immer die Meldung:

      "Datei konnte nicht geöffnet werden"

      Ich habe eine leere auswertung.csv-Datei in den aktuellen Ordner hochgeladen.


      PHP-Code:
      Auswahl=trim($_POST['Auswahl']);
      include(
      "db_connect_pw.php");
      $result mysql_query("SELECT * FROM zukunftsinvestments where Ort like '$Auswahl' ORDER BY ID DESC");
      $reihen mysql_num_rows($result);
      $zeigen floor($reihen 100);
      if(!
      $start) { $start 0; }
      $result1 mysql_query("SELECT * from zukunftsinvestments where Ort like '$Auswahl' order by ID desc limit $start,100");
      if (
      $result

      if (
      $f fopen ("auswertung.csv"'w')) 

      while (
      $r mysql_fetch_row ($result)) 

      for (
      $i=0$i<count($r); $i++) 
      $r[$i] = '"'.str_replace ('"','\"'$r[$i]).'"'
      fputs ($fimplode(';',$r)."\r\n"); 

      fclose ($f); 
      } else 
      echo 
      "Datei konnte nicht geöffnet werden"
      } else 
      echo 
      "MySQL-Fehler: ".mysql_error(); 
      ?> 
      1. Wie speichere ich die Daten in die Datei und

      2. Wie stelle ich es genau an, so dass ich einen Button zum Download der CSV-Datei habe?

      LG, m-werk
      LG, m-werk

      Kommentar


      • #4
        Original geschrieben von m-werk
        So, hab nun folgendes eingebaut, aber es kommt immer die Meldung:

        "Datei konnte nicht geöffnet werden"

        Ich habe eine leere auswertung.csv-Datei in den aktuellen Ordner hochgeladen.
        Dann hat diese jetzt, durch das Erstellen per FTP(?), vermutlich die falschen Rechte.

        Lösche sie mal wieder, und starte dein Script dann.

        2. Wie stelle ich es genau an, so dass ich einen Button zum Download der CSV-Datei habe?
        Wenn du dir Datei erst mal erstellt hast, brauchst du doch nur noch einen Link ausgeben, der darauf verweist.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          GELÖST

          Danke für die INFO, das hat funktioniert und ich erhalte auch das gewünschte Ergebnis.

          LG, m-werk
          LG, m-werk

          Kommentar


          • #6
            Hallo,

            gibt's eigentlich ne Möglichkeit, auch die Überschriften der Tabellenspalten in die CSV zu bekommen?

            LG, m-werk
            LG, m-werk

            Kommentar


            • #7
              PHP-Code:
              SHOW COLUMNS FROM tabelle 
              der rest wie gehabt, nur vor der while schleife.

              gruß
              peter
              Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
              Meine Seite

              Kommentar


              • #8
                Hallo, ich bekomms nicht hin. Bei mir feht noch was und ich komm nicht dahinter.

                PHP-Code:
                if ($f fopen ("auswertung.csv"'w')) 

                'SHOW COLUMNS FROM zukunftsinvestments';
                while (
                $r mysql_fetch_row ($result)) 

                for (
                $i=0$i<count($r); $i++) 
                Was mach ich da falsch, wo liegt der Fehler.

                LG, m-werk
                LG, m-werk

                Kommentar


                • #9
                  Das 'SHOW COLUMNS...' muss als mysql_query abgesetzt werden. Also:

                  mysql_query ('SHOW COLUMNS....');

                  PHP-Code:
                  if ($f fopen ("auswertung.csv"'w')) 
                  'SHOW COLUMNS FROM zukunftsinvestments'; <--- mysql_query ();
                  while (
                  $r mysql_fetch_row ($result)) 
                  { for (
                  $i=0$i<count($r); $i++) 
                  ich hoffe dein script geht hier wenigstens noch ein wenig weiter. Wenn es das gewesen ist dann ist das so nicht richtig.

                  Kommentar


                  • #10
                    Hallo, natürlich geht der Code weiter. Das war nur ein Auszug.

                    Anbei der ges. Code, da dies nicht funktioniert. Es kommt immer die Fehlermeldung:

                    Parse error: parse error, unexpected '<' in .......

                    Die Fehlermeldung kommt in folgender Zeile vor:
                    PHP-Code:
                    'SHOW COLUMNS FROM zukunftsinvestments'; <--- mysql_query (); 
                    PHP-Code:
                      <?php
                    $Auswahl
                    =trim($_POST['Auswahl']);
                    include(
                    "db_connect_pw.php");
                    $result mysql_query("SELECT * FROM zukunftsinvestments where Ort
                    like '
                    $Auswahl' ORDER BY ID DESC");
                    $reihen mysql_num_rows($result);
                    $zeigen floor($reihen 100);
                    if(!
                    $start) { $start 0; }
                    $result1 mysql_query("SELECT * from zukunftsinvestments where Ort
                    like '
                    $Auswahl' order by ID desc limit $start,100");
                    if (
                    $result

                    if (
                    $f fopen ("auswertung.csv"'w')) 
                    'SHOW COLUMNS FROM zukunftsinvestments'; <--- mysql_query ();
                    while (
                    $r mysql_fetch_row ($result)) 
                    { for (
                    $i=0$i<count($r); $i++)
                    $r[$i] = '"'.str_replace ('"','\"'$r[$i]).'"'
                    fputs ($fimplode(';',$r)."\r\n"); 

                    fclose ($f); 
                    } else 
                    echo 
                    "Datei konnte nicht geöffnet werden"
                    } else 
                    echo 
                    "MySQL-Fehler: ".mysql_error(); 
                    ?>
                    lg, m-werk
                    LG, m-werk

                    Kommentar


                    • #11
                      PHP-Code:
                      'SHOW COLUMNS FROM zukunftsinvestments'; <--- mysql_query (); 
                      das ist natürlich kein PHP Code die Zeile sollte so aussehen:

                      PHP-Code:
                      mysql_query ('SHOW COLUMNS FROM bla'); 
                      und dann weiter wie gewohnt. Dachte das wäre verständlich

                      Kommentar


                      • #12
                        Das mit mysql_query hatte ich schon. Ich habs dann eh so probiert, da ich mir dachte, dass das so wie vorher nicht gehen kann. Danke trotzdem für die Info.

                        Jetzt hab ich nur noch ein Problem. ES WERDEN KEINE TABELLENÜBERSCHRIFTEN IN DER CSV ANGEZEIGT.

                        Es wird einfach nur der Innhalt der Tabelle angezeigt ohne Überschriften.

                        LG, m-werk
                        LG, m-werk

                        Kommentar


                        • #13
                          was für ein ergebnis bekommst du denn mit der abfrage:
                          PHP-Code:
                          mysql_query ('SHOW COLUMNS FROM zukunftsinvestments'
                          mal ein print_r auf das ergebnis gemacht?

                          gruß
                          peter
                          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                          Meine Seite

                          Kommentar


                          • #14
                            ein letztes mal den rest solltest du nun selber hinbekommen:

                            PHP-Code:
                            <?php
                            $Auswahl
                            =trim($_POST['Auswahl']);

                            include(
                            "db_connect_pw.php");

                            $result mysql_query("SELECT * FROM zukunftsinvestments WHERE Ort LIKE '$Auswahl' ORDER BY ID DESC");
                            $reihen mysql_num_rows($result);
                            $zeigen floor($reihen 100);
                            if(!
                            $start$start 0;

                            if (
                            $result

                                if (
                            $f fopen ("auswertung.csv"'w')) 
                                { 
                                    
                            $col_result mysql_query ('SHOW COLUMNS FROM zukunftsinvestments');
                                    while (
                            $aCol mysql_fetch_array ($col_result)) {
                                        
                            fputs ($f$aCol[0].";");
                                    } 
                            // while
                                    
                            fputs ($f"\r\n");
                                    
                                    while (
                            $r mysql_fetch_row ($result)) 
                                    { 
                                        for (
                            $i=0$i<count($r); $i++) {
                                            
                            $r[$i] = '"'.str_replace ('"','\"'$r[$i]).'"'
                                        } 
                            // for
                                        
                            fputs ($fimplode(';',$r)."\r\n"); 
                                    } 
                            // while
                                    
                                    
                            fclose ($f); 
                                } else {
                                    echo 
                            "Datei konnte nicht geöffnet werden"
                                } 
                            // if
                            } else {
                                echo 
                            "MySQL-Fehler: ".mysql_error(); 
                            // if
                            ?>
                            kopier das und füge es ein dann funktioniert es

                            Kommentar


                            • #15
                              Original geschrieben von Kropff
                              was für ein ergebnis bekommst du denn mit der abfrage:
                              PHP-Code:
                              mysql_query ('SHOW COLUMNS FROM zukunftsinvestments'
                              mal ein print_r auf das ergebnis gemacht?

                              gruß
                              peter
                              Darum geht es hier leider nicht. Die Abfrage von SHOW COLUMNS wird gar nicht irgendwo verwendet. Mit ein wenig überlegen hätte man drauf kommen können.

                              Kommentar

                              Lädt...
                              X