Moin, bis jetzt habe ich hier im Forum nur gelesen aber heute bräuchte ein bißchen Hilfe. Ich habe mir eine Routine gebastelt mit der ich aus unsere WaWi automatisch eine csv zur Bestands-Aktualisierung in den Ordner Gambio/Import/ transferiere. Ich hatte dann versucht, eine php zu basteln, die entweder zeitgesteuert (Cronjob) oder triggergesteuert die Aktualisierung übernimmt. Ich habe das script unten eingefügt. Beim Aufruf erscheint nur http error 500... Ach ja, ich bin kompletter Anfänger im Bereich php,......dieses Ding habe ich mit lesen, suchen und chatgbt gebastelt, also keine Hemmungen, wenn das Ding kpl. falsch ist. Vielen Dank ! Beispiel Import_csv (zeitgesteuert): <?php error_reporting(E_ALL) ini_set('diplay_errors' ); require_once 'includes/application_top.php'; // Konfiguration $importVerzeichnis = dirname(--Dir--) . 'import/'; // Standard-Importverzeichnis in Gambio $dateiname = 'artikelstamm_fuer_bestands_update.csv'; // Name der CSV-Datei $csvDatei = $importVerzeichnis . $dateiname; $trennzeichen = ';'; // Trennzeichen der CSV-Datei (anpassen falls nötig) // Prüfen, ob die Datei existiert if (!file_exists($csvDatei)) { die("Fehler: Datei nicht gefunden - $csvDatei"); } // Datei öffnen if (($handle = fopen($csvDatei, "r")) !== FALSE) { $header = fgetcsv($handle, 0, $trennzeichen); // Erste Zeile als Spaltenüberschriften if (!$header) { die("Fehler: CSV-Header konnte nicht gelesen werden."); } // Verbindung zur Datenbank $db = xtc_db_connect() or die("Fehler: Verbindung zur Datenbank fehlgeschlagen."); while (($daten = fgetcsv($handle, 0, $trennzeichen)) !== FALSE) { $dataAssoc = array_combine($header, $daten); if (!$dataAssoc || !isset($dataAssoc['products_model'])) { continue; // Überspringe Zeilen ohne Artikelnummer } $productsModel = xtc_db_input($dataAssoc['products_model']); // Artikelnummer unset($dataAssoc['products_model']); // Entferne die Artikelnummer aus den Update-Daten $updateSets = []; foreach ($dataAssoc as $key => $value) { $updateSets[] = "$key = '" . xtc_db_input($value) . "'"; } if (!empty($updateSets)) { $updateSql = "UPDATE products SET " . implode(', ', $updateSets) . " WHERE products_model = '$productsModel'"; xtc_db_query($updateSql); } } fclose($handle); echo "Import abgeschlossen!"; } else { die("Fehler: Datei konnte nicht geöffnet werden."); } ?>