hab das mit den Klammern auch noch nicht richtig begriffen. Kann mich jemand bei meinem Lehrgang unterstützen? Das Script geht danach noch weiter, aber vor einfügen dieses Parts problemlos.
stimmt, sieht ein bisschen verwirrlich aus mit „der roten Klammer“. Ist aber nur hier im Forum so. Habs aber inzwischen selbst bemerkt, was falsch war.
also PHP-Experte bin ich noch lange nicht, demzufolge fällt mir das Lesen fremder Scripte auch nicht leicht. Aber ich sinniere nun schon ein paar Minuten über oben stehendes, mir fällt dazu nur ein Schluss ein: ich glaube, Rainer meint zwischen den Zeilen sowas wie sieht nicht komisch aus sondern ist totaler Unfug…
und Papa macht jetzt den Kondensstreifen…(gaaaanz schnell wech…):D:D:D
mal Laienhaft erklärt (ich hoffe, die grobe Frau aus Sarkwitz schlägt mich jetzt nicht): in einer if-Bedingung werden mit den geschweiften Klammern die auszuführenden Befehlsfolgen eingeschlossen
If (Bedingung == irgendwas) // Kommentar: wenn Bedingung erfüllt dann->
{
mach gefälligst was;
}
aber hier hilft schon sehr Lektüre wie PHP für Dummies (liegt bei mir neben dem Kopfkissen)
hab mir „Einstieg in PHP 5 und My SQL“ von Galileo Computing besorgt, ist aber auf DVD, daher nicht so praktisch. Werde demnächst mal deinen Tip befolgen.
ich paluder mal aus dem Nähkästchen: ich hab im November angefangen mit IPS. Bis dahin überhaupt nichts mit Programmierung zu tun gehabt. Allein die Syntax zu verstehen war mir ein Graus, ich bin ganz schön ins Schwitzen gekommen. Um so mehr half mir beim Einstieg Lektüre wie „PHP für Dummies“ - ist wirklich zu empfehlen wenn man völlig neu in dem Thema ist. Also: keine falsche Scham und zuschlagen…
ich lass es jetzt mal in eine PHP-Lern-Orgie ausarten.
@RWN
Hab mir den Link angeschaut, ermuntert und motiviert mich nicht zum durchlesen (irgendwie kalte Materie)
@Raketenschnecke
Schon der Titel hört sich für mich ansprechend an (eben für Dummies)
und ich selbst lerne am besten am praktischen Beispiel (was zwar manche dämliche Frage in den Raum wirft), anderseits hat mal ein Lehrer von mir gesagt „es gibt keine dummen Fragen - es gibt nur dumme Leute, die nicht fragen“. Aber dies nervt wahrscheinlich wiederum einige hier im Forum, was ich auch verstehe.
Um nochmal auf die Anfangfrage zurückzukommen. Der Fehler ist nicht die Klammer sondern die Zeile darüber:
else($fenster =0)
Bedeutet: wenn die Bedingung nicht erfüllt wurde Ordne der Variablen $fenster den Wert „0“ zu. Dieser Befehl ist mit einem „;“ abzuschließen. Da aber keines kam , sondern als nächstes die Klammer, markiert er dies als Fehler. Deswegen
Merke: Bei einer Fehlermeldung ab der angegebenen Zeile nach oben weg suchen!
PS: Du wolltest sicher nicht $fenster die „0“ zuordnen sondern einen weiteren Vergleich durchführen. Da sind doppelte „=“ Pflicht. Im Ganzen:
<?
$fenster = GetValue(IPS_GetStatusVariableID(21464 /*[Fenster\Bad]*/, "StatusVariable"));
if($fenster >0)
{
IPS_RunScript(35164 /*[Hinweise\Fenster Bad]*/);
//mach was
}
elseif ($fenster == 0)
{
IPS_RunScript(33293 /*[Hinweise\alles aus]*/);
// tu noch was anderes schönes
}
else
{
//noch was anderes
}
IPS_Sleep(190);
FS20_SwitchMode(19780 /*[Allgemein\Licht Korridor]*/, false);
würde ich nicht überbewerten. Ich selbst hab hier früher ähnliche Fragen gestellt, bekam immer Hilfe. Ob das auf manche Leute genervt wirkt: ich würd’s nicht überbewerten, eher nein. Kommt ja immer auf die Tagesform beider Parteien an (Sender und Empfänger). Da wird schnell mal was reininterpretiert was gar nicht so gemeint war… alle haben mal schlechte Tage. Aber solange noch jemand auf Deine Fragen antwortet ist alles grün:D