landkreisbezogene Unwetterwarnung für die Homepage
Hallo zusammen,
für alle die gern die aktuelle Warnlage ihres Landkreises, ausgegeben vom DWD, auf der Homepage angezeigt haben möchten habe ich folgende kostenfreie Lösung anzubieten:
Beispiel: http://smswarn.de/uww.html
Features
- Landkreis frei wählbar
- Dank AJAX schnelle Ladezeit
- kostenlos, auch auf kommerziellen Seiten
- Layout mit CSS anpassbar
- Anzeige der Warnmeldung per Klick auf die Warnstufe *neu*
- Warnsituation des zugehörigen Bundeslandes im Hintergrund der Meldung *neu*
Vorraussetzung
- Client muss JavaScript aktiviert haben
- etwas HTML Kenntnis zum einbauen
Und so gehts
Bauen Sie folgende Codezeilen in die Seite ein, wo die Unwetterwarnung erscheinen soll.
In den HEAD-Tag:
Code:
<script type="text/javascript" src="http://www.smswarn.de/uww/script.js"></script></script>
Den BODY-Tag verändern Sie wie folgt: (Ihr Autokennzeichen, Bsp: BZ, einsetzen, sollte der DWD nicht das Autokennzeichen nutzen -> hier kucken)
Code:
<body onload="getuww('<strong>Autokennzeichen</strong>');">
Und zum Schluss noch folgende Zeile an der Stelle einfügen, wo die Wetterwarnung erscheinen soll.
Code:
<div id="uww_target"></div>
Damit lässt sich der DIV-Container mittels CSS beliebig bearbeiten. (Breite, Position, Rand, Hintergrund, Schrift, etc.)
ToDo:
* Script funktioniert derzeit nicht mit Opera-Broswern
Verbesserungsvorschläge werden gern entgegengenommen.
Liste der Anhänge anzeigen (Anzahl: 1)
Servus,
ich hab das Unwetterscript an die neue Homepage des DWD angepasst und auch den zeitliche Verlauf der Warnung mit aufgenommen.
- Das Script läuft auf allen PHP-fähigen Servern.
- Kein Java-script
- kein iframe
Probleme sind bis jetzt nur beim Internet Explorer 6 aufgetreten, da dieser keine transparenten Bilder darstellen kann. Aber wer mit dem noch surft ist selber schuld.
Mann kann auch feststellen ob eine Warnung vor liegt oder nicht. So lass ich z.B ein entsprechendes Achtungszeichen auf der Sartseite einblenden.
Bei Interesse für den Quellcode PN an mich.
Hier seht ihr das Script auf unser neuen Hompage (Momentan in Testphase) in Aktion, wenn eine Warnung vorhanden, wird dies auch auf der Startseite angezeigt.
Hier ein Bild:
PHP-Skript für DWD-Warnungen
Also,
jetzt mal für alle:
Den nachfolgenden Code müsst ihr einfach in den <body> der Seite einfügen, auf der ihr die Warnungen angezeigt bekommen möchtet. Beachtet bitte das die Datei eine .php sein muss, das der Server weis das er diese parsen muss.
Bitte nehmt vorher noch die Konfiguration der Links vor. Diese könnt ihr euch selbst von der neuen seite des DWD holen.(In diesem Beispiel für den Landkreis Dachau)
PHP-Code:
<map name="dwd">
<area shape="rect" coords="147,0,186,51" href="http://www.dwd.de" target="_blank" alt="Deutscher Wetterdienst" title="Deutscher Wetterdienst">
</map>
<p><br>
<u><b>Wetterwarnungen für den Landkreis Dachau</b></u></p>
<p>
<?
//Die Folgenden Links müsst ihr euch selbst bei http://www.wettergefahren.de heraussuchen.
$datei = "http://www.wettergefahren.de/zeige.php?ID=DAH#O";
//-------die Datei in der die Warnungen stehen---------------
$karte = "http://www.wettergefahren.de/scripts/getimg.php?src=/wundk/Warnungen/MS00_O.png";
//-------das Bild von eurem Landkreis-----------
$verlauf = "http://metportal.dwd.de/bvbw/portlets/WarnPortlet/jsp/getwarningmaps.jsp?src=DAH_timeline.png&mimeType=image/png";
//-------der Zeitliche Verlauf der Warnungen. Den gibt es nur bei http://www.dwd.de, er wird aber wenn die Seite down ist nicht eingeblendet.
$verlaufgefahren = file($verlauf);
if($verlaufgefahren)
{
echo '<table border="0">
<tr>
<td>
<img src="'.$verlauf.'" alt="Zeitlicher Verlauf der Warnungen" border="0" />
</td>
</tr>
</table>';
}
?>
<br>
<table align="center" border="0" cellpadding="0" cellspacing="0" align="center" width="100%">
<tr>
<td align="center">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<table align="center" border="0" bgcolor="#ffffff" cellpadding="0" cellspacing="0" width="500" height="390" background="<?php echo $karte ?>" style="border: 1px solid #000000;background-position:center;background-repeat:no-repeat;">
<tr>
<td>
<table border="0" width="500" height="390" background="wetter/bilder/halb.png">
<?PHP
$array = file($datei);
if(count($array)<=16){
echo "<tr>
<td bgcolor=\"#66B5FF\" width=10 valign=top>
<a name=\"A\"> </a>
</td>
<td valign=\"top\">";
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">
<tr>
<td height=\"70\" valign=\"top\">
<img src=\"wetter/bilder/dwdlogo.gif\" usemap=\"#dwd\" alt=\"Deutscher Wetterdienst\" title=\"Deutscher Wetterdienst\" align=\"right\" border=\"0\">
</td>
</tr>
<tr>
<td valign=\"top\" style='color: #000000'><center><b>Es liegen keine Warnungen für den Landkreis vor</b></center>
</td>
</tr>
</table>";
}
if(count($array)>16){
echo "<tr>
<td valign=\"top\">";
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">
<tr>
<td height=\"70\" valign=\"top\">
<img src=\"wetter/bilder/dwdlogo.gif\" usemap=\"#dwd\" alt=\"Deutscher Wetterdienst\" title=\"Deutscher Wetterdienst\" align=\"right\" border=\"0\">
</td>
</tr>";
echo "<tr>
<td style='color: #000000;' align='left'>";
$size = count($array);
$border = $size - 3;
for($x=9;$x<$border;$x++)
{ if($x == 12)
{
}
else
{
echo $array[$x];
}
}
echo " </td>
</tr>
</table>";
}
echo "</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>";
?>
wenn ihr das
Hier müsst ihr wieder die entsprechende Datei des DWD einfügen.
Da wo steht "link/zum/script" fügt ihr die url zum vorhergehenden script an. Soltet ihr eine Homepage mit Frames haben, vergesst nicht den target=' ' -Tag.
auch die URL zum "achtung.png" müsst ihr anpassen.
Beachtet, auch die Seite wo ihr diesen Code einfügt muss die Endung .php haben.
Damit das ganze läuft benötigt ihr noch ein paar Bilder. Die könnt ihr euch hier herunterladen.
In Aktion könnt ihr das Script hier sehen, wenn eine Warnung vorliegt wird im Schwarzen Balken unter dem "Fw Vierkirchen" - Bild neben "Wetterwarnung" ein Warndreieck eingeblendet.
Liste der Anhänge anzeigen (Anzahl: 1)
Das Problem bei Etienne ist, das auf dem Frame, noch mehr Sachen sind als die Tabelle. Da ist links Roter Balken und oben ist viel Luft. Somit würde es nicht schon mit Inlineframe aussehen.
Kannst ja mal ausprobieren mit folgende Code. Vielleicht reicht Dir ja trotzdem. Bildlaufleisten kann man ggf. deaktiviren für rchts nach Links und hoch und runter.
Blinky
Liste der Anhänge anzeigen (Anzahl: 1)
Hier der Code ohne Scrollbalken.
Liste der Anhänge anzeigen (Anzahl: 1)
Also die 150 Pixel Beite kommt von der Style-Anweisung im Table-Tag des Outputs des Scriptes. Habe es versucht zu unterdrücken, klappt aber nicht, da die Direktformatierung natürlich die höchste Prio hat.
Wende dich doch an den Autor...