Foros del Web » Programando para Internet » PHP »

Ejecutar un script php sólo desde un formulario

Estas en el tema de Ejecutar un script php sólo desde un formulario en el foro de PHP en Foros del Web. Tengo un script php que recoge los datos de un formulario y permite el acceso a algunas secciones de la web. Me gustaría que ese ...
  #1 (permalink)  
Antiguo 20/09/2005, 11:00
 
Fecha de Ingreso: diciembre-2004
Mensajes: 149
Antigüedad: 13 años
Puntos: 0
Ejecutar un script php sólo desde un formulario

Tengo un script php que recoge los datos de un formulario y permite el acceso a algunas secciones de la web.

Me gustaría que ese script solo pudiera ser ejecutado cuando es llamado desde la opción submit del formulario, y no directamente escribiendo la dirección en la barra de direcciones o desde el historial. ¿Es posible hacerlo?
  #2 (permalink)  
Antiguo 20/09/2005, 11:05
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 12 años, 8 meses
Puntos: 17
Es posible... sin embargo el método q conozco es poco confiable según la documentación. Te dejo el link y lo que dice


http://ar.php.net/reserved.variables

Variables de servidor: $_SERVER

'HTTP_REFERER'

La dirección de la página (si la hay) la cual refirió al agente de usuario a la página actual. Este valor es definido por el agente de usuario. No todos los agentes de usuario lo definen, y algunos proveen la capacidad de modificar HTTP_REFERER como una característica del software. En resumen, no se puede confiar realmente en este valor.
  #3 (permalink)  
Antiguo 20/09/2005, 14:23
 
Fecha de Ingreso: octubre-2003
Ubicación: Veracruz, México
Mensajes: 169
Antigüedad: 14 años, 1 mes
Puntos: 0
Hola que tal!

A mi se me ocurre algo como validar que viene algo de un formulario ya sea por GET o POST y sino salir del script o redireccionar al script de atrás o a otra página. Algo asi:

<?php
if (!((empty($_POST)) && (empty($_GET)))){
echo "Vengo de un formulario";
}
else{
exit ("Soy un intruso");
}
echo "Hola bienvenidos al sitio de PHP"
?>

La bronca aquí seria ke si alguien te pasa algo por GET se brincaria la condicional, asi que lo mejor seria que solo validara si viene algo por el método POST
Otra que puedes hacer es que en vez de usar echos, redirecciones a otras páginas, aunque cuando si trabajaras desde la línea de comando no podria redireccionar, tendrias que cortar la ejecucion.

Espero te ayude
  #4 (permalink)  
Antiguo 22/09/2005, 11:10
 
Fecha de Ingreso: diciembre-2004
Mensajes: 149
Antigüedad: 13 años
Puntos: 0
Gracias Ray, Ha funcionado estupendamente.
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 05:53.