You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#1 2015-03-15 21:11:50

reneman
Member
From: Mainz
Registered: 2012-10-13
Posts: 1,106
Website

Openlayers, Daten aus lokaler CSV darstellen

Hallo.

Bin grad dabei über eine OSM-Karte mit Hilfe von Openlayers statistische Daten eines ehrenamtlichen Vogelschutzprojektes darzustellen.
Dafür habe ich mich wiedereinmal bei Netzwolf bedient: www.netzwolf.info/kartografie/openlayers/circlepois3.htm
Die Daten werden im Beispiel von Wolfgang einer auf dem Server liegenden csv-Datei entnommen.

Wie kann ich das umstricken, damit der Benutzer eine lokale csv-Datei selber auswählen kann?

Auszug aus dem Script:

		strategies: [new OpenLayers.Strategy.Fixed()],

		protocol: new OpenLayers.Protocol.HTTP({

			url: 'BOST93N1.csv',

			format: new OpenLayers.Format.Text({extractStyles: false})
		})

» Check the Monuments! «
Viele der als historic=monument erfassten Objekte sind in Wirklichkeit kein Monument. Sie wurden mangels passender Tags oder aus Unkenntnis als Monument erfaßt. Diese Karte CheckTheMonuments will bei der Korrektur unterstützen.

Offline

#2 2015-03-15 22:12:00

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Openlayers, Daten aus lokaler CSV darstellen

ich glaube das geht nicht - weil es nicht gehen darf.

Dafür müsste ein Java-Script ein lokales File beim Anwender öffnen und genau das ist aus Sicherheitsgründen absolut unmöglich.

Gruss
walter

du könntest einen Upload zum Server einbauen und dann den Server "bitten", das File zu verarbeiten.

Last edited by wambacher (2015-03-15 22:14:37)

Offline

#3 2015-03-15 22:30:31

woodpeck
Member
Registered: 2009-12-02
Posts: 1,210

Re: Openlayers, Daten aus lokaler CSV darstellen

reneman wrote:

Wie kann ich das umstricken, damit der Benutzer eine lokale csv-Datei selber auswählen kann?

Das *Öffnen* einer lokalen Datei geht dann, wenn das Javascript selbst auch schon vom lokalen Rechner kam, also z.B. mit

file:///mein/verzeichnis/index.html

- in dem Fall kann die Seite auch eine "bla.csv" öffnen, die dann ebenfalls im gleichen Verzeichnis gesucht wird.

Eine Seite, die aus dem Netz geladen wird, darf das normalerweise nicht, aus den von Wambacher genannten Gründen. (Bei einigen Browsern kann man diesen Sicherheitsmechanismus abschalten.)

Eine Datei auf dem Rechner auswählen (im Sinne einer Auswahlliste) geht auch nicht browser-übergreifend -
aber was relativ einfach geht, ist der Trick mit dem Fragezeichen:

file:///mein/verzeichnis/index.html?my1234.csv

da kannst Du dann über window.location.search auf das hinter dem Fragezeichen zugreifen.

Bye
Frederik

Offline

#4 2015-03-15 22:40:47

reneman
Member
From: Mainz
Registered: 2012-10-13
Posts: 1,106
Website

Re: Openlayers, Daten aus lokaler CSV darstellen

hm, und wie machen das die Scripte, die dem Benutzer anbieten lokale gpx-Files als ol darzustellen?

Beispiel wieder von Wolfgang: http://www.netzwolf.info/kartografie/op … ocaltracks

Unterm Strich sind beides ja nur Textdateien...

Last edited by reneman (2015-03-15 22:47:10)


» Check the Monuments! «
Viele der als historic=monument erfassten Objekte sind in Wirklichkeit kein Monument. Sie wurden mangels passender Tags oder aus Unkenntnis als Monument erfaßt. Diese Karte CheckTheMonuments will bei der Korrektur unterstützen.

Offline

#5 2015-03-15 23:41:05

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Openlayers, Daten aus lokaler CSV darstellen

reneman wrote:

hm, und wie machen das die Scripte, die dem Benutzer anbieten lokale gpx-Files als ol darzustellen?

Beispiel wieder von Wolfgang: http://www.netzwolf.info/kartografie/op … ocaltracks

Unterm Strich sind beides ja nur Textdateien...

Genau so,wie ich es beschrieben habe: Da öffnet sich ein Fenster und danach wird die Datei HOCHGELADEN.
Und einmal "oben" kann der Script sie auch verarbeiten.

GRuss
walter

Offline

#6 2015-03-16 10:30:23

ikonor
Member
Registered: 2010-11-08
Posts: 637
Website

Re: Openlayers, Daten aus lokaler CSV darstellen

reneman wrote:

hm, und wie machen das die Scripte, die dem Benutzer anbieten lokale gpx-Files als ol darzustellen?

Beispiel wieder von Wolfgang: http://www.netzwolf.info/kartografie/op … ocaltracks

Unterm Strich sind beides ja nur Textdateien...

Das Beispiel ist doch quasi schon die Antwort? Man muss aber nach unten scrollen, um die Erklärung zu sehen. Dort ist auch ein Beispiel für CSV Dateien verlinkt.

Die Beispiele verwenden die HTML5 File API. Damit können lokale Dateien ohne Hochladen direkt im Browser per Datei-Dialog oder Drag&Drop gelesen werden. Das wird als unkritisch angesehen, weil das Öffnen vom Anwender initiiert wird und eine bewußte Interaktion erfordert.

Offline

#7 2015-03-16 11:16:42

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,769
Website

Re: Openlayers, Daten aus lokaler CSV darstellen

ikonor wrote:

Die Beispiele verwenden die HTML5 File API. Damit können lokale Dateien ohne Hochladen direkt im Browser per Datei-Dialog oder Drag&Drop gelesen werden. Das wird als unkritisch angesehen, weil das Öffnen vom Anwender initiiert wird und eine bewußte Interaktion erfordert.

Uii, wieder was dazu gelernt.

Offline

#8 2015-03-16 12:00:48

reneman
Member
From: Mainz
Registered: 2012-10-13
Posts: 1,106
Website

Re: Openlayers, Daten aus lokaler CSV darstellen

ikonor wrote:
reneman wrote:

Das Beispiel ist doch quasi schon die Antwort? Man muss aber nach unten scrollen, um die Erklärung zu sehen. Dort ist auch ein Beispiel für CSV Dateien verlinkt.

Hallo,
ist richtig, seit vergangener Nacht ist dies dort verlinkt big_smile

Herzlichen Dank an Wolfgang *freu*

//------------------------------------------------------------------------------
//	$Id: localfeatures.js,v 1.2 2015/03/15 23:55:00 wolf Exp $
//------------------------------------------------------------------------------

» Check the Monuments! «
Viele der als historic=monument erfassten Objekte sind in Wirklichkeit kein Monument. Sie wurden mangels passender Tags oder aus Unkenntnis als Monument erfaßt. Diese Karte CheckTheMonuments will bei der Korrektur unterstützen.

Offline

Board footer

Powered by FluxBB