[working as designed] $ips_variable

Hey,

Wieso kann ich nach dem upgrade diese zeile nicht mehr ausfuhren?

if ($IPS_VARIABLE == "") ...

PHP-kernel stoppt vonwegen

Notice: Undefined variable: IPS_VARIABLE

Vor dem Update gabs diese meldung auch, aber da hat das script sich trotzdem ausfuhren lassen.

Wie kann man in die neuste version wissen ob das script uber ein TimerEvent o. Variable getriggert wird? hmm :confused:

prüfe vorher mit $IPS_SENDER - diese zeigt an, ob das Script durch eine Variable („variable“) oder durch direkte Ausführung („execute“) getriggert wurde!

Das ist kein Fehler sondern nur eine Notice… Das Problem ist offensichtlich das dass Error-Loglevel von PHP defaultmässig zu „scharf“ eingestellt ist.

Setz vorher noch diese Abfrage ein (Quick&Dirty-Workaround):

if(isset($IPS_VARIABLE))

Nachtrag:
Mit diesem Befehl am Anfang des PHP-Scripts stellt man das Error-Loglevel so ein das nur wirkliche Fehler ausgegeben werden.

ini_set('error_reporting', E_ERROR);

Hiermit kann man alls Fehlerausgaben abschalten:

ini_set('error_reporting', E_NONE);

Dank dir,

Diese lösung habe ich mehrmals im einsatz … mir hat’s nur gewunderd wieso 1 script bei mir nicht mehr lief seit dem upgrade. Hat sich herausgestellt das ich auf ‚if ($IPS_VARIABLE =="")‘ code laufen habe; und das nach dem upgrade dieser script nicht mehr lief.
Dachte : Meldung machen.

Korrekt müsste es sein, wie Retiarius es sagte:


if($IPS_SENDER=="Variable") {
 if($IPS_VARIABLE=="irgendwas") {

   //...  

 }
}

Grüße, paresy