Ich hab ein kleines Videoportal, welches neben den PHP Dateien noch TPL Dateien enthält, die in HTML aufgebaut sind.
Nun will ich in der tpl Datei eine Variable halbieren, bloß irgendwie klappt es nie und ich weiß auch nicht wo der Fehler ist.
Mein bisheriger Versuch:
{$vinfo[0].rate / 2}
Erklärung:
$vinfo[0].rate ist die Variable, sie liefert eine 8 und diese 8 will ich eben durch 2 dividieren. Doch wenn ich es so mache, wie oben beschrieben, dann zeigt er trotzdem eine 8 an, obwohl er sie eigentlich dividieren sollte.
Was bedeuten denn die geschweiften Klammern - steht die Operation vielleicht in einer Funktion?
Und falls ja, ist $vinfo als globale Variable definiert?
Ich muss es in geschweiften Klammern schreiben, da html es ansonsten nicht als Variable sieht, sondern als einen Text.
$vinfo ist eine tabelle in der Datenbank, wo eben auch die anzahl der Bewertung (rate) gespeichert ist. Die Bewertung geht von 0 bis 10. ich will es aber von 0 bis 5 auf dem Bildschirm ausgeben lassen, deshalb muss ich das rate halbieren, jedoch klappt es irgendwie nicht bei mir.
Wir reden irgendwie aneinander vorbei: HTML kennt keine Variablen (und auch keine Kontrollstrukturen). HTML ist eine textbasierte Auszeichnungssprache zur Strukturierung von Inhalten wie Texten, Bildern und Hyperlinks in Dokumenten (lt Wikipedia).
Ich dachte, Dein Code-Schnipsel sei aus einem Javascript; aber mit Javascript macht man idR keine Datenbankzugriffe.
Ich muss es in geschweiften Klammern schreiben, da html es
ansonsten nicht als Variable sieht, sondern als einen Text.
HTML sieht es immer als Text. HTML ist keine Programmiersprache und kennt auch keine Variablen. Wie HTML Deine Seite sieht, siehst Du wenn Du Dir in Deinem Browser den Quelltext der Seite anzeigen lässt. Da sind dann wahrscheinlich keine geschweiften Klammern mehr.
Die geschweiften Klammern werden von einer serverseitig laufenden Sprache (Template-Engine) gelesen und interpretiert. Um Deine Frage beantworten zu können, müsste man entweder wissen, um welche Template-Engine es sich handelt, um dann in der Spezifikation nachzuschlagen, wie man mit Variablen rechnet oder Du schaust selber gleich in selbige rein, denn Du musst ja wissen, welche Engine das ist.