Foros del Web » Programando para Internet » PHP »

Php_self

Estas en el tema de Php_self en el foro de PHP en Foros del Web. Hola a todos tengo un problema con este PHP_SELF, desde un menu envio una url del tipo : www.midominio.com/Empleado.php?variable=Consulta www.midominio.com/Empleado.php?variable=elimina de esta forma me carga ...
  #1 (permalink)  
Antiguo 26/11/2011, 12:01
 
Fecha de Ingreso: abril-2010
Mensajes: 56
Antigüedad: 14 años
Puntos: 0
Php_self

Hola a todos

tengo un problema con este PHP_SELF,

desde un menu envio una url del tipo :
www.midominio.com/Empleado.php?variable=Consulta
www.midominio.com/Empleado.php?variable=elimina

de esta forma me carga ya sea un php para crear o eliminar o la accion que sea

dentro de cada uno de estos por ejemplo CrearEmpleado.php uso el PHP_SELF para recargar de nuevo esa pagina el problema es que ese PHP_SELF es solo:
www.midominio.com/Empleado.php
sin la variable que le envio en la url con la accion a ejecutar

para q me funcionara lo q hice fue que en el action del form q tengo y el cual hace el PHP_SELF le pego la accion algo como PHP_SELF ."?variable=xxxx"

pero me gustaria sbaer si hay otra forma para que no quede asi quemado

muchas gracias
  #2 (permalink)  
Antiguo 26/11/2011, 12:18
 
Fecha de Ingreso: octubre-2010
Mensajes: 123
Antigüedad: 13 años, 6 meses
Puntos: 10
Respuesta: Php_self

Bueno, yo tengo una solución propia para eso. es un poco complicada pero utilizo

ModRewrite. aunque también podrías utilizar "AJAX", pero eso ya es otra cosa, te enseñare con MOD REWRITE.

Sesupone que en un form no puedes poner un archivo tipo:
"index.php?action=send"
ya que no te respeta el action=send

La forma mas sencilla es disfrazando esa URL para que el explorador la envie de manera correcta ejemplo:

/index.php?action=send
MOD REWRITE
/send
y en ves de utilizar todo eso se cambia a:
<form action="send">

bien la forma de utilizarlo es muy sencilla, crea un archivo .htaccess en el raiz de tu web. y agregarle esto al principio:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d

y una regla por cada REWRITE que quieras poner. ejemplo:

RewriteRule ^login$ index.php?action=login&%{QUERY_STRING} [L]

Explico: la palabra login ahí es la que sera después reescrita. y después del $ es la url antigua.

después le agrego un &%{QUERY_STRING} para que admita mas variables después de login. y finalmente [L] fin de la regla entonces aquí seria algo así

index.php?action=login sera remplazada y sera ahora, login.

Espero entiendas. es una forma sencilla te daré un Ejemplo más


RewriteRule ^empleado-consulta$ Empleado.php?variable=Consulta&%{QUERY_STRING} [L]
ahora en tu caso seria poner.

action="empleado-consulta" en ves de poner "Empleado.php?variable=Consulta"

Etiquetas: variables
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:13.