Mein Lieferant sendet jeden Tag eine Aktualisierung des Bestellstatus mit einem variablen statischen Dateinamen in meine SQL-DB zu importieren. Mein cronjob hat den folgenden Code:Importieren Sie eine CSV-Datei mit variabler Dateiname
<?php
require('cron_config.php');
// Open and parse the sales.csv file
$fh = fopen("../files/out/orderstatus.csv", "r");
while ($line = fgetcsv($fh, 1000, ","))
{
$order_id = $line[0];
$order_status_id = $line[1];
$date_modified = $line[2];
// Insert the data into the sales table
$query = "UPDATE oc_order o SET order_status_id='$order_status_id',
date_modified='$date_modified' WHERE order_id = '$order_id'";
$result = $mysqli->query($query);
}
fclose($fh);
$mysqli->close();
?>
In meinem Code sehen Sie den statischen Dateinamen "orderstatus.csv". Zukünftig erhalte ich einen dynamischen Dateinamen (Beispiel: orderstatus_ "order_id" .csv. Wie ist es möglich, diese Datei mit meinem Code zu erkennen? Die named order_id ist bereits ein Teil der sql_query.
Danke für die Hilfe
Was ist mit der Methode, die Sie gerade verwenden, falsch? Wenn Sie jeden Tag dieselbe Datei erhalten, überschreiben Sie dann die alte Datei? –
Schade, ich bin nicht php guy. Sie müssen die Auftrags-ID aus 'orderstatus_order_id.csv' analysieren, vielleicht mit' regex'. dann speichern Sie es in Variable und verwenden Sie später diese Variable in Verkettungen/Parametrisierungen von SQL: 'WHERE order_id = '". $ order_id. "'" ' –
' WHERE order_id = '". $ order_id. "'" '- Punkte, nicht' + '' s @ T.S. in php –