Hallo
Ich verwende PHP.
Ich generiere mit meiner Wetterstation Datenfiles. Wenn irgend ein Sensor keine Daten liefern kann, wird ein "x" ins Datenfile geschrieben.
Das PHP Script liest die Datei aus und schreibt die Werte in die Datenbank.
CODE $quelle_hdaten = opendir($data_dir['h-daten']);
while($hdaten_hdatei = readdir($quelle_hdaten))
{
if ($hdaten_hdatei != "." && $hdaten_hdatei != "..")
{
$daten = file($data_dir['h-daten'].$hdaten_hdatei); // öffnet und liest Datei. linenweise
// Zuordnung der Zeilen aus Dateinfile
$h_daten['datum'] = $daten['3']; // gibt Datum aus Datendatei zurück
$h_daten['stunde'] = date('YmdH0000', strtotime($daten['3'])); // gibt stunde aus Datendatei zurück
$h_daten['temp'] = $daten['6']; // Temperatur, Durchschnitt aktuelle Stunde
$h_daten['hum'] = $daten['9']; // Relative Luftfeuchtigkeit, Durchschnitt aktuelle Stunde
$h_daten['press'] = $daten['12']; // Temperatur, Durchschnitt aktuelle Stunde
$h_daten['wind'] = $daten['15']; // Wind, Durchschnitt aktuelle Stunde
$h_daten['main_dir'] = $daten['16']; // Dominante Windrichtung, aktuelle Stunde
$h_daten['gust'] = $daten['17']; // Max Böe, aktuelle Stunde
$h_daten['gust_dir'] = $daten['18']; // Max. Böe Richtung, Durchschnitt aktuelle Stunde
$h_daten['rain_rate'] = $daten['21']; // Regenrate, Durchschnitt aktuelle Stunde
$h_daten['rain_total'] = $daten['22']; // Regenmenge, Total aktuelle Stunde
$h_daten['uvi'] = $daten['25']; // UV Index, Durchschnitt aktuelle Stunde
$h_daten['sol'] = $daten['28']; // Strahlung, Durchschnitt aktuelle Stunde
$sql = "UPDATE ".$mysql_tab_h." SET h_temp = ".$h_daten['temp'].", h_hum = ".$h_daten['hum'].", h_press = ".$h_daten['press'].", h_wind = ".$h_daten['wind'].", h_main_dir = ".$h_daten['main_dir'].", h_gust = ".$h_daten['gust'].", h_gust_dir = ".$h_daten['gust_dir'].", h_rain_rate = ".$h_daten['rain_rate'].", h_rain_total = ".$h_daten['rain_total'].", h_uvi = ".$h_daten['uvi'].", h_sol = ".$h_daten['sol']." WHERE h_date = ".$h_daten['stunde'];
echo $sql."<br>";
// aktualisiert betroffen Datensatz
if(mysql_query($sql) or die (mysql_error()))
{
unlink($data_dir['h-daten'].$hdaten_hdatei); // löscht Datendatei wenn das DB Update erfolgrei war
}
unset($h_daten);
}
}
Eigentlich funktioniert das Script. Ausser der wert ist "x".
Ich habe zuerst jeden Wert auf "x" geprüft, musste jedoch feststellen das es nicht finktioniert.
CODE if($h_daten['wind'] != "x")
Wiso das PHP "x" als feld anschaut ist mir ein Rätsel.
Ich hoffe diese infos reichen.