Foros del Web » Programando para Internet » PHP »

Borrar formulario desde una parte

Estas en el tema de Borrar formulario desde una parte en el foro de PHP en Foros del Web. Buenas. Quería hacer lo siguiente: Cuando alguien inserta en un formulario "Http://dominio.com/n.php?n=123456789" que todo lo que sea introducido tras el ? no se guarde en ...
  #1 (permalink)  
Antiguo 15/06/2008, 11:15
 
Fecha de Ingreso: mayo-2008
Mensajes: 30
Antigüedad: 15 años, 11 meses
Puntos: 0
Borrar formulario desde una parte

Buenas. Quería hacer lo siguiente: Cuando alguien inserta en un formulario "Http://dominio.com/n.php?n=123456789" que todo lo que sea introducido tras el ? no se guarde en la BD, quedando "Http://dominio.com/n.php". ¿Alguien me lo podría explicar? Thanks.

Nota: el valor de la variable varía, así que no se puede hacer un str_replace.
  #2 (permalink)  
Antiguo 15/06/2008, 11:24
 
Fecha de Ingreso: noviembre-2006
Mensajes: 75
Antigüedad: 17 años, 5 meses
Puntos: 2
Respuesta: Borrar formulario desde una parte

http://www.forosdelweb.com/f18/leer-...aracte-596746/
  #3 (permalink)  
Antiguo 15/06/2008, 11:51
 
Fecha de Ingreso: mayo-2008
Mensajes: 30
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Borrar formulario desde una parte

Vale, muchas gracias. Tengo otra duda relacionada, en el caso de haber dos variables ...

Http://dominio.com/n.php?n=12345&s=6789

¿Cómo podría conseguir lo que está escrito en negrita? es decir, entre n= y &s

dominio.com también varía, así que tampoco se puede hacer un str_replace.
  #4 (permalink)  
Antiguo 15/06/2008, 12:32
Avatar de almarin  
Fecha de Ingreso: junio-2008
Mensajes: 44
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Borrar formulario desde una parte

Hola iHabieru:

Para solucionar tu problema, deberías hacer uso de las expresiones regulares, que tienen mucha potencia.

Te pongo un ejemplo de cómo lo solucionaría yo, ante el ejemplo que has comentado:

Http://dominio.com/n.php?n=12345&s=6789

Si quisiéra acceder al valor de n, SIEMPRE que n sea el primer elemento, podría hacer esto:

Código PHP:

$str
="Http://dominio.com/n.php?n=12345&s=6789";
preg_match("/([a-z]+)=(\d+)/",$str,$coincidencias);

print_r($coincidencias
Con eso tendríamos de salida:

Código:
Array
(
    [0] => n=12345
    [1] => n
    [2] => 12345
)
Es decir, accediendo a $coincidencias[2] tendrías el resultado.

Date cuenta que esta expresión regular, aunque simple, se puede utilizar para obtener los diferentes valores de todas las variables GET de la url, utilizando preg_match_all:
Código PHP:

$str
="Http://dominio.com/n.php?n=12345&s=6789";
preg_match_all("/([a-z]+)=(\d+)/",$str,$coincidencias);

print_r($coincidencias
Con eso tendríamos de salida:

Código:
Array
(
    [0] => Array
        (
            [0] => n=12345
            [1] => s=6789
        )

    [1] => Array
        (
            [0] => n
            [1] => s
        )

    [2] => Array
        (
            [0] => 12345
            [1] => 6789
        )

)
es decir, con $coincidencias[1][0..n-1] tendríamos los nombres de las n variables, y en $coincidencias[2][0..n-1] tendríamos sus respectivos valores.

Espero que esto te haya ayudado.
Saludos.
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 00:14.