Datenbank - Excel - auslesen - speichern

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
emily

Datenbank - Excel - auslesen - speichern

Beitrag von emily »

Morgen,

vorab, die Frage hat nichts mit dem Forum zu tun :-)

Mich würde es interessieren ob es möglich ist, Daten aus der Datenbank auslesen, bei Klick auf einen Link, öffnet sich Excel - man kann die Daten bearbeiten und bei speichern werden die Sachen wieder in der Datenbank gespeichert?

Geht das? Oder zuviel verlangt?

Danke schon mal!

LG, Emy
CKoenig
Mitglied
Beiträge: 30
Registriert: 26.06.2005 21:05
Wohnort: Bonn
Kontaktdaten:

Re: Datenbank - Excel - auslesen - speichern

Beitrag von CKoenig »

emily hat geschrieben:Geht das? Oder zuviel verlangt?
Wow, das ist schon was hart - kann mir aber vorstellen, dass es (wenn auch nicht einfach) möglich ist.

Jetzt aber mal ohne was ausprobiert zu haben: Du kannst ja aus der Datenbank Daten in eine CSV Datei extrahieren - diese sollte unter Windows standardmäßig mit Excel geöfnet werden - also wenn der Browser den Datentyp richtig verknüft hat, kann ich mir noch ziemlich einfach vorstellen, dass man es mit zwei (Web-)Klicks schafft:

1.) erster Klick (im Webinterface): Daten extrahieren, in einer CSV Datei speichern und dann mit Excel aufrufen lassen
2.) in Excel bearbeiten und speichern
3.) zweiter Klick (im Webinterface): CSV Datei auslesen und in Datenbank übernehmen

Nur frag mich jetzt nicht nach dem Code... hoffe aber mal es ist nen Ansatz, mit dem Du vielleicht was anfangen kannst.

Andere Möglichkeit wäre vielleicht eine ODBC Anbindung der (My)SQL Datenbank an Excel - dann ging es wirklich mit einem Klick - innerhalb von Excel. - Nur leider hab ich von ODBC, bzw. den Fähigkeiten der Office Produkte diesbezüglich keine Ahnung - müsste man (mal wieder) nachlesen... - sorry.

Viele Grüsse,
Carsten
emily

Beitrag von emily »

Deine Vorschläge sind klasse, da lässt sich was draus machen. Danke!

Aber mir kam da ein Gedanke, der mich noch abhält. Wie kann ich Excel denn sagen, wenn die Leute auf speichern klicken, das das dann auf dem Server gespeichert wird, und nicht auf deren Festplatte? *grübel*

Oder steh ich gerade auf'm Schlauch?

LG, Emy
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

PHP ist eine serverseitige Scriptsprache und keine clientseitige.
Ergo du führst die Änderungen komplett online mithilfe eines Webinterfaces durch oder lädst vom Client modifizierte Clientdatei wieder hoch. Welche dann serverseitig ausgewertet und ggf. entsprechende DB Statements generiert.

CSV ist kommasepariert und folglich die PHP Funktion fgetcsv(); eine Möglichkeit
CKoenig
Mitglied
Beiträge: 30
Registriert: 26.06.2005 21:05
Wohnort: Bonn
Kontaktdaten:

Beitrag von CKoenig »

emily hat geschrieben: Wie kann ich Excel denn sagen, wenn die Leute auf speichern klicken, das das dann auf dem Server gespeichert wird, und nicht auf deren Festplatte? *grübel*
Gar nicht, wenn ich das nicht falsch weiss. Aber über ein Standardverzeichnis des Nutzers sollte das doch zu schaffen sein - Problem ist natürlich der Transfer Client -> Server... aber da man den Dateinamen vorgeben kann, und ja (per Standardverzeichnis) auch den Pfad weiss, sollte es denke ich möglich sein ein Uploadscript zu basteln, das das hinbekommt - Also Upload, Auslesen und dann ab in die Datenbank... Die Frage ist natürlich, ob man den Upload mit reinem PHP hinbekommt...

Wobei ich sagen muss, dass ich im nachhinein denke, der ODBC Ansatz ist eleganter - dazu ist ODBC ja da... :wink:

Viele Grüsse,
Carsten
webfan
Mitglied
Beiträge: 10
Registriert: 18.02.2005 04:23
Kontaktdaten:

Beitrag von webfan »

Mich würde es interessieren ob es möglich ist, Daten aus der Datenbank auslesen, bei Klick auf einen Link, öffnet sich Excel -
Ich habe da ein kleines Tool:
www.webfan.de/mysql2excel.zip
und bei speichern werden die Sachen wieder in der Datenbank gespeichert?
Das kann dieses Tool zwar nicht (speichern), aber das wäre gewiss möglich.
Wie kann ich Excel denn sagen, wenn die Leute auf speichern klicken, das das dann auf dem Server gespeichert wird, und nicht auf deren Festplatte?
Da mußt Du ein serverseitiges Script schreiben.
emily hat folgendes geschrieben:
Wie kann ich Excel denn sagen, wenn die Leute auf speichern klicken, das das dann auf dem Server gespeichert wird, und nicht auf deren Festplatte? *grübel*

Gar nicht, wenn ich das nicht falsch weiss.
Ich denke schon das das geht.
Die Frage ist allerdings was genau Du vorhast, und welche Datenbank Du nutzen willst.

Viele Grüße,
Till
-------------------------------------------
Günstig Webspace+Domain:
http://www.homepagespeicher.de
emily

Beitrag von emily »

Ich denke schon das das geht.
Die Frage ist allerdings was genau Du vorhast, und welche Datenbank Du nutzen willst.

Also momentan hab ich eine stinknormale mySQL DB.

Was ich vorhabe? Kurz gesagt, User melden sich an, klicken z.B. auf einen Link, da geht dann Excel auf, sie können ihre Zahlen reinschreiben, dann speichern und gut ist, andere sollten dann auch noch zugreifen können, aber das ist ja nicht das Problem!
Da mußt Du ein serverseitiges Script schreiben.
Kannst du mir da einen kleinen Anhaltspunkt sagen?

Das script schaue ich mir heute Abend mal an, danke schön!


LG, Emy
emily

Beitrag von emily »

Habs mir doch jetzt schon angesehen, allerdings kam ich nicht weit, da mein Server keine .exe zulässt.

Wo ich es einstelle ist mir auch klar, nur hab ich keinen blassen Schimmer, auf welche Datei ich da verlinken muss, also den Pfad? Jemand schlauer als ich? :D
Benutzeravatar
itst
Ehrenadmin
Beiträge: 7418
Registriert: 21.08.2001 02:00
Wohnort: Büttelborn bei Darmstadt
Kontaktdaten:

Beitrag von itst »

Es gibt von MS ein Produkt namens Office Server Extensions, das es erlaubt, MS Office Dokumente im Browser zu editieren. Wenn es um ein Intranet geht, sollte das die beste Lösung sein:

http://office.microsoft.com/en-us/assis ... 81033.aspx
Sascha A. Carlin,
phpBB.de Ehrenadministrator
:o
webfan
Mitglied
Beiträge: 10
Registriert: 18.02.2005 04:23
Kontaktdaten:

Beitrag von webfan »

Habs mir doch jetzt schon angesehen, allerdings kam ich nicht weit, da mein Server keine .exe zulässt.
Das ist deshalb so, da mein 'script' eine Windows Applikation und ein php script ist. Die Windows Applikation läuft auf Deinem Server natürlich nicht!
Ich wollte nur die Möglichkeiten verdeutlichen, aber ich gebe zu ich habe mich mißverständlich asgedrückt, war ja schon spät... :wink:

Also:
Kannst du mir da einen kleinen Anhaltspunkt sagen?
Ja:
Du hast zwei Möglichkeiten:
A: Du löst die Augabe serverseitig
B: Du löst die Aufgabe client- und serverseitig

Nachteil B: User benötigt eine Clientapplikation (das will keiner).
Der Harken: Du möchtest aber die Daten zwischendurch in Excel bearbeiten (also auf einem Clientrechner)

Möglichkeit B:
- Eine Clientanwendung postet die Daten an ein script, welches diese abspeichert
- oder die Anwendung lädt die Daten per ftp hoch (zu unsicher!!!)

Möglichkeit A:
Du "bearbeitest" die Daten nicht wirklich in Excel!
Sondern:
Du bearbeitest die Daten per php-Interface und erstellst per php eine Excel-Datei.


Viele Grüße,
Till
-------------------------------------------
Günstig Webspace+Domain:
http://www.homepagespeicher.de
Antworten

Zurück zu „Coding & Technik“