2017-02-07 5 views
1

Ich habe dieses PHP-Skript erstellt, um einige Daten aus meiner Datenbank zu ziehen und in CSV zu exportieren.SQL, PHP-Export nach CSV

Ich habe Header 0,1,2 festgelegt, aber ich brauche etwas statischen Text in Spalte 0

Eg statisch, Lager-Code, Menge.

Der Lagercode QTY wird aus der Datenbank gezogen.

Jede Hilfe wäre willkommen.

Mein Code ist unten. ?

// open connection to mysql database 
$connection = mysqli_connect($host, $username, $password, $dbname) or die("Connection Error " . mysqli_error($connection)); 

// fetch mysql table rows 
$sql = "select ManufacturerPartNumber, (QuantityOnHand - QuantityOnSalesOrder) from iteminventory"; 
$result = mysqli_query($connection, $sql) or die("Selection Error " . mysqli_error($connection)); 

$fp = fopen('inventory.csv', 'w'); 

    fputcsv($fp, array('0', '1', '2')); 


while($row = mysqli_fetch_assoc($result)) 
{ 
    fputcsv($fp, $row); 
} 

fclose($fp); 

//close the db connection 
mysqli_close($connection); 

>

+1

Was meinst du mit "statisch" in Spalte 0? Eine Art ID? –

Antwort

0

Wenn ich richtig verstehe, wollen Sie eine Art von ID in die erste Spalte Ihrer csv setzen, so dass Sie die hinzufügen müssen "static" -Element an der ersten Position des Arrays erhalten Sie von SQL-Ergebnis.

EDIT - aktualisiert statischen Wert haben in der ersten Spalte

Beispiel:

... 
while($row = mysqli_fetch_assoc($result)) 
{ 
    array_unshift($row, 0); 
    fputcsv($fp, $row); 
} 
... 
0

Versuchen Sie folgendes:

$header = array('Static', 'Stock code', 'QTY'); 

$fp = fopen('inventory.csv', 'w'); 

fputcsv($fp, $header); 
0

Das funktionierte

$id = 0; // or whatever else you want to have in the first column 
    while($row = mysqli_fetch_assoc($result)) 
    { 
    array_unshift($row, $id); 
    fputcsv($fp, $row); 
    $id; 
    } 
+0

Wenn Sie den gleichen Wert in der ersten Spalte für alle Ihre Zeilen möchten (aber ich frage mich, warum :-)), ist es nicht notwendig, $ i Variable. Ich habe meine Antwort aktualisiert ... –