Verona: Array_Problem noch immer nicht im Griff. :-(

Beitrag lesen

Ich bekomme es einfach nicht hin. Arrays sind bömsche Dörfer für mich. Dabei soll mein Array dynamisch sein - nicht bömisch. ;-)

Das Ganze Problem liegt im Grunde schon an meiner Art eine Seite zu erstellen. Ich habe mich für PHP entschieden und erstelle meine HTML-Seiten so, dass ich immer die gleiche Datei aufrufen - die index.php!

Wenn ich jetzt Inhalte ändern will, z.B. eine Seite eines Buches umblättern, dann gebe ich das dem Link in der Form mit:

<a href="index.php?buchseite=seite5"....

Mittels "switch" wechsel ich dann die entsprechenden Inhalte.

Das Problem liegt bei dieser Vorgehensweise bei CSS und den Pseudo-Elementen :active, :hover, udg. für Links. Wenn ich nämlich jedesmal dieselbe Seite neu aufrufe, dann ist das Pseudo-Element immer :link aber niemals :active. Bis hier hin klar?

Also habe ich mir gedacht zwei Klassen zu nehmen. Eine Klasse wenn der Link nicht :active ist und eine wenn er :active ist.

Das sieht dann so aus:

<a href="index.php?seite=5" class="<?php $class ?>"....
<a href="index.php?seite=6" class="<?php $class ?>"....
<a href="index.php?seite=7" class="<?php $class ?>"....

Wenn $buchseite=5 dann $class="on"

Jetzt sind aber alle Links auf "on". Ich sehe aber nicht den Sinn darin, dass so zu machen:

<a href="index.php?seite=5" class5="<?php $class ?>"....
<a href="index.php?seite=6" class6="<?php $class ?>"....
<a href="index.php?seite=7" class7="<?php $class ?>"....

Sind tausende Variablen. Das kann es ja wohl nicht sein, oder?! Außerdem müsste ich dann in der if- oder switch-Anweisung alle Variablen schreiben. Dann kann ich es ja auch gleich in HTML machen.

Was nun? Ich habe da an Arrays gedacht. Und zwar so:

<a href="index.php?seite=5" class[$seite]="<?php $class ?>"....
<a href="index.php?seite=6" class[$seite]="<?php $class ?>"....
<a href="index.php?seite=7" class[$seite]="<?php $class ?>"....

Jetzt sollte anhand der $seite ein array erstellt werden. Wenn z.B. die Variable $seite=5 ist, dann soll die Variable $class mit dem Index 5 den Wert "on" erhalten, und alle $class mit anderem Index den Wert "off".

$class array();
$class [0] = "off";
...
$class [5] = "on";
$class [6] = "off";
$class [7] = "off";
...
usw.

Ich hoffe das mir jemand aus diesem Problem heraushelfen kann.

V