if-Abfrage mit Verkettung durch OR-Operator

fUnKuCh3n

Erfahrenes Mitglied
Hallo,

ich würde gerne in einem Projekt bei einigen Seiten gewisse <div>'s ausblenden wollen, dafür habe ich folgenden Code:

PHP:
                    <? if($seite != "kontakt") {  ?>
                    <div style="position:relative;">
                        <img alt="" src="graphic/template/head_images/<? echo $kopfgrafik ?>.png" id="header"/>
                        <img alt="" src="graphic/template/head_image_text/head_image_text_<? echo $url_name ?>.png" 
                                style="position:absolute;margin:265px 0 0 -760px;" />
                    </div>
                    <div>
                        <img style="margin-top:5px;" alt="" src="graphic/template/line_light.png" />
                    </div>
                    <? 
                    }

Das klappt soweit auch, also sobald $seite = kontakt ist, wird der Bereich nicht angezeigt.
Nun würde ich das aber gerne für mehrere Seiten machen wollen, da dachte ich dann halt: ergänzt du einfach:

PHP:
                    <? if($seite != "kontakt" || $seite != "impressum") {  ?>
                    <div style="position:relative;">
                        <img alt="" src="graphic/template/head_images/<? echo $kopfgrafik ?>.png" id="header"/>
                        <img alt="" src="graphic/template/head_image_text/head_image_text_<? echo $url_name ?>.png" 
                                style="position:absolute;margin:265px 0 0 -760px;" />
                    </div>
                    <div>
                        <img style="margin-top:5px;" alt="" src="graphic/template/line_light.png" />
                    </div>
                    <? 
                    }

Das klappt leider nicht...
Hab ich nen Denkfehler oder hat jemand eine elegantere Idee / Lösung wie ich das machen könnte?

Danke vorab :)
 
Arbeite doch mit in_array.

PHP:
$seiten = array("kontakt", "impressum");

$aufruf = "kontakt";

if (in_array($aufruf, $seiten)) {
	echo "Anzeige gesperrt";
} else {
	echo "Anzeige nicht gesperrt.";
}

Alle Seiten bei denen der Bereich ausgeblendet werden soll, kommt in das Array. Das Ergebnis ist im Beispiel einfach zu prüfen wenn du die Angabe der Variable $aufruf änderst.
 
Noch als Info:

Hab ich nen Denkfehler

Kleinen Logikfehler.

PHP:
if($seite != "kontakt" || $seite != "impressum")

Das müsste && heißen.

In der Zeile, wie sie da steht, ist für $seite='kontakt' die rechte Teilbedingung wahr und für $seite='impressum' die linke. Die Gesamtbedingung wäre nur dann false, wenn $seite gleichzeitig den Wert "kontakt" und "impressum" hätte. Also nie. :)
 
Danke euch beiden!

Hab das nun mit dem Array gelöst, war ganz elegant und sieht etwas besser aus :)

Schönen Sonntag noch!
 
Zurück