fungerar inte med ./ för index

PHP

6 svar · 439 visningar · startad av tanten

Medlem sedan nov. 20051 596 inlägg
Trådstart#1
$current = basename($_SERVER['PHP_SELF']);
$links = array (
  './' => 'hem',

Jag har en liten bild som ska visas i menyn för vilken länk man är på men det fungerar inte om jag har det som ovan. Måste jag ha index.php, det fungerar då, eller finns det något annat sätt?

Medlem sedan feb. 2007278 inlägg
#2

Vad blir ditt resultat? Det beror ju på var i din hierarki du befinner dig. ./ är ju den katalog som du just nu står i. Är det den du vill ha?

Medlem sedan nov. 20051 596 inlägg
#3

Resultatet är att jag kommer till rätt sida, så det är inte fel på det, men visar inte bilden i menyn.
Borde kanske visa resten av koden

foreach ($links as $link => $text) {
   $id = $link == $current ? ' id="current"' : '';
   echo "<li><a$id href=\"$link\">$text</a></li>\n"; 
och i css
#menu #current{
color:#fff;
background:url(../bilder/star.gif) #800080 no-repeat left;}

Bilden visas på de andra länkarna när man tryckt på dem, så det är bara index-länken som bilden inte visas på.

Medlem sedan feb. 2007278 inlägg
#4

$current är ju namnet på filen enligt $_SERVER['PHP_SELF'].

Den kan aldrig bli ./

Lägg till så det blir:

 $current = basename($_SERVER['PHP_SELF']); 
if ( strpos($current,'index') !== false ) {
    $current = './';
}
Medlem sedan nov. 20051 596 inlägg
#5

Tack så jättemycket, fungerar bra nu...

Medlem sedan feb. 2007278 inlägg
#6

tanten skrev:

Tack så jättemycket, fungerar bra nu...

Markera gärna mitt inlägg som rätt svar på frågan!

Medlem sedan nov. 20051 596 inlägg
#7

Ledsen... tror det är första gången jag missat att markera en tråd som löst... men det är ingen ursäkt förstås :r

249 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)