Foros del Web » Programando para Internet » PHP »

paso de variables GET con slash

Estas en el tema de paso de variables GET con slash en el foro de PHP en Foros del Web. Hola soy nuevo en foro, y he estado buscando en google y no he encontrado como es que se hace: he visto en frameworks como ...
  #1 (permalink)  
Antiguo 24/07/2008, 11:45
 
Fecha de Ingreso: julio-2008
Ubicación: México
Mensajes: 61
Antigüedad: 15 años, 8 meses
Puntos: 0
paso de variables GET con slash

Hola soy nuevo en foro, y he estado buscando en google y no he encontrado como es que se hace:

he visto en frameworks como zend que el paso de variables por GET se hace de esta forma index.php/id/1 en lugar de index.php?id=1 y asi evitan las inyecciones sql, pero la verdad no me doy una idea de como hacer eso alguien sabe o me puede decir donde buscar de antemano gracias
  #2 (permalink)  
Antiguo 24/07/2008, 11:57
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 18 años, 10 meses
Puntos: 7
Respuesta: paso de variables GET con slash

Busca sobre direcciones amigables(url amigables) se hace con el .htaccess, con esto tienes para empezar, ante las dudas que te surjan pregunta mas.

Saludos.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #3 (permalink)  
Antiguo 05/08/2008, 19:59
 
Fecha de Ingreso: julio-2008
Ubicación: México
Mensajes: 61
Antigüedad: 15 años, 8 meses
Puntos: 0
Información Respuesta: paso de variables GET con slash

hola jugando un rato con las url amigables me hice una clase con los tutoriales que lei la dejo por si alguien la necesita
Código PHP:
<?php 
class url{
    function 
limpiar($valor) {
        return 
preg_replace('/[^a-zA-Z0-9-_]/'''$valor);
    }
    
    public static function 
get_url ($url){
        
$url preg_replace('/\/$/'''$url);

        
$partes explode('/'$url);
        
$cantPartes count($partes);

        if(
$cantPartes != 0)
            return 
false;
     
        
$variables = array();
        for(
$c 0$c $cantPartes$c $c 2){
            
$nombre self::limpiar($partes[$c]);
            
$valor self::limpiar($partes[$c 1]);
            
$variables[$nombre] = $valor;
        }
        return 
$variables;
    }
}
?>
me he creado mi archivo .htaccess
Código:
<ifmodule mod_rewrite.c>
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ panel.php?ruta=$1 [L,QSA]
</ifmodule>
pero ahora me encuentro con una duda un pequeño problema estoy haciendo mi panel de control para administrar mi web y ahora quiero leer la url no desde el index.php sino desde panel.php pero a la hora de incluirlo y usarlo no me tira nada
que podria estar haciendo mal?

lo incluyo de la siguiente forma:

Código PHP:
require("class.url.php");
$_GET url::get_url($_GET[ruta]);
echo  
$_GET
  #4 (permalink)  
Antiguo 05/08/2008, 20:26
 
Fecha de Ingreso: julio-2008
Ubicación: México
Mensajes: 61
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: paso de variables GET con slash

a sorry no habia entendido bien el concepto de mod_rewrite :P lo que hacia mal era que poniendo http://url/panel.php/id/1 no me tiraba nada pero solo tenia que poner http://url/id/1 y listo automaticamente el .htaccess se encarga de poner el archivo panel.php en lugar del index.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




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