Foros del Web » Creando para Internet » CSS »

Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

Estas en el tema de Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF']; en el foro de CSS en Foros del Web. Estoy intentando hacer funcionar un menú con php y css utilizando la variable $checkit = $_SERVER['PHP_SELF']; Este es el código: Código: <? $checkit = $_SERVER['PHP_SELF']; ...
  #1 (permalink)  
Antiguo 31/03/2011, 15:05
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 16 años
Puntos: 0
Pregunta Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

Estoy intentando hacer funcionar un menú con php y css utilizando la variable $checkit = $_SERVER['PHP_SELF'];

Este es el código:

Código:
<? 
$checkit = $_SERVER['PHP_SELF']; 
echo '<li><a class="first" href="index.php"'; 
if(strstr($checkit,"index.php")) echo ' class="current active"'; 
echo '>Inicio</a></li>';
echo '<li><a href="servicios.php"'; 
if(strstr($checkit,"servicios.php")) echo ' class="current active"'; 
echo '>Servicios</a></li>';
echo '<li><a href="productos.php"'; 
if(strstr($checkit,"productos.php")) echo ' class="current active"'; 
echo '>Productos</a></li>';
echo '<li><a href="soluciones.php"'; 
if(strstr($checkit,"soluciones.php")) echo ' class="current active"'; 
echo '>Soluciones</a></li>'; 
echo '<li><a href="partners.php"'; 
if(strstr($checkit,"partnerts.php")) echo ' class="current active"'; 
echo '>Partners</a></li>';

?>
Lo llamo en cada página desde un php include.

No se por qué razón no me funciona. He revisado una y otra vez el código y veo que está bien.

Lo que no recuerdo es si tengo que colocar algo en las páginas para activarlo...

Lo tenía funcionando en un sitio anteriormente pero lo único que pude rescatar fue esta parte del script.

Gracias de antemano por su ayuda. Siento que el cerebro se me parte en dos...
  #2 (permalink)  
Antiguo 31/03/2011, 15:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

prueba imprimir $checkit para conocer el valor real de dicha variable, sería bueno saberlo...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 31/03/2011, 15:08
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 16 años
Puntos: 0
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

me da /directorio/archivo.php
  #4 (permalink)  
Antiguo 31/03/2011, 15:17
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

bien, eso es bueno...

ahora... ¿cual es el HTML que se produce en el navegador?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 31/03/2011, 15:37
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 16 años
Puntos: 0
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

Hmm.... está devolviendo esto:

Código:
<li><a class="first" href="index.php" class="current active">Inicio</a></li>
pero necesito que el "class="current active" lo asigne a
Código:
<li>
Esta es la parte del CSS:

Código:
#header ul.menu ul {display:none; top:50px; position:absolute; background:#fff; padding:14px 0}
#header ul.menu li a {display:block ; font-size:16px; color:#000; font-family:Arial, Helvetica, sans-serif; font-weight:bold; padding:14px 0 20px  ; width:165px; text-align:center; text-decoration:none }
#header ul.menu li a:hover {color:#fff; background:url(../images/hover_bg.gif) repeat-x  0 0;  }
#header ul.menu li.current >  a {color:#fff; background:url(../images/hover_bg.gif) repeat-x  0 0;  }
#header .menu > li.active > a {color:#fff !important; background:url(../images/hover_bg.gif) repeat-x  0 0;  }
  #6 (permalink)  
Antiguo 31/03/2011, 15:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

es que entonces estas imprimiendo mal el HTML correspondiente, ¿ya te diste cuenta?

aunque también podrías modificar los CSS...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 31/03/2011, 15:43
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 16 años
Puntos: 0
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

Sip, ya me di cuenta, pero ¿como declaro el class para el <li>?

Estoy desde las 8 am con esto y ya no me da el cerebro
  #8 (permalink)  
Antiguo 31/03/2011, 15:47
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

yo cambiaría el CSS, sería lo mejor, y mas breve...
Cita:
li > a.current
li > a.active
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 31/03/2011, 15:52
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 16 años
Puntos: 0
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

Hola, lo he cambiado a esto:

Código:
#header ul.menu li a {display:block ; font-size:16px; color:#000; font-family:Arial, Helvetica, sans-serif; font-weight:bold; padding:14px 0 20px  ; width:165px; text-align:center; text-decoration:none }
#header ul.menu li a:hover {color:#fff; background:url(../images/hover_bg.gif) repeat-x  0 0;  }
#header ul.menu li > a.current >  a {color:#fff; background:url(../images/hover_bg.gif) repeat-x  0 0;  }
#header .menu > li > a.active > a {color:#fff !important; background:url(../images/hover_bg.gif) repeat-x  0 0;  }
#header .menu > li > ul li.current a:hover { color:#ee9d01 !important; background:url(../images/hover_bg.gif) repeat-x  0 0 !important;  }
#header ul.menu li.current  a.first, #header ul.menu li.active  a.first {color:#fff; background:url(../images/first_bg.gif) no-repeat  0 0 !important;  }
#header ul.menu li.current  a.last, #header ul.menu li.active  a.last {color:#fff; background:url(../images/last_bg.gif) no-repeat  100% 0 !important; }
Pero no funciona....
  #10 (permalink)  
Antiguo 31/03/2011, 15:56
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

es obvio que no va a servir así como lo pones, ¿sabes algo de CSS?

Cita:
a.current > a
ya que estas reglas están mal, pues jamás habrá un <a/> dentro de otro <a/>

no es mi estilo, pero ya ni modo...
Cita:
#header ul.menu ul {display:none; top:50px; position:absolute; background:#fff; padding:14px 0}
#header ul.menu li a {display:block ; font-size:16px; color:#000; font-family:Arial, Helvetica, sans-serif; font-weight:bold; padding:14px 0 20px ; width:165px; text-align:center; text-decoration:none }
#header ul.menu li a:hover {color:#fff; background:url(../images/hover_bg.gif) repeat-x 0 0; }
#header ul.menu li > a.current {color:#fff; background:url(../images/hover_bg.gif) repeat-x 0 0; }
#header .menu > li > a.active {color:#fff !important; background:url(../images/hover_bg.gif) repeat-x 0 0; }
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 31/03/2011, 16:00
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 16 años
Puntos: 0
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

Si, pero ya fundí cerebro.

Te agradezco la ayuda, voy a despejarme un poco para volver a revisarlo y aplicar lo que sugieres.

Gracias!!!
  #12 (permalink)  
Antiguo 31/03/2011, 18:23
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Tema movido desde PHP a CSS
  #13 (permalink)  
Antiguo 31/03/2011, 18:41
Avatar de fmurga  
Fecha de Ingreso: abril-2008
Mensajes: 53
Antigüedad: 16 años
Puntos: 0
Respuesta: Menú PHP con CSS utilizando $checkit = $_SERVER['PHP_SELF'];

pateketrueke,

Gracias por tu ayuda. Ya estaba aturdido y no encontraba el error. Te comento que ya logré que me funcionara completo el menú.

Tenía un error en el código php y tenía que corregir otro par de líneas en el CSS.

Gracias por compartir tus conocimientos.

Etiquetas: php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 04:28.