Ich hole mir via. WWW-Reader einen String und schreibe diesen in die entsprechende Variable, welche wiederum bei Änderung folgendes Script triggert:
<?
/*
*****************************************************************************************
Verschickt eine email, wenn eine neue Firmware für die Homematic-CCU zur Verfügung steht
*****************************************************************************************
File : EMAIL - Homematic-CCU Firmware-Update
Trigger : ID 16938 [Sonstiges\Aktuelle Firmware für Homematic-CCU]
Interval : onchange
*/
// email-Betreff
$betreff = "Neue Firmware für Homematic-CCU: $IPS_VALUE";
// email-Inhalt
$text ="Firmware $IPS_VALUE für die Homematic-CCU steht zum Download zur Verfügung.
";
$text.="Download-Link: http://www.homematic.com/index.php?id=151
";
SMTP_SendMail(26571 /*[EMAIL\SMTP\E-Mail an "Administrator" senden (SMTP)]*/ , $betreff, $text);
?>
Das läuft seit der generellen* Umstellung von $IPS_VALUE auf $_IPS[‚VALUE‘] in eine Fehlermeldung:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in [EMAIL\Haus\EMAIL - Homematic-CCU Firmware-Update] on line 13
alle anderen Scripte, die ich mit Suchen und Ersetzen umgestellt habe, laufen fehlerfrei…
Liegts an der String-Variable (z.B. aktuell 1.506) die mit $_IPS[‚VALUE‘] nicht zurecht kommt… oder reichts in dem Fall nicht aus $IPS_VALUE einfach durch $_IPS[‚VALUE‘] auszutauschen… fehlt noch 'was?
Ich vermeide wo immer es auch geht Anführungszeichen.
echo 'Das ist Text!';
mit Variable so:
echo 'Das ist Text! Und das ist eine Variable: '.$variable;
Es gibt jedoch einen grundlegenden funktionalen Unterschied zwischen diesen beiden Zeichen: der Bereich zwischen Anführungszeichen wird von PHP ausgewertet, während alles, was zwischen Hochkommata steht, von PHP schnell übergangen wird.