ronald
4. November 2011 um 11:03
1
In meinem script um die Wohnzimmertemperatur zu steuern:
"<?
if (GetValue(15815 /[Home\Wohnzimmer\Wohnzimmer Temp] /) <
(GetValue(20279 /[Home\Wohnzimmer\Wohnzimmer Regler\SETPOINT] /) {
FS20_SwitchMode(46575 /[Home\Heizung Schalter\SH Wohnzimmer\Status] /, true);
} else {
FS20_SwitchMode(46575 /[Home\Heizung Schalter\SH Wohnzimmer\Status] /, false);
}
?>"
wird beim ausführen folgender Fehler angezeigt:
„Parse error: syntax error, unexpected ‚{‘ in [Skripte\Wohnzimmer heizung steuern] on line 4“
Könntet ihr mir mitteilen, welche Änderung im script getätigt werden muss und warum…
paresy
4. November 2011 um 11:14
2
Schau dir mal die Klammern im if Statement an. Da stimmt die Anzahl der ( und ) nicht überein…
paresy
UVoigi
4. November 2011 um 11:15
3
<?
if (GetValue(15815 /*[Home\Wohnzimmer\Wohnzimmer Temp]*/)
{
FS20_SwitchMode(46575 /*[Home\Heizung Schalter\SH Wohnzimmer\Status]*/, true);
} else {
FS20_SwitchMode(46575 /*[Home\Heizung Schalter\SH Wohnzimmer\Status]*/, false);
}
?>
Aber was soll das mit „if (GetValue(15815 /[Home\Wohnzimmer\Wohnzimmer Temp] /)“
was soll das bewirken? Am besten beschreibst Du mal was Du vor hast.
Hallo!
<?
if (GetValue(15815 /*[Home\Wohnzimmer\Wohnzimmer Temp]*/) <
(GetValue(20279 /*[Home\Wohnzimmer\Wohnzimmer Regler\SETPOINT]*/) {
FS20_SwitchMode(46575 /*[Home\Heizung Schalter\SH Wohnzimmer\Status]*/, true);
} else {
FS20_SwitchMode(46575 /*[Home\Heizung Schalter\SH Wohnzimmer\Status]*/, false);
}
?>
PHP-Code am besten in die richten Tags setzen, dann kann man´s besser lesen
zu deinem Problem:
if (GetValue(15815 /*[Home\Wohnzimmer\Wohnzimmer Temp]*/) <
GetValue(20279 /*[Home\Wohnzimmer\Wohnzimmer Regler\SETPOINT]*/)) {
Du hast die Klammern bei dem 2. GetValue falsch gemacht. Am anfang eine Öffnende, die du nicht brauchst, dafür am Ende eine Schließende vergessen.
Gruß,
Christian.
ronald
4. November 2011 um 16:25
5
@paresy , @ChristianS - danke – Zeile 4 klappt jetzt.
Jetzt wird beim Ausführen in Zeile 5 folgende Warnung angezeigt:
„Warning: fs20_switchmode: Instance #46575 not found! in [Skripte\Wohnzimmer heizung steuern] on line 5“
was mache ich falsch?
@bmwm3 ,
das script soll die Heizung einschalten wenn die Temperatur im Wohnzimmer „kleiner gleich“ dem Sollwert des Thermostats ist oder die Heizung ausschalten, wenn die Temperatur im Wohnzimmer „größer gleich“ dem Sollwert des Thermostats ist.
… wie muss ich mein script umschreiben, dass meine Anforderung erfüllt wird?
ronald:
was mache ich falsch?
Du versuchst vermutlich auf die ID des Status zu schalten…
46575 /*[Home\Heizung Schalter\SH Wohnzimmer\Status]*/
Du musst hier die ID der Instanz einsetzen.