php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 02-12-2019, 14:09
StefanSch
 Registrierter Benutzer
Links : Onlinestatus : StefanSch ist offline
Registriert seit: Dec 2019
Beiträge: 5
StefanSch befindet sich auf einem aufstrebenden Ast
Standard csv Export einer Tabelle

Hallo zusammen,


ich habe mir mit Hilfe des www diese Abfrage gebaut:
Code:
SELECT *
        FROM tabvalve_ext_angebotartikelstuecklisteext
        INTO OUTFILE '../ftp/specs/Specification_".$_SESSION['SpecID'].".csv' 
        FIELDS TERMINATED BY ';' 
        OPTIONALLY ENCLOSED BY '"'
        ESCAPED BY '\\' 
        LINES TERMINATED BY '\n'
        WHERE idtabvalveSpec = :0
        ORDER BY OP, BOM
die allerdings den Fehler
Code:
Parse error:  syntax error, unexpected '' '
verursacht. Da ich nicht sooo fit bit im Programmieren frag ich an der Stelle was ich hier letztendlich falsch gemacht habe?

Danke für Eure Hilfe!
Gruß
Stefan
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 02-12-2019, 17:05
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.746
Kropff befindet sich auf einem aufstrebenden Ast
Standard

Bitte den kompletten PHP-Code für den Query posten. Sonst müssen wir raten.

Gruß
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #3 (permalink)  
Alt 03-12-2019, 09:30
chorn
 Registrierter Benutzer
Links : Onlinestatus : chorn ist offline
Registriert seit: Nov 2011
Beiträge: 175
chorn befindet sich auf einem aufstrebenden Ast
Standard

Code:
        INTO OUTFILE '../ftp/specs/Specification_".$_SESSION['SpecID'].".csv' 
...
        OPTIONALLY ENCLOSED BY '"'
fällt dir was auf?
Mit Zitat antworten
  #4 (permalink)  
Alt 03-12-2019, 10:20
StefanSch
 Registrierter Benutzer
Links : Onlinestatus : StefanSch ist offline
Registriert seit: Dec 2019
Beiträge: 5
StefanSch befindet sich auf einem aufstrebenden Ast
Standard

Ich habe es jetzt inzwischen so gelöst:
Code:
private function exportSpecSheet(){
    $db = new mysqli(DBHOST, DBBENUTZER, DBPASSWORT, DBNAME);
    header( 'Content-Type: application/csv' );
    header( "Content-Disposition:   attachment;filename=Specification_".$_SESSION["SpecID"].".csv");
    $fp = fopen('ftp/specs/Specification_'.$_SESSION["SpecID"].'.csv', 'a');
    $sql = "SELECT *
        FROM tabvalve
        WHERE idtabvalveSpec = ".$_SESSION["SpecID"]."
        ORDER BY OP, BOM 
        ";
    $result = mysqli_query($db, $sql) or die( mysqli_error($db) );
    $row = mysqli_fetch_array($result);
    if($row) {
        fputcsv($fp, array_keys($row));
        mysqli_data_seek($result, 0);
    }
    while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
        fputcsv($fp, $row);
    }
    fclose($fp);
    readfile($fp);
}
Jetzt ist es aber so dass die Daten auf dem Rechner abgelegt werden, das heruntergeladene csv aber lediglich den Quellcode enthält. Das File wird also immer korrekt angelegt und befüllt, aber letztendlich nicht heruntergeladen.

Was mache ich denn noch falsch?
Mit Zitat antworten
  #5 (permalink)  
Alt 13-12-2019, 16:28
StefanSch
 Registrierter Benutzer
Links : Onlinestatus : StefanSch ist offline
Registriert seit: Dec 2019
Beiträge: 5
StefanSch befindet sich auf einem aufstrebenden Ast
Standard

Ich bekomme leider nach wie vor nur den Quellcode der Seite als csv zum Download bereitgestellt, lediglich der Export in ein csv-File funktioniert.

Aber was muss ich machen damit mir das korrekt exportierte csv-File zum herunterladen angeboten wird?

Könnt Ihr mir hier bitte noch einmal helfen?

Code:
private function exportSpecSheet(){
    $db = new mysqli(DBHOST, DBBENUTZER, DBPASSWORT, DBNAME);
    header( 'Content-Type: application/csv' );
    header( "Content-Disposition: attachment;filename=Specification_".$_SESSION["SpecID"].".csv");
    $fp = fopen('ftp/specs/Specification_'.$_SESSION["SpecID"].'.csv', 'a');
    $sql = "SELECT OP, BOM, SerienNrKpl, Baugruppe, Artikelnr, einzelMenge, gesMenge, Kommentar
        FROM tabvalve_ext_angebotartikelstuecklisteext
        WHERE IndexKompExt = ".$_SESSION["SpecID"]."
        ORDER BY OP, BOM 
        ";
    $result = mysqli_query($db, $sql) or die( mysqli_error($db) );
    $row = mysqli_fetch_array($result);
    if($row) {
        fputcsv($fp, array_keys($row));
        // reset pointer back to beginning
        mysqli_data_seek($result, 0);
    }
    while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
        fputcsv($fp, $row);
    }
    fclose($fp);
    readfile($fp);
}

@chorn
Gerade mit solchen Dingen bin ich leider nicht so sehr vertraut. Was passt denn nicht?
Mit Zitat antworten
  #6 (permalink)  
Alt 13-12-2019, 20:40
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.746
Kropff befindet sich auf einem aufstrebenden Ast
Standard

mal so was ähnliches ausprobiert?
PHP-Code:
header('Content-type: application/force-download');
...
$file file_get_contents('ftp/specs/Specification_'.$_SESSION["SpecID"].'.csv');
echo 
$file
Ist manchmal etwas tricky.

Gruß
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #7 (permalink)  
Alt 17-12-2019, 11:31
StefanSch
 Registrierter Benutzer
Links : Onlinestatus : StefanSch ist offline
Registriert seit: Dec 2019
Beiträge: 5
StefanSch befindet sich auf einem aufstrebenden Ast
Standard

Es klappt einfach nicht!
Ich zähle schon über 200 Downloads, aber es ist schon immer so dass das File zwar ordentlich auf dem Server mit dem richtigen Inhalt abgelegt wird, aber der Download enthält immer nur den Quellcode.
Kann es sein dass der Verweis einfach nicht passt, dass er das File zum Herunterladen dann nicht mehr findet? Fehlt da ein Strich oder ein Hochkomma? Ist da ein Zeichen zu viel oder zu wenig?


Wenn der Code nach dem "fclose" aufhört (ohne "readfile") passiert genau das gleiche. Aber fclose stößt doch keinen Download an! Oder doch?
Ich blicke hier leider nicht durch..
Mit Zitat antworten
  #8 (permalink)  
Alt 17-12-2019, 21:43
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.746
Kropff befindet sich auf einem aufstrebenden Ast
Standard

Probier erst mal etwas ganz Einfaches:
PHP-Code:
<?php
  $open
fopen('php://file''w');
  
fputcsv($open, array('Bla','Blubb''Blubber'));
  
fclose($open);
?>
Was passiert dann?

Gruß
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #9 (permalink)  
Alt 18-12-2019, 15:29
StefanSch
 Registrierter Benutzer
Links : Onlinestatus : StefanSch ist offline
Registriert seit: Dec 2019
Beiträge: 5
StefanSch befindet sich auf einem aufstrebenden Ast
Standard

Mit genau diesem Code kann er das File nicht anlegen. Aber ich nehme an ich sollte die Zeile auch anpassen..

Wenn ich diesen Code nehme:
Code:
  $open= fopen("ftp/specs/Specification_".$_SESSION["SpecID"].".csv", 'a');
  fputcsv($open, array('Bla','Blubb', 'Blubber'));
  fclose($open);
Wird das csv mit dem Text des Arrays angelegt. Es wird dann aber kein Filer heruntergeladen.

So solls wohl auch sein. Oder?


Was müsste ich dann an meinem Code ändern?
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Frage zum Export einer SQL-Tabelle in csv/Excel Lavingstar PHP Developer Forum 10 14-01-2009 14:45
Problem mit CSV-Export einer MySQL-Tabelle pascaluhlmann PHP Developer Forum 3 03-03-2006 18:42
Problem mit Export einer MySQL-Tabelle pascaluhlmann PHP Developer Forum 4 27-02-2006 00:30
CSV Export aus Tabelle bweichel PHP Developer Forum 1 30-01-2006 21:21
Problem mit Csv-export in phpmyadmin und Csv-import in Excel Bazi00 Off-Topic Diskussionen 4 05-08-2004 16:18

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

Microweber CMS

Open source, drag and drop website builder

13.01.2020 Berni | Kategorie: HTML5/ EDITOR
PhoneGap Apps mit JS, CSS3 und HTML5 erstellen ansehen PhoneGap Apps mit JS, CSS3 und HTML5 erstellen

PhoneGap, Framework zur Erstellung hybrider Applikationen für mobile Endgeräte.

13.01.2020 Berni | Kategorie: App-Entwicklung
Bo)Tickets

Bo)Tickets bietet Ihnen eine Schnittstelle für Kundenanfragen an. In dem Script definieren Sie Supportbereiche, also zum Beispiel „Technik, Buchhaltung, Support“. Ihre Kunden können dann über ein Formular eine Anfrage abschicken.

31.12.2019 bocombo | Kategorie: PHP/ Ticketsystem
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:30 Uhr.