random layout

Hallo,
Ich möchte mit einem bekannten von mir eine 'Kunstseite' erstellen und für diese wollen wir ein Random Layout haben damit es etwas interessanter wirkt ...
Nun mein Problem ist, dass ich nicht so recht weiß wie ich das anstellen soll, weil ich noch nie mir rand() oder anderen Zufallsfunktionen gearbeitet habe.

Als Layout hab ich an ein Table-Layout gedacht mit einen Headerlogo welches dann immer wechsel soll (nach neuen Seitenbesuch) sowie auch die css-Datei.

Hab ihr villeicht eine Idee wie ich das machen könnte?


lg
 
Ich weiß ja nicht was hier alles zufällig geändert werden soll.

Aber wenn es nur um das Headerlogo und die CSS Datei geht, kannst Du ja zwei Tabellen anlegen.
In die eine Tabelle trägst Du die Namen der vorhandenen Logos ein und in die andere die Namen der vorhandenen CSS Dateien.

Jetzt machst Du für jede Tabelle eine Abfrage :

PHP:
"SELECT logo FROM tabelle1 ORDER BY RAND() LIMIT 1"  // für die Bilder
"SELECT css FROM tabelle2 ORDER BY RAND() LIMIT 1"  // für die CSS Datei

Das Ergebnis dieser Abfrage(n) verwendest Du dann z.B. für das IMG-Tag.

Oder ohne Datenbank, dafür mit Array :

PHP:
<?
$bild[] = "bild1.jpg";
$bild[] = "bild2.jpg";
$bild[] = "bild3.jpg";
$bild[] = "bild4.jpg";
$bild[] = "bild5.jpg";
shuffle($bild);

$css[] = "format1.css";
$css[] = "format2.css";
$css[] = "format3.css";
$css[] = "format4.css";
$css[] = "format5.css";
shuffle($css);
?>

<html>

<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>Zufall</title>
<link rel="stylesheet" type="text/css" href="<? echo $css[0]; ?>">
</head>

<body bgcolor="#ffffff">
<img src="<? echo $bild[0]; ?>" width="100" height="100" border="0" title="<? echo $bild[0]; ?>">
</body>

</html>
 
Zuletzt bearbeitet:
danke schonmal.
das mit dem zufall klappt schon mal, nur jedoch nicht das richtige bild mit der richtigen css datei ...
wie kann man das denn machen dass jedes bild nur mit seinem css datei angezeigt wird und nicht mit jeder..?
 
Wenn wir bei der Arraylösung bleiben :

PHP:
<? 
$optik[0][0] = "bild1.jpg";
$optik[0][1] = "format1.css";

$optik[1][0] = "bild2.jpg";
$optik[1][1] = "format2.css";

$optik[2][0] = "bild3.jpg";
$optik[2][1] = "format3.css";

shuffle($optik); 
?>

Oder bei der Datenbanklösung einfach nur eine Tabelle anlegen die dann sowohl den Namen des Bildes als auch den Namen der CSS-Datei enthält.

PHP:
"SELECT logo, css FROM tabelle ORDER BY RAND() LIMIT 1"

Damit kannst Du dann ein bestimmtes Bild mit einer bestimmten CSS-Datei verknüpfen.
Ich denke diese Lösung wäre einfacher wenn es ums ändern oder erweitern geht.

Gruß Thomas

NACHTRAG : Solltest Du Dich für die Arrays entscheiden, wäre es sehr sinnvoll wenn Du diese in eine separate Datei auslagerst und überall dort wo sie benötigt werden mit INCLUDE einbindest.
Sonst musst Du bei Änderungen womöglich unzählige Seiten ändern und dabei macht man schnell mal einen Fehler oder vergisst was!!
 
Zuletzt bearbeitet:
Zurück