hochladen und importieren der csv-Datei in mehrere Tabelle in mysql
Möchte ich erstellen und hochladen-Seite in php und den import der hochgeladenen csv-Datei Daten in mehrere Tabellen. habe versucht, die Suche hier aber sieht aus wie keine finden, die den Import aus einer csv mehrere Tabelle. jede Hilfe ist hier sehr willkommen. danke.
- Was meinst du mit mehreren Tabellen: alle Daten gehen in mehrere Tabellen, oder einige Daten in einer Tabelle, die anderen Daten gehen in eine andere etc?
- ja, ich meinte die Daten aus einigen Zeilen geht zu einem Tisch, der andere geht in eine andere Tabelle.
- hast du eine funktionierende Lösung?
- dies ist hilfreich, aber sieht aus wie ich werden nicht in der Lage, es zu benutzen für mein Projekt als csv sein sollte, sodass der Benutzer eine dropdown-Auswahl stammt aus der db. also ich habe eine andere Weise zu nutzen für diese.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als die andere Variante oben vorgeschlagen, können Sie Lesen Ihre CSV-Datei line-by-line " und " explodieren jede Zeile in Felder. Jedes Feld entspricht einer variable.
Wenn Sie Zugang zu PHPmyadmin, können Sie laden Sie die CSV in es. Dann kopieren, wenn über jedes gewünschte Tabelle
In Antwort auf Ihren Kommentar, dass einige Daten einer Tabelle und andere Daten einer anderen Tabelle, hier ist ein einfaches Beispiel.
Table1-Tabelle hat 3 Felder: name, Alter und Geschlecht. Tabelle2 hat 2 Felder: haircolour, shoesize. So der CSV dargelegt werden könnte, wie:
Für den nächsten Schritt werden Sie mit der Funktion fgetcsv. Dies wird brechen jede Zeile der csv in ein array, das Sie dann verwenden können, zu erstellen Sie Ihre SQL-Anweisungen:
Bitte beachten Sie, dass dies nicht alle SQL-Sicherheit, wie die Validierung zu berücksichtigen, aber das ist im Grunde, wie es funktioniert.
das problem scheint mir zu unterscheiden, was-Feld für die Tabelle.
wenn Sie senden ein header wie
und teilen Sie Sie dann in der Kopfzeile erhalten Sie alle Tabellen und Felder.
könnte sein, dass ein Weg zu gehen?
alle die besten
ps: wegen deinem Kommentar ...
Csv-Datei hat/haben kann, eine erste Zeile mit den Feldnamen in es. wenn es notwendig ist, zu kopieren csv-Daten in mehrere Tabellen, dann können Sie einen workaround, um herauszufinden, welches Feld für die Tabelle.
Nun, beim Lesen der csv-Daten können Sie über die erste Zeile, teilen Sie die Titel auf den Punkt, um herauszufinden, welche Tabellen verwendet werden, und auch die Felder.
Mit dieser Methode, Sie sind in der Lage, kopieren Sie die csv-Daten auf mehr als eine Tabelle.
Aber es bedeutet, müssen Sie code first 🙁
Split die Feldnamen
im oben genannten code, den Sie verwenden zwei insert-Abfragen, wie Sie gonna führen Sie diese Abfragen ?