Fragen zur Eigenen Wetterseite

Hallo dpoessl,
die Zeilen die Dir Fehler ausgeben haben alle die Variable city drin.
Evtl hast Du da einen Tippfehler oder aber die Stadt gibts beim DWD nicht für umme. Dann musst du eben die geographisch passenste nächste nehmen. Ich hab z.B. Karlsruhe obwohl ich ca 30 km weg wohne. Es gibt nähere. Ist aber die Stadt, die das Wetter von Mühlacker mit größter Wahrscheinlichkeit am besten wiederspiegelt.

Hi,

bekomme auch täglich die gleichen Fehler. Hast Du sie behoben bekommen ???

Gruß Proxima

Hallo Proxima,
ich hab an der Startzeit für das Ereignis, das das Script ftpServerDWD.ips startet so lange rumgeschraubt bis es besser wurde. Weg bekommen hab ichs nicht. Wenn man die einen weg hatte sind andere gekommen. Aktuell bekomme ich noch zu 2 Zeiten die Fehler. Habs dann auch aufgegeben.

Hallo Zusammen,

nach dem ich die Anleitung befolgt habe, auch das Update und noch mal die Zusammenfassung von Wolfgang, bekomme ich die Wetterseite immer noch nicht ans rennen.

Ich habe das Problem, das sich die Skripte auf einen Skriptnamen.ips.php beziehen. Z. B. Vorhersage.ips.php
Wenn ich gemäß Anleitung die Scripte erstelle und sie mit dem Inhalt fülle und abspeichere, bekomme ich im Objektbaum allerdings in der Spalte „Wert“ einen Namen bestehend aus der ID.ips.php angezeigt. Der Screenshot von Wolfgang zeigt aber den Echtnamen des Scripts. Also z. B. Vorhersage.ips.php und nicht wie bei mir zb. 36703.ips.php . Ich habe es auch mal mit der Importfunktion versucht. Mit dem gleichen Ergebnis. Ich kann den Wert auch nicht ändern. Somit finden sich die Scripte sich untereinander nicht.
Ich habe dann mal die ID`s statt den Namen in den Skripten eingepflegt. Das funktioniert dann teilweise. Nur bei der Vorhersage bekomme ich einen Fehler der da lautet: undefined offset in Line 99 ($aktuell = $city[0][$lokal][1]:wink:

Mich würde also interessieren, wie ich es hinbekomme dass IPS die Echtnamen verwendet und nicht die bei Scripterstellung erstellte ID und by the way natürlich Fehler 2 in Line 99 des vorhersagescripts, weil ich vermute, dass dieser Fehler mich dann als nächstes beschäftigen wird.

Ich danke im Voraus und hoffe, dass es jetzt nicht die ultimative blöde Frage war, da ich echt die Anleitungen 2 mal durchgearbeitet habe, die Wolfgang-Variante probiert habe und die Thread gelesen habe, zugegebener Maßen nicht alle 111 Seiten!

Umbenennen
http://www.ip-symcon.de/service/dokumentation/konzepte/skripte/

Das „umbenennen“ ändert aber nicht den Wert! Siehe Spalte „Wert“!

Na ja, Du musst auch lesen (und tun) was ich verlinkt habe … „Skripte importieren & umbenennen“ (nur der umbenennen Teil - Schaltfläche Schraubenschlüssel) :wink:

Jau, das ist mal peinlich für mich… ich hab den Namen immer direkt im Objektbaum angeklickt!
Vielen Dank!!! Wieder was gelernt!!

So hab es jetzt auch lauffertig, lediglich die folgende Fehlermeldung kann ich nicht deuten:

Notice: Undefined offset: 0 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 99

Habt ihr da noch einen Tipp. Hier hat den Fehler schon mal jemand gepostet, aber die Lösung habe ich nicht finden können.

Danke im Voraus.

Hier gabs die Frage

und hier die Antwort

Vielleicht hilft es, wundert mich aber, dass bei Dir nur die eine Zeile Fehler meldet. Kann ich aber nicht nachvollziehen.

Ja, man sollte auch den Ordner „Vorhersage“ auf dem IPS-Server suchen und nicht wie ich auf dem FTP-Server des DWD. Dann findet man auch die Orte! :smiley:
Danke.

Hallo alle ,
ich hoffe ich bin hier richtig.Ich möchte den Wetterbericht für Morgen in eine Variabele angezeigt bekommen , ich habe schon alle möglichen Variabele ausprobiert , aber es wird nicht angezeigt.




ich hoffe das mein Problem so erkant wird , das ich habe. Ich brauche nur diesen einen Bericht im Webfront.
Danke Michael

Hallo Elektro,
erstmal wärs nett wenn Du php-code direkt einbettest, dann müssen wir den Code zum testen nicht abtippen.
Wenn du tatsächlich nur diese eine Datei in eine Variable schreiben willst gehts so:

<?
$berichtMorgen = file_get_contents("d:/IPS/webfront/user/WetterFtpDWD/berichte/berichtMorgen.txt");
setvalue(37958  /*[Test	xt-html-nach-ipsvariable	xt-html-nach-ipsvariable]*/, $berichtMorgen);
?>

Im WF sähe das dann so aus:

In Deinem Code scheiterst Du daran, dass Du Dateiinhalt und Namen vermischst. Den switch + case (wird nie erfüllt, daher wird nicht in die Variable geschrieben) brauchst Du dafür nicht.

Ja, genau .
So soll es gehen , vielen Dank.
Mit freundlichen Grüßen Michael :slight_smile:

Hallo zusammen,

ich möchte gerne eine Temperatur aus einer der Vorhersage-Dateien des DWD auslesen.
Wie kann ich den Wert nach München in eine Variable bekommen? Ich weiß nicht mit welchen PHP-Befehlen ich den Text durchsuchen oder ausschneiden kann. Wäre klasse, wenn mir jemand helfen könnte.
Ich nehme diesen Befehl und schreibe den Bericht in eine Variable:

$berichtMorgen = file_get_contents("C:/IP-Symcon_V2/webfront/user/WetterFtpDWD/vorhersage/Daten_Suedost_mittag");

Sowas ist der Inhalt der Variablen:

Vorhersage von Höchsttemperatur und Wetter für Montag spät, 07.04.2014
------------------------------------------------------------------------
Würzburg          22   bewölkt                                              
Bamberg           22   bedeckt                                              
Hof               19   bewölkt                                              
Weiden            20   bewölkt                                              
Öhringen          22   bewölkt                                              
Nürnberg          22   bewölkt                                              
Regensburg        23   bewölkt                                              
Straubing         21   bewölkt                                              
Großer Arber      11   bewölkt                                              
Fürstenzell       20   bewölkt                                              
Stuttgart         22   bewölkt                                              
Stötten           20   bewölkt                                              
Augsburg          21   bewölkt                                              
München           22   bewölkt                                              
Konstanz          23   bewölkt                                              
Kempten           22   bewölkt                                              
Oberstdorf        21   bewölkt                                              
Hohenpeissenberg  19   bewölkt                                              
Zugspitze          2   bewölkt                                              
Wendelstein       11   bewölkt                                              
  
Temperatur in Grad Celsius

Wie geht’s dann weiter?

Grüße
papaschlumpf

Hallo papaschlumpf,

was willst Du damit bezwecken. Die Datei ändert sich mehrmals am Tag und ist nach Ablauf leer. So wird es unweigerlich eine Fehlermeldung geben.

Hallo RWN,

Ich sende mir morgens um 6 Uhr eine Notification in der die aktuelle Temp. enthalten ist. Dazu soll noch die voraussichtliche Tagestemperatur, die ich aus der DWD-Datei ziehen möchte. Dann weiß ich zum Aufstehen was ich anziehen sollte :wink:
Wenn ich die Datei also nur auslese, wenn sie gefüllt ist, sollte es klappen, falls mit jemand verrät, wie ich an die Zahl nach München komme :wink:
Grüße
Matthias

Hallo Matthias,

es steht eigentlich alles in der Vorhersage drinnen was Du brauchst um an die Werte zu kommen.

Hier mal ein Ausschnitt was reichen sollte, entsprechend angepasst und dann in eine Variable geschrieben.

$datenVorhersage = file_get_contents(IPS_GetKernelDir()."webfront\\user\\WetterFtpDWD\\Vorhersage\\".$dataForXml[$i]);	$arrayData = explode("
", $datenVorhersage);	//print_r($arrayData);	unset($arrayData[0]);	unset($arrayData[1]);	$allData[] = array_values($arrayData);	//$array = array_merge($allData[$i]);	//print_r($array);}$array = array_merge($allData[0], $allData[1], $allData[2], $allData[3], $allData[4], $allData[5], $allData[6], $allData[7]);//print_r($array);
$city = array();foreach($array as $values){	$data = preg_split('/  /', $values, -1, PREG_SPLIT_NO_EMPTY);   print_r($data);   if(isset($data[0]) && $data[0] == $lokal)   {    	$cityData = &$city[];		$cityData[$data[0]] = array(trim(utf8_encode($data[1])), trim(utf8_encode($data[2])));	}}
//print_r($city);

Hallo RWN, vielen Dank für deine Zeilen. Ich bin nicht so fit in PHP aber ich versuche es mal zu verstehen und anzupassen.

Da bei mir das Thema auch gerade aktuell ist, zeige ich mal kurz wie ich das gelöst habe:

<?

$dataForXml = "vorhersage.xml";

$pfad = IPS_GetKernelDir()."webfront\\user\\WetterFtpDWD\\vorhersage\\".$dataForXml;

if (file_exists($pfad))
	{
		$xml = simplexml_load_file($pfad);

	 //echo $xml->info->zeit."
";
	 //echo $xml->info->ort."
";

		SetValue(21543,utf8_decode((String)$xml->aktuell->condition));
		
		SetValue(26359,(String)$xml->data[0]->day);
		SetValue(50920,(Float)$xml->data[0]->tempmin);
		SetValue(39905,(Float)$xml->data[0]->tempmax);
		
		SetValue(17987,(String)$xml->data[1]->day);
		SetValue(21395,(Float)$xml->data[1]->tempmin);
		SetValue(46416,(Float)$xml->data[1]->tempmax);
		echo "done";
	}

?>