Fragen zur Eigenen Wetterseite

Hallo Frank,

Nur ist mir nicht so ganz klar, was ich anpassen muss damit es für Aachen den Bericht ausgibt

Dafür musst du in der Doku vom DWD nachsehen. Auf dem FTP liegt eine Ecxel-Datei wo die Daten drin stehen.
Dann musst Du VHDL50_DWEG durch deine Nummer ersetzen.

Auswahlfelder für einzelne Rupriken.

Hallo Rainer ich versuche auch gerade mein „Glück“, aber ich bin mir nicht sicher in welcher Datei die daten stehen. Ist das die 5stellige Stations-Index-Nr. ?

Hallo Horst,

gds/specials/legend_basic_service_level.xls

diese ist die Excel-Datei, öffnen, dann unter Standartberichte_GV dort stehen die ganzen Daten und zwar muss die Kennung entsprechend geändert werden. z.B für Nordrheinwestfalen auf DWEH. und Niedersachsen auf DWHG.

Hallo Rainer,

irgendwie krieg ich es nicht hin. Ich habe das gleiche Problem mit den Icons, das sie nicht angezeigt werden. Es wird nur der Pfad angezeit, nicht aber das Icon selber.
Unter der 3 tagesansicht wird weder Pfad noch Icon angezeigt.
Und leider weiss ich nicht wo ich das png für NRW her bekommen soll, bzw. wie es erstellen soll.
Die Daten (Tabellen habe ich vom DWD bekommen das geht.

Könntest Du mir noch mal helfen, bitte.

Danke
Frank

Danke Rainer,

langsam wird`s, jetzt gehts an die Icons und die Karte :rolleyes:

Hallo Frank,

dann stimmt dein Pfad nicht.

z.B. hier.

$wetter = website_wetter("Nidda", "Germany", "/user/WetterNidda/icons/");

Das Hintergrundbild musst Du dir selbst erstellen. z.B. mit PaintShop usw…

Hallo Rainer,

den Habe ich schon mehrfach geprüft.
Mein wetter.php Script liegt direkt unter c:\IP-Symcon\webfront\user
Die Icons liegen unter c:\IP-Symcon\webfront\user\WetterIcons
Das Script sieht so aus:



<!--
<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-->

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />

<style type="text/css">html, body { margin: 0; padding: 30; font: normal 14px verdana; color: #FFFFFF; background: #27292b; }</style>
<style type="text/css"> body { -moz-user-select: none; -khtml-user-select: none; user-select: none; }</style>
<style type="text/css">div { position:absolute; width:700px; height:100px; }</style>


</head><body>

<?php

// Funktionsaufruf z.B.: $wetter = website_wetter("63667", "Germany", "/user/WetterIcons/", "de");

function website_wetter($plz, $land, $icons_src="/", $sprache="de", $ort="")
{
    $icons_google = "/ig/images/weather/";

    if($ort != "")
    {
        $station = $ort;
    }
    else
    {
        $station = $plz."-".$land;
    }

    $api = simplexml_load_string(utf8_encode(file_get_contents("http://www.google.com/ig/api?weather=".$station."&hl=".$sprache)));
   //print_r($api);
    $wetter = array();

    // Allgemeine Informationen
    $wetter['stadt'] = $api->weather->forecast_information->city->attributes()->data;
    $wetter['datum'] = $api->weather->forecast_information->forecast_date->attributes()->data;
    $wetter['zeit'] = $api->weather->forecast_information->current_date_time->attributes()->data;

    // Aktuelles Wetter
    $wetter[0]['zustand'] = $api->weather->current_conditions->condition->attributes()->data;
    $wetter[0]['temperatur'] = $api->weather->current_conditions->temp_c->attributes()->data;
    $wetter[0]['luftfeuchtigkeit'] = $api->weather->current_conditions->humidity->attributes()->data;
    $wetter[0]['luftfeuchtigkeit'] = str_replace("Feuchtigkeit", "rel.Luftfeuchte", $wetter[0]['luftfeuchtigkeit']);
    $wetter[0]['wind'] = $api->weather->current_conditions->wind_condition->attributes()->data;
    $wetter[0]['icon'] = str_replace($icons_google, $icons_src, $api->weather->current_conditions->icon->attributes()->data);

    
    
    
    // Wettervorhersage heute, morgen, in zwei und in drei Tagen ($wetter[1] bis $wetter[4])
    $i = 1;
    foreach($api->weather->forecast_conditions as $weather)
    {
        $wetter[$i]['wochentag'] = $weather->day_of_week->attributes()->data;
        $wetter[$i]['zustand'] = $weather->condition->attributes()->data;
        $wetter[$i]['tiefsttemperatur'] = $weather->low->attributes()->data;
        $wetter[$i]['hoechsttemperatur'] = $weather->high->attributes()->data;
        $wetter[$i]['icon'] = str_replace($icons_google, $icons_src, $weather->icon->attributes()->data);

        $i++;
    }
    return $wetter;
}
//$wetter = website_wetter("52249", "Germany"); 
//echo "<img src=\"http://www.google.com/ig/images/weather".$wetter[0]['icon']."\" alt=\"".$wetter[0]['zustand']."\" />
";

$wetter = website_wetter("eschweiler", "Germany", "/WetterIcons/");

echo "<table>";
echo "<tr><td style='width:220px;'>";
echo "<strong>Aktuell:</strong><br/>
";
echo $wetter[0]['zustand']."<br/>
";
echo "Temperatur: ".$wetter[0]['temperatur']." °C<br/>
";
echo "min. ".$wetter[1]['tiefsttemperatur']." °C <br/> max. ".$wetter[1]['hoechsttemperatur']." °C<br/>";
echo $wetter[0]['luftfeuchtigkeit']."<br/>";
echo $wetter[0]['wind']."<br/>";
//echo "Luftdruck: ".GetValueFormatted(40266);
echo "</td>";
echo "<td style='width:300px;'>".$wetter[0]['icon']."</td>";

echo "<td style='width:180px;'>";
echo "<strong>".$wetter[2]['wochentag']."</strong><br/>
";
echo $wetter[2]['zustand']."<br/>
";
echo "min. ".$wetter[2]['tiefsttemperatur']." °C <br/> max. ".$wetter[2]['hoechsttemperatur']." °C<br/><br/>";
echo "<img src=\"".$wetter[2]['icon']."\" alt=\"".$wetter[2]['zustand']."\" />
";
echo "</td>";

echo "<td style='width:180px;'>";
echo "<strong>".$wetter[3]['wochentag']."</strong><br/>
";
echo $wetter[3]['zustand']."<br/>
";
echo "min. ".$wetter[3]['tiefsttemperatur']." °C <br/> max. ".$wetter[3]['hoechsttemperatur']." °C<br/><br/>";
echo "<img src=\"".$wetter[3]['icon']."\" alt=\"".$wetter[3]['zustand']."\" />
";
echo "</td>";

echo "<td style='width:180px;'>";
echo "<strong>".$wetter[4]['wochentag']."</strong><br/>
";
echo $wetter[4]['zustand']."<br/>
";
echo "min. ".$wetter[4]['tiefsttemperatur']." °C <br/> max. ".$wetter[4]['hoechsttemperatur']." °C<br/><br/>";
echo "<img src=\"".$wetter[4]['icon']."\" alt=\"".$wetter[4]['zustand']."\" />
";
echo "</td></tr>";
echo "</table>";

$imgKarte = Sys_GetURLContent("http://www.dwd.de/dyn/app/ws/maps/OF_x_x_0.gif");
$imagepfad = IPS_GetKernelDir()."webfront/user/WetterIcons/OF_x_x_0.gif";
$fp = fopen($imagepfad, "wb+");
fwrite($fp, $imgKarte);
fclose($fp);

$factor = 0.8;
list($width, $height) = getimagesize($imagepfad);
$new_width = $width * $factor;
$new_height = $height * $factor;
$image_p = imagecreatetruecolor($new_width, $new_height);
$img = imagecreatefromgif($imagepfad); 
imagecopyresampled($image_p, $img, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
ImageGif($image_p, $imagepfad);

$berichtHeute = file_get_contents("../user/Wettereschweiler/berichte/berichtHeute.txt");
if($berichtHeute == "") 
{
    $berichtHeute = "Der Wetterbericht steht momentan nicht zur Verfügung!";
    $berichtMorgen = ""; 
}


?>

<div style="left:30px; top:0px;"><h1>Wetter eschweiler</h1></div>
<div style="left:30px; top:220px;"><h1>Wetterwarnungen Hessen</h1></div>
<div style="left:550px; top:220px;"><h1>Wetterbericht für heute und morgen</h1></div>
<div style="left:550px; top:0px;"><h1>Wettervorhersage für die nächsten 3 Tage</h1></div>
<div style="left:30px; top:300px;"><img src='/user/WetterIcons/OF_x_X_0.gif'></div>
<div style="left:30px; top:300px;"><img src='/user/WetterIcons/hintergrundKarte.png'></div>
<div style="left:220px; top:550px;"><img src='/user/WetterIcons/warnungHellblau.png'></div> 
<div style="left:240px; top:550px; font: normal 11px verdana;">Keine Warnungen</div>
<div style="left:220px; top:575px;"><img src='/user/WetterIcons/warnungGelb.png'></div> 
<div style="left:240px; top:575px; font: normal 11px verdana;">Wetterwarnungen</div>
<div style="left:220px; top:600px;"><img src='/user/WetterIcons/warnungOrange.png'></div> 
<div style="left:240px; top:600px; font: normal 11px verdana;">Warnung vor markantem Wetter</div>
<div style="left:220px; top:625px;"><img src='/user/WetterIcons/warnungRot.png'></div> 
<div style="left:240px; top:625px; font: normal 11px verdana;">Unwetterwarnung</div>
<div style="left:220px; top:650px;"><img src='/user/WetterIcons/warnungLila.png'></div> 
<div style="left:240px; top:650px; font: normal 11px verdana;">Warnung vor extremem Unwetter</div>
<div style="left:550px; top:290px;"><?php echo $berichtHeute?></div>


</body></html>



Dann stimmen die Namen deiner Icons nicht mit denen von Google überein.

Hier die OriginalIcons.

Hallo Rainer,

vielen dank ich prüfe das mal.

Gruss
Frank

Hallo Rainer ich verzweifle,

das wars auch nicht.

Von wo an muss der Pfad denn angegeben werden?
Von der root aus oder von dem Ort wo das Wetter.php liegt?

Gruss
Frank

hatte ich doch schon geschrieben und warum nimmst Du es nicht so in dein Script. :confused:

$wetter = website_wetter("eschweiler", "Germany", "/user/WetterIcons/"); 

Hallo Rainer,
leider mache ich das so.
Ich habe gerade einmal 2 Ausgaben für die beiden Variablen in der Funktion gemacht.


    // Aktuelles Wetter
    $wetter[0]['zustand'] = $api->weather->current_conditions->condition->attributes()->data;
    $wetter[0]['temperatur'] = $api->weather->current_conditions->temp_c->attributes()->data;
    $wetter[0]['luftfeuchtigkeit'] = $api->weather->current_conditions->humidity->attributes()->data;
    $wetter[0]['luftfeuchtigkeit'] = str_replace("Feuchtigkeit", "rel.Luftfeuchte", $wetter[0]['luftfeuchtigkeit']);
    $wetter[0]['wind'] = $api->weather->current_conditions->wind_condition->attributes()->data;
    $wetter[0]['icon'] = str_replace($icons_google, $icons_src, $api->weather->current_conditions->icon->attributes()->data);
echo $icons_google."
";
echo $icons_src;

Rausgekommen ist:
/ig/images/weather/
/user/Wettericons

kann es sein das diese Zeile:
$wetter[0][‚icon‘] = str_replace($icons_google, $icons_src, $api->weather->current_conditions->icon->attributes()->data);

bei mir nicht funktioniert?

Gruss
Frank

Ruf mal die Googleseite direkt auf und schau ob das Icon so heisst wie deins im Ordner. Endung ist .gif

ja mist.gif ist auch da

Ich weiss echt nix mehr…:mad:

zeig mal den Inhalt deines Icon Ordner und den kompletten Pfad.

Hallo Rainer,

der Tipp mit dem Namen war schon mal ein Hinweis. Unter der 3 tagesansicht wird nun jeweils ein Icon angezeigt. Anscheinend war das Icon selber defekt. Ich habe es einmal neu umgewandelt und nun wird es angezeigt.
Ich würde Dir gerne mal ein Screenshot zeigen. Kann ich den hier einfügen. Könntest Du mir sagen wie das geht.

Gruss
Frank

Häng es doch an.

Einfach runter scrollen, Anhänge verwalten. Nach Möglichkeit, bitte als png.

Herzlichen Glückwunsch RWN zu deinem 3000. Beitrag.

Lieber Rainer, vielen Dank für deine Hilfe in 3000 Fällen

Hallo Rainer,

ich kann mich da nur anschliessen. Vielen vielen dank für Deine Hilfe.