Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Menu auto-select Problema

Estas en el tema de Menu auto-select Problema en el foro de PHP en Foros del Web. Hola a todos! Bueno soy nuevo en el foro y muchas gracias por toda la ayuda que se me ofrezca. Emepecemos: Estoy intentando hacer una ...
  #1 (permalink)  
Antiguo 22/07/2015, 16:42
 
Fecha de Ingreso: julio-2015
Ubicación: España
Mensajes: 4
Antigüedad: 9 años, 4 meses
Puntos: 0
Pregunta Menu auto-select Problema

Hola a todos! Bueno soy nuevo en el foro y muchas gracias por toda la ayuda que se me ofrezca. Emepecemos:
Estoy intentando hacer una página web y quiero que en el menú se seleccione solo la página en la que estoy y para eso tengo este código:

Código PHP:
<?php
$archivo_actual 
basename($_SERVER['PHP_SELF']);

    
$vlineas file("content/auto-select/elementos.lua");
    
$Element_1 $vlineas[1];

echo 
$Element_1;
switch(
$archivo_actual)
 {
     case 
$Element_1:
     
$a ' active';
     break;
     case 
"servicios.php":
     
$b ' active';
     break;
      case 
"galeria.php":
     
$c ' active';
     break; 
 }
 
?>
Esto funciona bien excepto por el "case $Element_1" que sería home.html que me lo coge del fichero elementos.lua como ya se ve. Si yo en vez de "case $Element_1" pongo directamente "home.html" si que me selecciona en el menú donde estoy pero si intento cargarlo a través de un fichero no me deja. También si defino $Element_1" como "home.html" si me lo coge, pero a través de un fichero no. No sé si será por el espaciado de línea o algo...
Muchas gracias!
  #2 (permalink)  
Antiguo 22/07/2015, 17:42
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Menu auto-select Problema

Necesitas eliminar el salto de línea dejado por la función file; consulta el manual: http://php.net/manual/es/function.file.php
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 23/07/2015, 02:43
 
Fecha de Ingreso: julio-2015
Ubicación: España
Mensajes: 4
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: Menu auto-select Problema

Cita:
Iniciado por Triby Ver Mensaje
Necesitas eliminar el salto de línea dejado por la función file; consulta el manual: [url]http://php.net/manual/es/function.file.php[/url]
Podrías hacer el ejemplo con el código php que yo pusé? Es que soy algo novato y no acabo de entender el manual ese... Muchas gracias!
  #4 (permalink)  
Antiguo 23/07/2015, 03:45
 
Fecha de Ingreso: julio-2015
Ubicación: España
Mensajes: 4
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: Menu auto-select Problema

Cita:
Iniciado por kigrislord Ver Mensaje
Podrías hacer el ejemplo con el código php que yo pusé? Es que soy algo novato y no acabo de entender el manual ese... Muchas gracias!
Ya lo arreglé. Eliminé el salto de línea mediante este código:

Código PHP:
$Element_1 rtrim($element_1,"\r\n"); 
La función "rtrim" elimina cosas empezando por el final. El primer atributo es el texto a recortar y el segundo es lo que quieres recortar de él, en mi caso pusé el espaciado que sería "\r\n". Al final queda así:

Código PHP:
<?php
$archivo_actual 
basename($_SERVER['PHP_SELF']);

    
$vlineas file("content/auto-select/elementos.lua");
    
$element_1 $vlineas[1];

    
$Element_1 rtrim($element_1,"\r\n");

switch(
$archivo_actual)
 {
     case 
$Element_1:
     
$a ' active';
     break;
     case 
"servicios.php":
     
$b ' active';
     break;
      case 
"galeria.php":
     
$c ' active';
     break; 
 }
 
?>
  #5 (permalink)  
Antiguo 23/07/2015, 17:40
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Menu auto-select Problema

No es tan difícil leer el manual y sus ejemplos:

Código PHP:
Ver original
  1. $lineas = file('archivo.txt', FILE_IGNORE_NEW_LINES);
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: Ninguno
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




La zona horaria es GMT -6. Ahora son las 21:22.