Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

XLS Dateien in eine Datenbank importieren

Frage Entwicklung PHP

Mitglied: v3rtico

v3rtico (Level 1) - Jetzt verbinden

25.08.2008, aktualisiert 26.08.2008, 9169 Aufrufe, 9 Kommentare

Ja, ich schon wieder. Diesmal habe ich wieder ein Problem und bei Google habe ich keine Hilfe gefunden. Diesmal geht es um den Import von Daten in eine MySQL Datenbank.

Also mein Plan sieht wie folgt aus: Der User hat bestimmte Daten in einer Excel-Tabelle (*.XLS). Alle Spalten haben immer in allen Tabellen von allen nutzern die gleiche Überschrift. Nun soll der User auf eine Seite gehen, dort in einem Upload-Formular die Datei hochladen. Die Daten aus der Datei sollen nach dem upload in die MySQL Datenbank importiert werden.


Meine Frage ist erstmal grundsätzlich: Ist das überhaupt möglich?

Wenn nein in welchem Maße wäre es möglich also mit welchen Veränderungen am "plan" könnte man sowas ähnliches realisieren?

Und natürlich: Wie ist sowas möglich, welche Befehle muss ich mir anschauen und so.


Vielen Dank für eure Hilfe
Viele Grüße,
v3rtico
Mitglied: Frt001
25.08.2008 um 11:21 Uhr
Warum nicht gleich ein Webformular machen mit Php und mysql oder sind die Excel sheets so lang?
Bitte warten ..
Mitglied: v3rtico
25.08.2008 um 11:24 Uhr
Das Webformular gibt es bereits, aber die Sheets haben teilweise bis zu hundert Einträgen. Außerdem soll der Anwender selbst in der Lage sein, die Einträge über einen solchen Upload einzustellen.
Bitte warten ..
Mitglied: Frt001
25.08.2008 um 11:35 Uhr
Eine Lösung wäre ODBC und DAO, da es dafür kein Standart Makro gibt, müsstest du dir selbst eins machen.

Oder aber du schaust mal hier nach

http://www.office-loesung.de/ftopic238716_0_0_asc.php
Bitte warten ..
Mitglied: v3rtico
25.08.2008 um 11:41 Uhr
Hmm... Kann man Visual Basic auf nem Server ausführen?
Bitte warten ..
Mitglied: petenicker
25.08.2008 um 12:06 Uhr
Hallo,

gleich zu Anfang eine Warnung: ich habe das nicht getestet. Wenn du das versuchen willst, nutze um Himmels Willen nicht eine Produktivumgebung!

Du kannst die Excel-Tabelle als eine tab-getrennte Textdatei abspeichern.

Diese txt-Datei lädst du auf den Server hoch. Danach solltest du dich damit befassen: http://dev.mysql.com/doc/refman/5.1/de/loading-tables.html

Wie gesagt, ich habe es nicht getestet. Ich kann dir nicht mit Sicherheit sagen, ob bereits bestehende Datensätze dabei überschrieben werden.

Könnte aber mit dem Verfahren funktionieren.
Bitte warten ..
Mitglied: v3rtico
25.08.2008 um 14:28 Uhr
Bei den Tab-getrennten Dateien muss man aber glaube ich jedes leere Feld auf NULL setzen, also /N eintragen. Das ist wiederum in meinem Anwendungsberecih zu viel Arbeit. Trotzdem Danke für die Idee.

Mir ist noch die Idee gekommen, ob man nicht vielleicht das CSV Format verwenden kann. Das müsste doch bestimmt möglich sein und die leeren felder müssen nicht ausgefüllt werden da Sie ja einfach mit ,, übersprungen werden. Was meint ihr dazu? geht das?
Bitte warten ..
Mitglied: petenicker
25.08.2008 um 20:13 Uhr
Ja, das funktioniert.

Ich habe kurz eine dreispaltige Excel-Tabelle erstellt und sie im csv_format exportiert. Allerdings hat Excel den Semikolon als Spaltentrennzeichen verwendet.

Im MySQL Monitor hab ich dann folgende Befehl abgesetzt:
01.
LOAD DATA LOCAL INFILE 'pfad_zum_csv_file' INTO TABLE tabellenname FIELDS TERMINATED BY ';' IGNORE 1 LINES;
Habe den Befehl mehrere Male wiederholt, bestehende Datensätze wurden nicht überschrieben. Allerdings solltest du auf die Zeichensätze achten, sonst bekommst du Probleme mit den Umlauten. Das kannst du aber dann in PHP umsetzen.

Hoffe, ich habe dich ein wenig weiter gebracht.
Bitte warten ..
Mitglied: v3rtico
26.08.2008 um 08:49 Uhr
Super, das werde ich gleich mal ausprobieren! Danke
Bitte warten ..
Mitglied: Marquee
20.05.2010 um 20:13 Uhr
Hi,

eventuell kannst Du ja dbTube.org verwenden. Es ist ein PHP Script mit dem man
native Excel importieren kann. Man erstellt zuvor mit einem graphischen AJAX Editor
eine import Definition welche man später immer wieder verwenden kann.

Gruß
Bitte warten ..
Neuester Wissensbeitrag
Festplatten, SSD, Raid

12TB written pro SSD in 2 Jahren mit RAID5 auf Hyper-VServer

Erfahrungsbericht von Lochkartenstanzer zum Thema Festplatten, SSD, Raid ...

Ähnliche Inhalte
VB for Applications
gelöst csv Dateien als Text importieren (7)

Frage von Bacchida zum Thema VB for Applications ...

Datenbanken
gelöst Datenbank Austausch per Dateien (9)

Frage von griffin zum Thema Datenbanken ...

Microsoft Office
gelöst Txt Dateien in Excel importieren (9)

Frage von Serbitar zum Thema Microsoft Office ...

Windows 7
Kopierte Dateien im Hintergrund anzeigen (1)

Frage von MichiBLNN zum Thema Windows 7 ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...