Antworten auf deine Fragen:
Neues Thema erstellen

php if funktion

_tnt_

pixel!

moin moin,
mein html sieht so aus:

Code:
<div id="navi">
	<ul>
		<li id="tab01"><a href="index.xhtml">Home</a></li>
		<li id="tab02"><a href="newsa.xhtml">News</a></li>
		<li id="tab03"><a href="bildera.xhtml">Bilder</a></li>
		<li id="tab04"><a href="membera.xhtml">Member</a></li>
		<li id="tab05"><a href="myphotoa.xhtml">My Photo</a></li>
	</ul>
</div>

jetzt möchte ich aber, immer wenn ich mich auf der aktuellen seite befinde, soll der link weg und ein <strong> daraus gemacht werden.

Code:
<div id="navi">
	<ul>
		<li id="tab01"><strong>Home</strong></li>
		<li id="tab02"><a href="newsa.xhtml">News</a></li>
		<li id="tab03"><a href="bildera.xhtml">Bilder</a></li>
		<li id="tab04"><a href="membera.xhtml">Member</a></li>
		<li id="tab05"><a href="myphotoa.xhtml">My Photo</a></li>
	</ul>
</div>

das müsste doch mit php funktionieren oder. php soll die url checken und gucken auf welcher seite ich gerade bin. wenn ich also grad auf der index.xhtml bin, dann soll der link weg und ein strong her.

geht das?


_tnt_
 

P

Pixelverwender

Guest

AW: php if funktion

Warum setzt Du das nicht einfach per Hand ein? Ist bei jeder Seite exakt einmal nötig und dauert etwa 3 sec. Einfach dem entsprechenden Eintrag eine andere id geben und die im CSS definiert.
 

_tnt_

pixel!

AW: php if funktion

ich will den kopfbereich, das navi und den fußbereich dan auslagern, dass ich dann nur mehr eine datei ändern brauch und fertig.

deshalb sollte das automatisch funktionieren. sonst kann ich den navibereich ned auslagern. habs jetzt eh händisch gemacht. außerdem soll die seite noch größer werden.

_tnt_
 

_tnt_

pixel!

AW: php if funktion

ja ich werd ne if - else funktion brauchen.
nur hab keinen plan wie ich php sagen soll, dass die url ausgelesen wird und wie dann ein bestimmter html teil ersetzt wird.

aber du könntest mir bitte den link oder suchbegriff senden.


_tnt_

edit: ok hab was gefunden > http://php.net/manual/de/function.basename.php <
aber, leider versteh ich php ned so ganz. von daher bräucht ich etwas hilfe.
 
Zuletzt bearbeitet:

_tnt_

pixel!

AW: php if funktion

das hat nen style grund. das strong könnte auch ne id oder ne class sein. im grunde gehts nur darum, ich muss das irgendwie mit ner id, class, strong, span versehen (und den link weg) (die aktuelle seite).

mit basename filter ich die datei aus der url. jetzt müsst ich hald die navi punkte irgendwie in ne variable bringen, damit ich dann die url und die variable vergleichen kann.

aber wie geh ich das an.

_tnt_
 

AlexanderBo

Gesperrt

AW: php if funktion

warum denn nicht einfach mal n bissl php vernünftig?¿?

kurz+ knapp...

Code:
<div id="navi">
    <ul>
        <li id="tab01"><a href="index.php?home"><? if(isset($_GET['home']))echo '<b>'?>Home<? if(isset($_GET['home'])) echo '</b>'?></a></li>
        <li id="tab02"><a href="news.php?news"><? if(isset($_GET['news']))echo '<b>'?>News<? if(isset($_GET['news']))echo '</b>'?></a></li>
        <li id="tab03"><a href="bilder.php?bilder"><? if(isset($_GET['bilder']))echo '<b>'?>Bilder<? if(isset($_GET['bilder']))echo '</b>'?></a></li>
<li id="tab04"><a href="member.php?member"><? if(isset($_GET['member']))echo '<b>'?>Member<? if(isset($_GET['member']))echo '</b>'?></a></li>        
        <li id="tab05"><a href="myphoto.php?photo"><? if(isset($_GET['photo']))echo '<b>'?>My Photo<? if(isset($_GET['photo']))echo '</b>'?></a></li>
    </ul>
</div>
und ich wollt sowas nicht tun...


//edit: danke an den mod unnützen JSkram aus diesem thread zu entfernen ;-)
 
Zuletzt bearbeitet:

fakerer

Aktives Mitglied

AW: php if funktion

du könntest die ja die Ganze navi auch in php erzeugen und dann als html ausgeben.
dann must du das ganze nicht mal in eine eigene datei auslagern
 

_tnt_

pixel!

AW: php if funktion

mittels require_once - ok das hab ich noch nie probiert. ich habs bis jetzt immer mit php include gemacht.

@AlexanderBo: danke für deinen code. wenn ich das so seh, dann brauch ich keine basename abfrage mehr oder?

statt den <b> könnt ich auch <strong> nehmen oder?

nur der link verschwindet ja trotzdem nicht:

wenn ich auf der index.xhtml bin dann:

von:

Code:
<li id="tab01"><a href="index.xhtml">Home</a></li>

zu:

Code:
<li id="tab01"><strong>Home</strong></li>


_tnt_
 

AlexanderBo

Gesperrt

AW: php if funktion

@_tnt_
require_once ist der beste weg ;-)

hab deine ver2felte mühe mit basename eh nicht verstanden -
lag wohl an deinem nicht optimal eingeschlagenem weg ;-)

strong
sollte man nie für ne navi nehmen.

gewöhne dir an alles als .php zu speichern -
der php-interpreter merkt schon sehr fix wenn nix für ihn zu tun ist
wenn kein <? blafasel ?> vorkommt und der server schickt dann die seite direkt raus.

hmmm... warum soll in einer navi ein link verschwinden¿
am fettgeschriebenen merkt der user ja wo er sich befindet.


//edit: das mit dem verschwinden hatte ich überlesen ;-)

wenns dir so besser gefällt ;-)

Code:
<div id="navi">
    <ul>
        <li id="tab01"><?if(isset($_GET['home']))echo'<b>Home</b>';else echo'<a href="index.php?home">Home</a>';?></li>
        <li id="tab02"><?if(isset($_GET['news']))echo'<b>News</b>';else echo'<a href="news.php?news">News</a>';?></li>
        <li id="tab03"><?if(isset($_GET['bilder']))echo'<b>Bilder</b>';else echo'<a href="bilder.php?bilder">Bilder</a>';?></li>
        <li id="tab04"><?if(isset($_GET['member']))echo'<b>Member</b>';else echo'<a href="member.php?member">Member</a>';?></li>
        <li id="tab05"><?if(isset($_GET['myphoto']))echo'<b>MyPhoto</b>';else echo'<a href="myphoto.php?myphoto">MyPhoto</a>';?></li>
    </ul>
</div>

du siehst php bringt spass :)
also lerne es richtig!
 
Zuletzt bearbeitet:

saila

Moderatorle

AW: php if funktion

Hi,

wenn hier von b und strong geschrieben wird und von php (vernünfgi), dann frage ich mich, warum nicht direkt auf css verwiesen wird was b und strong betrifft?
Beispiel: .active

Gleiches gilt für php - vernünftig. Vernüftig ist das beispiel nicht, weil nicht geprüft wird, ob der korrekte Parameter für die zutreffende Navigations-Menü-Punkt vorgenommen wird.

Womit wir zum Kern kommen können (abgesehen davon, dass man über Suchmaschinen reichtlich Infos zu dem Thema findet).

In der Eingangsmitteilung wird auf *.xhtml-Dateien verwwiesen. Hier ergibt sich die Frage, ob über mod-rewrite auf eine php-file gezeigt wird. Wenn nicht, kann das Menü nicht dynamisch erzeugt werden. Das wiederum würde bedeuten, dass du @_tnt_ in jeder *.xhtml-Datei das Menü schreiben musst. Und somit wären wir bei CSS. In jeder Datei setzt du einfach für den entsprechenden Menüpunkt, welcher auf die Datei zutrifft eine CSS-Klasse.

Beispiel:
Code:
<div id="">
    <ul>
        <li id="tab01"><a href="index.xhtml">Home</a></li>
        <li id="tab02" class="active">News</li>
        <li id="tab03"><a href="bildera.xhtml">Bilder</a></li>
        <li id="tab04"><a href="membera.xhtml">Member</a></li>
        <li id="tab05"><a href="myphotoa.xhtml">My Photo</a></li>
    </ul>
</div>
Die CSS-Klasse "active" hat folgende Merkmale:
Code:
#navi ul li.active {
 font-weight: bold;
}
und wie du siehst, wurde der Link entfernt. Dies setzt wiederum voraus, dass du in CSS das Style auch für nicht a-tags anlegen musst.

Anderst verhält sich das ganze, wenn deine Navigation dynamisch erstellt würde. Also bsw. aus einer Datenbank oder einer Datei generiert wird. Hier müsstest du prüfen, ob in der url der Dateiname mit dem in der Navigation übereinstimmt. Dann könntest du wiederum die CSS-Klasse active setzen.
 

AlexanderBo

Gesperrt

AW: php if funktion

@saila
die frage ging so wie ich es gelesen habe um php.
es gibt ja immer mehrere wege -
warum als mod also nicht früher geholfen¿
absichern von php is ne andre gschicht.
wenn in diesem fall ein falscher parameter (geändert) via php ankommen sollte
wird das die ganze navi wieder angezeigt - also kein prob.
abba mods regeln das ja schon...

s.c.r.
 

_tnt_

pixel!

AW: php if funktion

jungs ihr seit echt klasse.

damit ich da etwas klarheit reinbringe warum ich das so haben will.
1. ich will das menü auslagern. denn stell dir vor du hast mal 30 seiten und dann kommste drauf scheibenkleister ich bräucht noch nen menüpunkt.

2. ich brauch in meinem css zwei möglichkeiten, damit ich das navi formatieren kann. ich hab erstens die links und zweitens den strong tag.

zum testen is klar, dass ich das strong per hand in das eine html file schreib. aber siehe punkt 1.
den strong tag hab ich einfach missbraucht, damit ich ne möglichkeit zum formatieren hab. ich hab dann im css eh gesagt, dass der strong tag ganz normal angezeigt werden soll. der aktuelle menüpunkt bekommt einfach ne spezielle formatierung.

wo is der vorteil von require_onc? hab da was gelesen, dass der code nur einmal eingebunden wird.

aber wen ich jetzt sag:

require_once ( 'test.php' );
oder
include ( 'test.php' );

da ändert sich doch nichts oder?


jop das mit basename, da hab ich falsch gedacht. wollt das zu kompliziert machen :D

danke nochmal. ich hoffe jetzt is klar.


_tnt_
 

_tnt_

pixel!

AW: php if funktion

scheibe. habs jetzt probiert mit xampp und da funktioniert nichts.
schick dir mal meinen ordner.

_tnt_
 

saila

Moderatorle

AW: php if funktion

Naja, da gibt es schon einen wesentlichen unterschied.

include zieht die entsprechende Datei ein während require_once das nur vornimmt, wenn die Datei noch nicht eingebunden wurde.

Sprich includierst du 10 files und in jedem file wäre zu beginn: include('navi.php') wäre somit im Grunde die Datei 10 mal eingebunden, was somit schwachsinn ist.

Ergo - require_once();
Darüber hinaus erhälst du bei require oder require_once auch Fehlermeldungen, was bei include oder include_once unterdrückt wird.

Mehr lesen wäre auch mal angebracht!
 

netbandit

Aktives Mitglied

AW: php if funktion

Zeig doch mal bitte Dein Script zum Einbinden der Navi. Ist es überhaupt eine PHP-Datei?

Btw. Verstehe ich nicht so ganz warum der Link komplett verschwinden soll, das Ganze über CSS zu lösen wäre einiges einfacher (Wurde ja auch schon erwähnt)

Grüße ;)
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.449
Mitglieder
67.556
Neuestes Mitglied
Ggirl
Oben