PHP-Frage zu automatischem Farbwechsel

...komplette Frage anzeigen

4 Antworten

Ich hatte das zwar schon als Kommentar geschrieben, weiß aber nicht, ob dir Kommentare automatisch gemeldet werden, deshalb auch nochmal als Antwort:

ACHTUNG! Dein PHP-Code enthält eine potenzielle Sicherheitslücke, die du besser schließen solltest: Verwende niemals Werte aus einer von außen vorgegebenen Variable, um damit ein include()/require() durchzuführen. Auch wenn du noch einen String (das Unterverzeichnis) voranstellst, kannst du nicht zu 100% sicher sein, dass tatsächlich nur die von dir geplanten Dateien eingebunden werden (ein Aufruf mit "?bereich=../skript.php" als Querystring bindet z.B. das Skript skript.php aus dem übergeordneten Verzeichnis ein).

Auch wenn das Einbinden externer Skripte durch das vorangestellte Verzeichnis wahrscheinlich nicht möglich ist (habe ich noch nicht getestet), ich würde das an deiner Stelle nicht so umsetzen, sondern klar eingrenzen, welche Skripte eingebunden werden können.

Zudem gibt es bei deiner aktuellen Umsetzung ab und zu keinen großen Kontrastunterschied zwischen Hintergrund und Text, so dass die Seite eher nicht lesbar ist. Das würde ich ebenfalls noch anpassen und nur hellere Hintergrundfarben zulassen.

Antwort bewerten Vielen Dank für Deine Bewertung

Ich würde einen Array mit gewünschten Farbwerten erstellen und dann per Zufallszahl einen Wert aus diesem Array wählen ...

Direkt alle RGB Werte als Zufall generieren würde ich nicht machen, schwarze Schrift auf schwarzen Hintergrund wirkt nie so besonder ;-)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von BenxD
07.10.2011, 21:47

Hallo Andre1972,

vielen Dank für deine schnelle Antwort.

Kannst du bitte einen Code posten? Ich kann PHP erst seit ein paar Tagen.

Gruß,

Ben

0

Das machst du nur indirekt mit php. Layout und Farben sollten mittels css definiert werden. Demnach sollte eine CSS Datei geladen werden. Idealerweise hast du Farben und Layout getrennt. Sprich du lädst eine layout.css und eine farben.css. Die Farben sind demnach austauschbar!

Jetzt kommt php ins spiel. Im php code generierst du eine Zufalls Zahl von 0 - x. X ist die Anzahl an farb css Dateien, die du hast. Beispielsweise hast du 3 Farbdateien. farbe1.css, farbe2.css, farbe3.css. farbe1.css macht die komplette Seite Grün, 2 = blau, 3 = rot. Im php generierst du also eine Zufallszahl zwischen 1 und 3 und gibst sie ins HTML:

$intZufallsZahl muss weiter oben im Script zusammen gebaut werden. Du kannst das ganze natürlich noch besser per Template Variable steuern.

Vorteil ist dass du die Farben an einer einzigen Stelle definierst. Falls es dir irgendwann nicht mehr gefällt hast du zudem minimalen Aufwand das wieder raus zu nehmen.

Anstelle von PHP kannst du das ganze auch mit Javascript bauen. Vorgehen wäre das gleiche.

Gruß

Antwort bewerten Vielen Dank für Deine Bewertung

Hi, hier bitte sehr ;) http://nopaste.info/2291f3b22c.html

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von BenxD
08.10.2011, 12:45

Hallo Jam123,

vielen Dank für Deine Bemühungen.

Inzwischen hab ich das ganze alleine hingekriegt. Trotzdem danke.

Als Dank kriegst du ein Plus und Hilfreichste Antwort!:D

Gruß,

Ben

0

Was möchtest Du wissen?