Script funktioniert, aber wirft im Webfront einen Fehler ohne genaueren Hinweis aus

Hallo zusammen,

da ich nunmal absolut kein Plan von PHP hab und mir hier immer alles nach bestenm Gewissen zusammen reime, muss ich hier doch wegen einer Lapalie nerven und nach der Lösung fragen. :frowning:

Ich habe einen virtuellen Taster, der auch funktioniert und 2 HM Aktoren erfolgreich schaltet und per Script auch der Status abgefragt wird. Das funktioniert auch soweit. Nur bekomme ich trotzdem eine Fehlermeldung bzw. Scriptfehler.
Ich habe mir auch schon im Bereich „Wie kann ich 2.0“ die Beispiele dazu angeschaut und getestet … selbes Ergebnis. Hat das eventuell was mit 4.0 zu tun ? Nur wenn ich keine richtige Fehlermeldung erhalte die mir weiterhilft, kann ich der Sache selber nicht auf die Spur kommen.

Mein Script

// Dieses Script schaltet 2 Homematic Aktoren über einen virtuellen Taster (integer Variable)
// Das Script muss in der integer Variable hinterlegt sein !!!!

<?

 if($IPS_SENDER == "WebFront")
{
   SetValue($IPS_VARIABLE, $IPS_VALUE);
}

switch($IPS_VALUE) {

  case 0: //Aus
HM_WriteValueBoolean(52747 /*[Erdgeschoss\Wohnküche\Küche\Küche Oberlicht]*/, "STATE", false);
HM_WriteValueBoolean(24479 /*[Erdgeschoss\Wohnküche\Küche\Küche Unterlicht]*/ , "STATE", false);
  break;

  case 1: //An
HM_WriteValueBoolean(52747 /*[Erdgeschoss\Wohnküche\Küche\Küche Oberlicht]*/, "STATE", true);
HM_WriteValueBoolean(24479 /*[Erdgeschoss\Wohnküche\Küche\Küche Unterlicht]*/ , "STATE", true);
  break;

 }


?>

Webfront:
fehlermeldung_virtuell.PNG

Meldungen:

Ok, dachte ich mir… nimmste mal das Beispielscript 1:1 aus „Wie kann ich 2.0“

 <?
if($_IPS['SENDER'] == "WebFront") {
    SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);

    switch ($_IPS['VALUE']) {
            case 0:
                //Befehl der bei Wert 0 ausgeführt wird
                HM_WriteValueBoolean(52747 /*[Erdgeschoss\Wohnküche\Küche\Küche Oberlicht]*/, "STATE", false);
				HM_WriteValueBoolean(24479 /*[Erdgeschoss\Wohnküche\Küche\Küche Unterlicht]*/ , "STATE", false);
                break;

            case 1:
                //Befehl der bei Wert 1 ausgeführt wird
                HM_WriteValueBoolean(52747 /*[Erdgeschoss\Wohnküche\Küche\Küche Oberlicht]*/, "STATE", true);
				HM_WriteValueBoolean(24479 /*[Erdgeschoss\Wohnküche\Küche\Küche Unterlicht]*/ , "STATE", true);
                break;

        }
}
?>

Webfront
Fehler.PNG

Meldungen:

Beide funktionieren ^^ Aber die Meldung nervt doch im Webfront

Gruß
Christian

Deine Kommentare dürfen nicht vor dem „<?“ stehen.

Gruß

Burkhard

Moin!

Und beim 2. Beispiel hast du ein Leerzeichen davor…

Falsch:
" <?"

Richtig:
„<?“

Langsam sollte man das kennen, wird alle paar Tage geposted :smiley:

Grüße,
Chris

Ohhh mannnn :banghead::banghead::banghead::banghead::banghead:
So ein dummes Leerzeichen am Anfang verursacht gleich so einen Fehler ?!
Jetzt gehts.

Das ist gemein. Hab mir den Wolf gesucht und in jedem der beiden Scripte ein Fehler eingebaut :frowning:

Kommentare nicht vor „<?“ <— wusste ich auch nicht. Aber ok ^^ Wieder was dazu gelernt.