Seite 1 von 1
SQL-Datenbank aktualisieren
Verfasst: 28 Dez 2011 11:45
von Enzo
Ich habe mir ein kleines php-Script geschrieben über das ich die Wetterdaten in einer SQL-Datenbank ablege. Die Datenübertragung an den Host erledige ich über ein Template mit dem in WsWin integrierten FTP-Upload. Das ganze funktioniert bestens.
Jetzt würde ich gerne alle meine Daten seit 2009 in die Datenbank übertragen.
Dazu meine Frage:
Kann mit WsWin das Template für den FTP-Upload für einen zurückliegenden Zeitraum aufgerufen werden? (Ähnlich wie das mit der Erzeugung der HTML-Dateien und den Bildern funktioniert) Ich möchte die Daten nicht unbedingt über einen csv-Export/Import in die Datenbank übertragen.
Kann mir jemand weiterhelfen?
MfG, Enzo
Verfasst: 28 Dez 2011 12:46
von weneu
Hallo Enzo,
wie soll man Dir helfen, wenn Du nur so allgemeine Angaben machst?
"ein Template" - wie ist es den aufgebaut und was macht es?
Außerdem: Es gibt keinen in WSWIN integrierten ftp-Upload. Auch das erschließt sich mir nicht, was Du damit meinst.
Eines kann ich Dir aber trotzdem schon sagen: es wird vermutlich nur über einen monatsweisen Export gehen, es sei denn, Du hättest eine ws_newdata.csv zur Verfügung, die über diesen ganzen Zeitraum reicht, was ich mir aber nicht vorstellen kann.
Verfasst: 28 Dez 2011 13:17
von Enzo
Hallo Werner,
das war ein Fehler meinerseits.
weneu hat geschrieben:Außerdem: Es gibt keinen in WSWIN integrierten ftp-Upload.
Die Daten werden per Post-Daten geschickt.
Doch nun zur Beantwortung Deiner Fragen:
Das Template wird alle 5 Minuten ausgeführt und ist im Menüpunkt 'Internet->Einstellungen->WWW' eingestellt.
Das Template selbst sieht wie folgt aus:
0Info=vs-wetter.eschenbonner.com
1Typ=1
2Url=
http://1xx.1xx.x.x/xampp/vs-tannheim-we ... t_data.php
3File=vs-wetter_data.txt
4Senddata=?
5Separator=&
6Unit=0
7Userpw_md5=0
8Success=OK
xBeginData
date=%ws_date%
time=%ws_time%
ta=%curval[0]%
fa=%curval[-1]%
ti=%curval[1]%
fi=%curval[17]%
:
:
:
vWb=%curval[45]%
Über die Datei 'get_data.php' werden die Daten auf dem Host ausgelesen und in die Datenbank geschrieben.
Meine Frage ist ob diese Post-Prozedur für zurückliegende Daten durchgeführt werden kann.
MfG, Enzo
Verfasst: 28 Dez 2011 18:09
von weneu
Hallo Enzo,
nebenbei bemerkt: ein interessanter Weg, eine Datenbank zu füllen, an den ich noch gar nicht gedacht habe.
Zur Frage selbst: nach meinem Kenntnisstand ist es nicht möglich, hier zurückliegende Daten zu übertragen. Mit diesem Weg können nur jeweils aktuell ausgewertete Daten übertragen werden.
Was mich aber hier selbst noch interessieren würde: läuft denn deine Übertragung 24 Stunden lang durch bzw. hast Du hier nie Datenlücken?
Verfasst: 28 Dez 2011 20:20
von Enzo
Hallo Werner,
ich habe diesen Weg gewählt, weil dadurch das Datenaufkommen am kleinsten ist. Mein Wetterserver und somit WsWin läuft 24 Stunden am Tag.
Der Host im Heimnetz zur Zeit auch. Wenn alles rund läuft werde ich die Daten dann zu meinem Provider (der übrigens in Kanada liegt) schicken.
Das mit den Datenlücken bin ich eben am testen.
Deswegen übertrage ich die Daten zur Zeit innerhalb eines Heimnetzwerks und logge Datenlücken und/oder Übertragungsfehler auf dem Host mit.
Bisher sind mir 1 oder 2 fehlende Datensätze pro Tag aufgefallen. Woran das genau liegt bin ich noch am analysieren.
MfG, Enzo
Verfasst: 28 Dez 2011 21:42
von weneu
Hallo,
Danke für die Info. Ist für mich interessant, weil es eine Alternative für mein Verfahren sein könnte, wenn da nicht das Problem des ständig laufenden PCs wäre.
Kannst Du mir trotzdem mal die von Dir verwendete php-Datei zusenden an
w.neudeck@web.de? Konnte mich dann php-mäßig etwas weiterbilden
Verfasst: 05 Jan 2012 16:37
von rf-leo
Hallo Enzo,
mit sehr großem Interesse habe ich diesen Thread verfolgt. Auch ich möchte demnächst eine DB aus WsWin heraus füllen ...
Wie sind denn deine Erkenntnisse inzwischen, die Ursache der fehlenden Datensätze schon ergründet?
Wäre schön, wenn du deine Erfahrungen kurz wiedergeben könntest!
Vielen Dank schon einmal!
Gruß
Rainer
P.S. wie der Werner, so bin auch ich sehr interessiert, wie du es per PHP umsetzen wirst - dürfte auch ich mich daran anlehnen?