Hi!
while($result2 = mysql_fetch_assoc($dbabfrage2))
{
$name_navi = $result2[name_navi];
$link_navi = $result2[link_navi];
}
Schau dir die while-Schleife mit diesem Inhalt nochmal genau an.
Ok. Ich sehe aber nicht was ich anders machen sollte?!
Dann erstell eine Kontrollausgabe. Schreib dir beispielsweise vor die schließende Klammer
echo '$name_navi enthält jetzt: ' . htmlspecialchars($name_navi) . '<br>';
echo '$link_navi enthält jetzt: ' . htmlspecialchars($link_navi) . '<br>';
$tpl->assign("name_navi", "$name_navi");
$tpl->assign("link_navi", "$link_navi");
Warum rahmst du Variablen mit String-Begrenzern ein?
Wüsste nicht, warum nicht?!
Weil sie einfach überflüssig sind. Das Ergebnis des Ausdrucks "$foo" entspricht dem Inhalt der Variablen $foo, nur dass der PHP-Interpreter geringfügig mehr Arbeit hatte, weil er den Variableninhalt nicht direkt verwenden konnte, sondern vorher noch etwas Stringverarbeitung damit treiben musste.
Das CMS soll recht simple gehalten sein, damit auch absolute Laien es benutzen können/sollten :)
Was genau soll denn der absolute Laie an dem System noch machen? Darf er die Templates selbst anpassen? [...]
Bei sturem Text eintippen, kann aber am Design nicht geändert werden. Und genau das ist der Punkt. Ein funktionielles CMS mit welchem man ohne weiteres einfach seine eigenen Templates verwenden kann, ohne vorher groß irgendwelche Dokus usw. gelesen zu haben.
Und das funktioniert nicht mit absoluten Laien, die keine Ahnung haben, wie man Templates so schreibt, dass am Ende immer noch ein sicheres System entsteht - besonders, wenn ein anscheinend Grade-so-nicht-mehr-Laie das Fundament dazu entwickelt hat. Du brauchst noch eine ganze Menge Erfahrung, bevor du ein System erstellen kannst, das man guten Gewissens an die Öffentlichkeit geben kann. Du solltest ruhig weiterarbeiten, aber nicht mit dem derzeitigen Ziel, es zu veröffentlichen, sondern um dabei zu lernen, wie man sicher programmiert und wo dabei die Fallstricke sind.
Da geht es übrigens den Menschen wie den Leuten. Vier Studenten schickten sich an, ein Community-System namens Diaspora zu entwickeln. Das hat einige Vorschusslorbeeren für das Konzept bekommen. Doch der vor kurzem veröffentlichte Code zeigte, dass da gravierende Sicherheitslücken drin sind, die nicht einfach nur Ausrutscher sind, sondern zeigen, dass die Fehler systematisch begangen wurden. http://www.kalzumeus.com/2010/09/22/security-lessons-learned-from-the-diaspora-launch/
Lo!