Beschreibung:
Ich bitte um ein Angebot für ein PHP-Skript für den flexiblen und automatisierten Import von CSV-Dateien in eine MySQL-Datenbank.
Spezifikationen:
- Umsetzung in PHP und MySQL
- Import von beliebigen CSV-Listen, sowohl von externen Servern als auch vom eigenen Server
- Einfaches Backend zur Verwaltung der Listenprofile (Passwortschutz nicht erforderlich, da Einbettung in bestehendes geschütztes Backend geplant)
- Möglichkeit der Eingabe eines Listennamens, einer Shop-ID, der URL der CSV-Datei (sofern notwendig mit Login und Passwort) und des Updateintervalls für jede Liste
- Möglichkeit der automatischen Erkennung und/oder manuellen Eingabe von Trennzeichen, Zeichencodierung, Textbegrenzern etc. für jede Liste
- Möglichkeit des manuellen UND automatisierten Imports der im System angelegten CSV-Listen (automatisierter Import je nach hinterlegtem Intervall, z.B. stündlich, täglich, wöchentlich; manueller Import sofort)
- Möglichkeit der flexiblen Zuordnung von Spalten der CSV-Datei zu den Spalten der gewählten Tabelle aus der MySQL-Datenbank und Speicherung der Zuordnungen im Listenprofil
- Import neuer, noch nicht im System vorhandener Produkte aus der CSV-Datei in die Datenbank
- Aktualisierung bestehender Produkte wenn Änderungen in der CSV-Datei vorhanden sind
- Markierung (nicht Löschung!) von Produkten in der Datenbank, die nicht mehr in der CSV-Datei vorhanden sind (sollen einen anderen Status bekommen)
- Abbruch eines Importvorgangs bei eventuellen Fehlern in einer Liste (fehlerhafte Datensätze sollen verhindert werden) und Fortsetzen des Importvorgangs beim nächsten Shop
- Liste der letzten XX Importvorgänge mit Anzeige der Anzahl an neuen, geänderten, unveränderten und gelöschten Produkte sowie eventuellen Problemen/Fehlermeldungen
- Möglichkeit, das gesamte System für verschiedene Projekte zu nutzen und dazu eigenhändig auf verschiedenen Servern zu installieren
- Stabile Performance auch bei sehr vielen und sehr großen CSV-Dateien
- Kommentierung des Quellcodes für eventuelle Änderungen und Erweiterungen
- Dokumentation der Funktionsweise
Wichtig: Es ist ausschließlich das skizzierte Backend zu programmieren. Ein Frontend, etwa ein Preisvergleich, wird nicht benötigt.