oekomat
14. November 2019 um 21:47
1
Guten Abend,
ich sammle die Status der Fenster vom Haus per Skript ein und schreibe ihn in eine Variable.
<?php
{$fenster = [12240 => 'Bad Gast',
36552 => 'Garagentor',
38879 => 'Zauntor'];
$ausgabe = "";
$fensterOffen = false;
foreach($fenster as $id => $name)
{if (GetValue($id))
{
$ausgabe .= $name . ' (' . GetValueFormatted($id) . ') ';
$fensterOffen = true;
}
}
if ($fensterOffen)
{
SetValue(39733, $ausgabe);
}
else
{
SetValue(39733, "alle Fenster geschlossen");
}
}
Jetzt werden die Daten allerdings hintereinander in die String Variable geschrieben. Ich hätte Sie aber gern als Absatz. Kann das jemand umsetzen? Ich bekomme es nicht hin.
Gruß oekomat
ralf
14. November 2019 um 22:49
2
Wo zeigst du die Ausgabe an?
Wenn du das Webfront nutzt, dann ergänze je ein <br />, das Profil muss dann auf HTML stehen.
oekomat
15. November 2019 um 14:09
3
ralf:
Wo zeigst du die Ausgabe an?
Wenn du das Webfront nutzt, dann ergänze je ein <br />, das Profil muss dann auf HTML stehen.
Ausgabe auf IPS View auf einem 24 Zoll Monitor.
Html hätte ich auch drauf kommen können [emoji3061]
Danke für deinen Denkanstoß, Werd ich heute gleich umsetzen.
oekomat
15. November 2019 um 15:45
4
mit dem o.g. Skript schreibe ich die Werte ja alle in eine Variable $ausgabe.
Bekomme es irgendwie nicht hin, dass innerhalb der Schleife eine neue Zeile gesetzt wird.
Kann mir da jmd helfen?
ralf
15. November 2019 um 16:00
5
$ausgabe .= $name . ’ (’ . GetValueFormatted($id) . ')<br /> ';
Sollte eigentlich reichen.
oekomat
16. November 2019 um 00:35
6
Leider nicht. Dann steht in der Variable „Badfenster (gekippt)<br />“
Variable ist String mit HTML-Profil.
Gruß oekomat
ralf
16. November 2019 um 09:44
7
Und du hast im IPSView auch eine HTML Box und kein Textfeld?
oekomat
16. November 2019 um 11:47
8
Ach ok…ich hatte in ips das Variablenprofil als htmlBox definiert. Kann ich denn jetzt irgendwie Textgröße bzw -farbe anpassen?
Danke für deinen Tipp
ralf
16. November 2019 um 12:11
9
Klar kannst du im HTML anpassen, was du möchtest ;).
Ich schaue gern im SELFHTML-Wiki
Ic habe es nicht getestet, da ich in meinen Scripten immer eine komplette HTML Seite erzeuge, ich zeige die normalerweise nur im IPSview an.
'<p style="font-size: large">'.$ausgabe .= $name . ' (' . GetValueFormatted($id) . ')<br /></p> ';
oekomat
17. November 2019 um 14:11
10
ralf:
Klar kannst du im HTML anpassen, was du möchtest ;).
Ich schaue gern im SELFHTML-Wiki
Ic habe es nicht getestet, da ich in meinen Scripten immer eine komplette HTML Seite erzeuge, ich zeige die normalerweise nur im IPSview an.
'<p style="font-size: large">'.$ausgabe .= $name . ' (' . GetValueFormatted($id) . ')<br /></p> ';
Danke Ralf für den Tipp, das funktioniert so zwar noch nicht bei mir, aber ich guck mir das mal an.
ralf
17. November 2019 um 14:16
11
Sorry, ist auch Quatsch, der Style Block muss natürlich vor name nach dem =, damit alles in ausgabe landet.
oekomat
17. November 2019 um 14:48
12
ralf:
Sorry, ist auch Quatsch, der Style Block muss natürlich vor name nach dem =, damit alles in ausgabe landet.
Sehr schön. nochmals Danke für deinen Einsatz. Wieder was gelernt.