Hallo,
habe jetzt auch alles installiert.
Es scheint auch alles zu funktionieren.
Leider bringt mir das Vorhersage Script einige Errors beim ausführen.
Notice: Undefined offset: 0 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 99
Notice: Undefined offset: 0 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 100
Notice: Undefined offset: 0 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 110
Notice: Undefined offset: 1 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 111
Notice: Undefined offset: 0 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 112
Notice: Undefined offset: 1 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 113
Notice: Undefined offset: 0 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 114
Notice: Undefined offset: 1 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 115
Notice: Undefined offset: 2 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 118
Notice: Undefined offset: 3 in C:\IP-Symcon\scripts\Vorhersage.ips.php on line 119
Abort Processing during exceed of maximal ErrorCount: Undefined offset: 2
Error in Script C:\IP-Symcon\scripts\Vorhersage.ips.php on Line 120
Ich habe an dem Script nichts verändert. Habe nur im Konfig Script Anpassung vorgenommen.
<?
require IPS_GetKernelDir()."scripts\\konfigurationWetter.ips.php";
require IPS_GetKernelDir()."scripts\\loginFtpServer.ips.php";
ftp_chdir($conn_id, "gds/specials/forecasts/tables/germany/");
if($debug) echo "Aktuelles Verzeichnis: " . ftp_pwd($conn_id) ."
";
$vorhersage = array("Daten_".$region."_frueh",
"Daten_".$region."_mittag",
"Daten_".$region."_spaet",
"Daten_".$region."_nacht",
"Daten_".$region."_morgen_frueh",
"Daten_".$region."_morgen_spaet",
"Daten_".$region."_uebermorgen_frueh",
"Daten_".$region."_uebermorgen_spaet",
"Daten_".$region."_Tag4_frueh",
"Daten_".$region."_Tag4_spaet");
for($i = 0; $i < count($vorhersage); $i++)
{
$datenVorhersage = IPS_GetKernelDir()."webfront\\user\\WetterFtpDWD\\Vorhersage\\".$vorhersage[$i];
$handledatenVorhersage = @fopen($datenVorhersage, 'wb+');
if (ftp_fget($conn_id, $handledatenVorhersage, $vorhersage[$i], FTP_ASCII))
{
if($debug) echo $vorhersage[$i]." wurde erfolgreich nach ".$datenVorhersage." geschrieben.
";
}
else
{
if($debug) echo "Download von ".$vorhersage[$i]." zu ".$datenVorhersage." war nicht möglich.
";
}
}
fclose($handledatenVorhersage);
ftp_close($conn_id);
$umschZeit = date("H:i");
switch($umschZeit)
{
case $umschZeit >= "23:30" || $umschZeit < "05:30":
$viertel = "frueh";
break;
case $umschZeit >= "05:30" && $umschZeit < "11:30":
$viertel = "mittag";
break;
case $umschZeit >= "11:30" && $umschZeit < "17:30":
$viertel = "spaet";
break;
case $umschZeit >= "17:30" && $umschZeit < "23:30":
$viertel = "nacht";
break;
}
$dataForXml = array("Daten_".$region."_morgen_frueh",
"Daten_".$region."_morgen_spaet",
"Daten_".$region."_uebermorgen_frueh",
"Daten_".$region."_uebermorgen_spaet",
"Daten_".$region."_Tag4_frueh",
"Daten_".$region."_Tag4_spaet",
"Daten_".$region."_".$viertel,
"Daten_".$region."_spaet");
for($i=0; $i<count($dataForXml); $i++)
{
$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);
$time = date("d.m.Y - H:i:s");
if(isset($city[6]) && $city[6] != "")
{
if($umschZeit >= "00:30" && $umschZeit < "04:30") SetValue($tempMin, $city[6][$lokal][0]);
$aktuell = $city[6][$lokal][1];
$iconAktuell = '/user/WetterFtpDWD/icons/'.str_replace(" ", "", $city[6][$lokal][1]).'.png';
}
else
{
$aktuell = $city[0][$lokal][1];
$iconAktuell = '/user/WetterFtpDWD/icons/'.str_replace(" ", "",$city[0][$lokal][1]).'.png';
}
if(isset($city[7]) && $city[7] != "")
{
if($umschZeit >= "00:30" && $umschZeit < "17:30") SetValue($tempMax, $city[7][$lokal][0]);
}
$tag = strtotime("+1 day");
$tagMorgen = date("D d.m", $tag);
$tempMorgenMin = $city[0][$lokal][0];
$tempMorgenMax = $city[1][$lokal][0];
$conditionMorgenFrueh = $city[0][$lokal][1];
$conditionMorgenSpaet = $city[1][$lokal][1];
$iconMorgenFrueh = '/user/WetterFtpDWD/icons/'.str_replace(" ", "", $city[0][$lokal][1]).'.png';
$iconMorgenSpaet = '/user/WetterFtpDWD/icons/'.str_replace(" ", "", $city[1][$lokal][1]).'.png';
$tag = strtotime("+2 day");
$tag3 = date("D d.m", $tag);
$temptag3Min = $city[2][$lokal][0];
$temptag3Max = $city[3][$lokal][0];
$conditiontag3Frueh = $city[2][$lokal][1];
$conditiontag3Spaet = $city[3][$lokal][1];
$icontag3Frueh = '/user/WetterFtpDWD/icons/'.str_replace(" ", "", $city[2][$lokal][1]).'.png';
$icontag3Spaet = '/user/WetterFtpDWD/icons/'.str_replace(" ", "", $city[3][$lokal][1]).'.png';
$tag = strtotime("+3 day");
$tag4 = date("D d.m", $tag);
$temptag4Min = $city[4][$lokal][0];
$temptag4Max = $city[5][$lokal][0];
$conditiontag4Frueh = $city[4][$lokal][1];
$conditiontag4Spaet = $city[5][$lokal][1];
$icontag4Frueh = '/user/WetterFtpDWD/icons/'.str_replace(" ", "", $city[4][$lokal][1]).'.png';
$icontag4Spaet = '/user/WetterFtpDWD/icons/'.str_replace(" ", "", $city[5][$lokal][1]).'.png';
$lokal = utf8_encode($lokal);
$xmlString = <<<XML
<wetterinformationen>
<info>
<zeit>$time</zeit>
<ort>$lokal</ort>
</info>
<data>
<day>$tagMorgen</day>
<conditionf>$conditionMorgenFrueh</conditionf>
<conditions>$conditionMorgenSpaet</conditions>
<tempmin>$tempMorgenMin</tempmin>
<tempmax>$tempMorgenMax</tempmax>
<iconf>$iconMorgenFrueh</iconf>
<icons>$iconMorgenSpaet</icons>
</data>
<data>
<day>$tag3</day>
<conditionf>$conditiontag3Frueh</conditionf>
<conditions>$conditiontag3Spaet</conditions>
<tempmin>$temptag3Min</tempmin>
<tempmax>$temptag3Max</tempmax>
<iconf>$icontag3Frueh</iconf>
<icons>$icontag3Spaet</icons>
</data>
<data>
<day>$tag4</day>
<conditionf>$conditiontag4Frueh</conditionf>
<conditions>$conditiontag4Spaet</conditions>
<tempmin>$temptag4Min</tempmin>
<tempmax>$temptag4Max</tempmax>
<iconf>$icontag4Frueh</iconf>
<icons>$icontag4Spaet</icons>
</data>
<aktuell>
<day>Heute</day>
<condition>$aktuell</condition>
<icon>$iconAktuell</icon>
</aktuell>
</wetterinformationen>
XML;
$xml = new SimpleXMLElement($xmlString);
$xml->asXML(IPS_GetKernelDir()."webfront\\user\\WetterFtpDWD\\Vorhersage\\vorhersage.xml");
?>