Foros del Web » Programando para Internet » PHP »

como cambiar la url en la barra de direcciones?

Estas en el tema de como cambiar la url en la barra de direcciones? en el foro de PHP en Foros del Web. Hola, bueno supongamos que tengo esto: http://localhost/cosas.php?co=70 y quiero que salga esto: http://localhost/cosas.php como se hace? lo que quiero es que no se mire el ...
  #1 (permalink)  
Antiguo 31/07/2010, 16:33
Avatar de Vergara  
Fecha de Ingreso: junio-2010
Ubicación: San Francisco California
Mensajes: 249
Antigüedad: 13 años, 10 meses
Puntos: 6
como cambiar la url en la barra de direcciones?

Hola, bueno supongamos que tengo esto:

http://localhost/cosas.php?co=70

y quiero que salga esto:

http://localhost/cosas.php

como se hace? lo que quiero es que no se mire el ID , pues podrian ver lo que hay en ese ID solo cambiando el numero

http://localhost/cosas.php?co=71

entonces que se puede usar para que eso no pase???
  #2 (permalink)  
Antiguo 31/07/2010, 16:46
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 3 meses
Puntos: 46
Respuesta: como cambiar la url en la barra de direcciones?

Hola.

sigue estos posts, ahi tocan estos temas.

http://www.forosdelweb.com/f18/encriptar-url-332355/

Suerte.
  #3 (permalink)  
Antiguo 31/07/2010, 16:58
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: como cambiar la url en la barra de direcciones?

Holas,

En vez de enviar y usar variables GET porque no usas variables POST, donde no se vera en tu URL.

Saludos
Gildus
__________________
.: Gildus :.
  #4 (permalink)  
Antiguo 31/07/2010, 17:45
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 3 meses
Puntos: 46
Respuesta: como cambiar la url en la barra de direcciones?

Cita:
Iniciado por gildus Ver Mensaje
Holas,

En vez de enviar y usar variables GET porque no usas variables POST, donde no se vera en tu URL.

Saludos
Gildus
la desventaja de esto es que los links <a> </a> no pueden enviar datos via post, pero en el caso de tus formularios puede sur util.

  #5 (permalink)  
Antiguo 31/07/2010, 18:08
Avatar de Vergara  
Fecha de Ingreso: junio-2010
Ubicación: San Francisco California
Mensajes: 249
Antigüedad: 13 años, 10 meses
Puntos: 6
Respuesta: como cambiar la url en la barra de direcciones?

ntonces que seria lo mas recomendable? ya mire el post que dice lair pero no entendi muy bien....

tengo lo siguiente:

Código PHP:
<a href='archivo.php?sbbb=$qry[id]' target='_blank'
y en el archivo.php tengo esto:


Código PHP:
 <?php
ob_start
();
$id=$_GET['sbbb'];
include 
"config.php";
mysql_connect($server$db_user$db_pass) or die (mysql_error());
$result mysql_db_query($database"select * from archivos WHERE id = '$id'") or die (mysql_error());
while (
$qry mysql_fetch_array($result)) {
?>
  #6 (permalink)  
Antiguo 31/07/2010, 18:48
Avatar de el_gustavo  
Fecha de Ingreso: mayo-2009
Mensajes: 117
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: como cambiar la url en la barra de direcciones?

Eso se puede hacer con httacces, aunque me parece que de alguna forma tendrias que pasar el id.
Busca en google url amigables con httaccess, por ahora te puedo recomendar un link->http://www.desarrolloweb.com/manuale...amigables.html
  #7 (permalink)  
Antiguo 31/07/2010, 19:06
Avatar de Vergara  
Fecha de Ingreso: junio-2010
Ubicación: San Francisco California
Mensajes: 249
Antigüedad: 13 años, 10 meses
Puntos: 6
gracias por las respuestas, estaba mirando que ablaban sobre algo de usar un frame o algo asi... que me dicen acerca de eso????

se pueden usar frames para ocultar urls para que no se vean en la barra de direcciones??

por ejemplo: tengo esto:


<a href='profile.php?sb=$qry[id]' target='_blank'>

y me da esto

http://localhost/archivos.php?sb=40

pero como seria para que no me de el =id del archivo? no importa que me de cualquier otra cosas menos la informacion del archivo... es posible con un frame???

o podria hacerlo con base64????

Última edición por GatorV; 31/07/2010 a las 23:05
  #8 (permalink)  
Antiguo 31/07/2010, 23:43
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: como cambiar la url en la barra de direcciones?

Vía GET es imposible ocultar una variable, aun cuando utilices FRAME/IFRAME, viendo el código fuente se pueden ver las variables agregadas al URL, en tu caso lo mejor seria usar sesiones...

Otra es encriptar el valor de la variable, PERO, siempre la variable estará presente en el URL
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #9 (permalink)  
Antiguo 01/08/2010, 09:29
Avatar de RichBoy  
Fecha de Ingreso: agosto-2010
Mensajes: 177
Antigüedad: 13 años, 8 meses
Puntos: 7
Respuesta: como cambiar la url en la barra de direcciones?

Hola, ya e mirado bastantes temas que ablan hacerca de esto pero parace que la mayoria no consigue resultados o al menos eso es lo que se aprecia en las conversaciones pero yo te puedo decir que lo que muestro aqui enseguida funciona por que ya lo e tratado y bueno vamos al grano puedes hacer que en la barra de direcciones en ves de:

noticia.php?id=17

te salga esto:

noticia.php?id=9c2da4dd1eea27fadc10e98a26f8b80c

muchos dicen: y para que quieres hacer eso? no le veo sentido! y yo digo que existen varios motivos, los cuales paracen desconocer los que hacen este tipo de preguntas.

bueno sin mas a k dejo el enlace que ya lo an dejado en varios post pero bueno por si alguien no lo miro a k esta otra ves, ahi te explican bien como hacerlo...

http://my2bits.wordpress.com/2007/09/19/creando-un-hash-de-ida-y-vuelta-con-md5-en-php/

Hise algunas modificaciones por si alguien no le funciona puede tratar con este:

Esto supongamos seria en donde listas tus archivos por ejemplo noticias.php
Código PHP:
<?php
include "conexion.php"/* dentro de conexion.php es donde guardas la variable $key = "cu4n70_m4s_c0mpl3j0_m3j05"; para que sea mas facil llamarla*/
mysql_connect($server$db_user$db_pass) or die (mysql_error()); 
$result mysql_db_query($database"select * from archivos order by id desc LIMIT 0, 20") or die (mysql_error()); 


if (
mysql_num_rows($result)) {

  
   While(
$qry mysql_fetch_assoc$result ) ){

$cifra md5($key.$qry[id]);

echo  
"<a href='detalle.php?id=$cifra' target='_blank'>$qry[titulodelarchivo]</a>"


Y en la consulta que se encuentra dentro de detalle.php seria algo asi
Código PHP:
 <?php

$id
$_GET['id'];
include 
"conexion.php";

mysql_connect($server$db_user$db_pass) or die (mysql_error());
$result mysql_db_query($database"select * from archivos WHERE     MD5(concat('".$key."',id)) = '$id'") or die (mysql_error());
while (
$qry mysql_fetch_array($result)) {
?>
asi como dicen en el enlace solo que cambie una que otra cosa por que como ellos lo tenian no me funcionaba, espero les sirva...

Última edición por RichBoy; 01/08/2010 a las 09:48
  #10 (permalink)  
Antiguo 01/08/2010, 09:45
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como cambiar la url en la barra de direcciones?

bueno segun la experiencia como dicen los compañeros no se ocultan los parametros pasados por get pero yo e usado frames y no se muestran xq mientras trabajas dentro de ellos no cambias la pagina sino cambias el frame noc si me explico bien, bueno yo lo e echo en aplicaciones sencillas para trabajar localmente y no se cambian noc si cuando esten implementado en la web cambia, ah tambien se mostrarian los parametros si los vinculos los haces con target blank ya que te estarias saliendo del frame espero haber ayudado y si estoy ekivocdo en algo hagamnelo saber para aprender algo nuevo saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #11 (permalink)  
Antiguo 01/08/2010, 09:48
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: como cambiar la url en la barra de direcciones?

Por supuesto que las variables GET se puede leer/ver en un Frame/Iframe solo tienes que ver el código fuente o mas fácil aun, abrir el link en una pestaña/ventana abierta
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #12 (permalink)  
Antiguo 01/08/2010, 10:00
Avatar de RichBoy  
Fecha de Ingreso: agosto-2010
Mensajes: 177
Antigüedad: 13 años, 8 meses
Puntos: 7
Respuesta: como cambiar la url en la barra de direcciones?

asi es como dice Nemutagk se pueden ver en el codigo fuente abriendo una nueva ventana aunque se podria desabilitar en boton derecho del raton con javascript pero creo que con las teclas u otras cosas se podrian hacer eso, en fin ojala alguien con mas experiencia pase por aki y nos diga como ocultar o cifrar las urls del codigo fuente, eso estaria bueno....
  #13 (permalink)  
Antiguo 01/08/2010, 10:00
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como cambiar la url en la barra de direcciones?

disculpa compañero hice una prueba viendo el codigo fuente mandando una variable x get que indica un error y busque el codigo fuente y no me lo mostro podrias especificar como veo la variable get y disculpa tanta molestias es que el tema m intereso gracias ahi el codigo que tengo uego de eviar la variable get

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  4. <title>Sistema para la Carga de Notas de la modalidad Semestre</title>
  5. </head>
  6.  
  7. <frameset rows="156,*" cols="*" framespacing="0" frameborder="no" border="0">
  8.   <frame noresize="noresize" src="encabezado_secretaria.php" name="topFrame" scrolling="No"  
  9.     id="topFrame" title="topFrame" />
  10.   <frame src="cuerpo_secretaria.php" name="mainFrame" id="mainFrame" title="mainFrame" />
  11. </frameset>
  12. <noframes><body>
  13. </body>
  14. </noframes></html>
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #14 (permalink)  
Antiguo 01/08/2010, 10:08
Avatar de RichBoy  
Fecha de Ingreso: agosto-2010
Mensajes: 177
Antigüedad: 13 años, 8 meses
Puntos: 7
Respuesta: como cambiar la url en la barra de direcciones?

perdon no entendi muy bien, podrias especificar un poco? que es lo que quieres hacer? o que error te sale?
  #15 (permalink)  
Antiguo 01/08/2010, 10:13
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como cambiar la url en la barra de direcciones?

no me explique bien compañero esa pagina esta bien segun tenia entendido no se veian las variables GET cuando uno utilizaba frame pero ustedes me han dicho que si que viendo el codigo fuente yo cuando algo me crea una duda busco investigarla y de verdad no me da miedo ekivocarme xq mientras mas me e ekivocado mas e aprendido xq ya se que errores se me pueden presentar al ustedes decirme lo de las variables no me aguante e hice una prueba yo selecciono un dato y si ya existe me regresa a esa pagina con una variable GET dandome un error obvio con el frame en la pagina normalmente no se muestra pero kic ver lo que me decian ustedes y cuando fui al codigo fuente no la vi tampoco podrian indicarme como verla x favor es que unas de las cosas por las que empec a usar frame fue para que no e vieran las variables get y ahora ustedes medicen que si bueno imaginenc gracias por su antencion espero que me entiendan ahora si saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #16 (permalink)  
Antiguo 01/08/2010, 10:25
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: como cambiar la url en la barra de direcciones?

Lo que estas haciendo es ver el código fuente del contenedor (el que contiene el código del Frame), sin embargo, si ves el código fuente del frame (marco) veras tus variables incrustadas en el link (para ver el código dentro del marco varia de navegador a navegador), ahora, sin mas, da click en uno de tus links y da abrir en nueva ventana/pestaña, o si no simplemente presiona SHIFT cuando des click en un link y veras lo que sucede en tu barra de direcciones
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #17 (permalink)  
Antiguo 01/08/2010, 10:29
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como cambiar la url en la barra de direcciones?

bueno eso si lo sabia que si uno abre en otra pagina o necesita un target blank si se ven las variables pasadas por el metodo gracias x la explicacion
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #18 (permalink)  
Antiguo 01/08/2010, 10:37
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: como cambiar la url en la barra de direcciones?

Realmente si estas basando la seguridad de tu aplicación en un frame vas mal, ahora como te comente no solamente abriendo la página en una nueva ventana/pestaña, en chrome simplemente das boton derecho y le das "Ver fuente del marco" en Firefox boton derecho, "this frame->view frame source" (yo lo tengo en ingles, pero no hay pierde en español
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #19 (permalink)  
Antiguo 01/08/2010, 13:22
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: como cambiar la url en la barra de direcciones?

lo que podes hacer y para mi gusto no es recomendable es:
1- en tu enlace en vez de usar un id numerico es usar un titulo o texto descriptivo de lo que va a mostrar por ejemplo:
Código HTML:
Ver original
  1. <a href="index.php/noticia/todos-queremos-dinero">todos queremos dinero</a>

2- en una tabla de la base de datos guardas todos los links de tu pagina y que la tabla tenga los campos id,link.
3- cuando se hace click en un link lo que haces es buscar en la base de datos si existe ese titulo si existe que te devuelva el id y despues haces la consulta normal para buscar lo que tengas que buscar por su id.

Es una complicacion la solución pero creo que worpress lo maneja de una manera parecida para crear sus url amigables.
  #20 (permalink)  
Antiguo 01/08/2010, 14:07
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como cambiar la url en la barra de direcciones?

bueno no baso la seguridad en frame pero eso penc que me ayudaba y gracias a dios me aclararon ese punto, claro hay forma de encriptar datos segun estube leyendo con encode y decode pero nunk le abia parado mucho tenre que investigar un poco mas sobre eso gracias

bueno lei tambien que uno puede trabajar parametros con variables de sesiones para que no se vieran por url pero para eso hy q tener cuidado con el nombre q se le da y vaciarla si no se necsita el parametro, pero segun es mas seguro comparto esta informacion para q me den sus opiniones y si es valida pueda servir gracias por sus respuestas
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way

Última edición por carlos_belisario; 01/08/2010 a las 14:20 Razón: para no escribir otro mensaje
  #21 (permalink)  
Antiguo 01/08/2010, 14:48
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: como cambiar la url en la barra de direcciones?

Holas,

Si en la parte final de tu HTML usas un form con nombre y con las variables POST, cosa que cuando haces el click en la etiqueta <a> lo haces con OnClick y con una funcion en javascript lo envias en forma de POST y listo resuelto el problema.

Saludos
Gildus
__________________
.: Gildus :.
  #22 (permalink)  
Antiguo 01/08/2010, 14:57
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
De acuerdo Respuesta: como cambiar la url en la barra de direcciones?

ok la respuesta es muy valedera en el caso de los vinculos y esta muy buena por cierto pero algunas personas entre esas yo usamos esto header("location:pagina.php?parametro=parametro") para redireccionar y ahi tambien es necesario q no se vea la variable incluso para paginas que llamo control q envia parametro es bueno que no se vean estos como los cubriria en este caso?? gracias por la idea del form en el vincuo suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #23 (permalink)  
Antiguo 01/08/2010, 14:59
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: como cambiar la url en la barra de direcciones?

@gildus No por enviar una variable vía POST va a ser mas segura si tu atacante se empeña en hacerte daño y mas aun si es un usuario avanzado, esto solo es valido para usuarios básicos

@carlos_belisario Las sesiones es la forma mas segura de trabajar, ya que toda la información se guarda del lado del servidor, en el cliente solo se crea un Cookie con el identificador de la sesión, mas no las variables de la sesión

Nota adicional: @gildus No puedes depender de javascript para algo tan básico como los links, si el usuario tiene desactivado Javascript se jodio todo, aparte, lo que se intenta o al menos lo que se da a entender en todo el hilo de la conversación es que el usuario final no tenga acceso para leer/modificar el valor de la variable, en la forma que tu la planteas es igual a hacer un pagina.php?variable=valor, ya que al final se puede modificar el contenido de los input de una u otra forma
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Última edición por Nemutagk; 01/08/2010 a las 15:05
  #24 (permalink)  
Antiguo 01/08/2010, 15:07
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: como cambiar la url en la barra de direcciones?

Exacto, si concideramos a usuarios avanzados no serviria de nada usar solo POST o GET o incluso cookies.

creo que lo dijo @carlos_belisario es bueno, alli solo le aumentariamos el encriptado de la cokkie o session y asi si se podria enviar los datos. Incluso lo que menciona @RichBoy podria ser utilizado, incluso aparte de encriptar el valor de la variable tambien se podria encriptar el nombre de la variable.

Saludos
Gildus
__________________
.: Gildus :.
  #25 (permalink)  
Antiguo 01/08/2010, 15:10
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: como cambiar la url en la barra de direcciones?

Para manejar variables sensibles (algo que sea necesario tener el control de su valor al 100%) por ejemplo en validaciones no hay cosa mas segura que utilizar sesiones, te evitas tener que estar encriptando su valor ya que el usuario final no tendrá acceso a dichas variables y estas a su vez se destruirán cuando se expire su tiempo de vida o sean destruidas
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #26 (permalink)  
Antiguo 01/08/2010, 15:12
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como cambiar la url en la barra de direcciones?

bueno les voy a ser sincero en esto de la seguridad me e ido metiendo poco a poco de echo cuando lei lo de las sesiones me puse a implementarlo lo que si es que es un poco mas trabajoso pero es mejor tener un codigo bien trabajado y seguro que no hacerlo por flojera o algo por el estilo, y ahorita bañandome tambien pense lo de que si el usuario desactiva el javascript del navegador echaria a perder nuestro vinculo gracias por sus aclaratorias a pesar de que no fui kien creo la pregunta el tema me parecio interesante y creo q con todas mis preguntas y sus respuestas podemos aclararle la duda a otras personas que la tngan gracias
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #27 (permalink)  
Antiguo 01/08/2010, 15:21
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: como cambiar la url en la barra de direcciones?

Tambien podrias ayudarte en ver tu seguridad con el plugin de Firefox webdevelpers y el Firebug, con eso te ayuda un monton para hacer mas seguro tus aplicaciones web.

Saludos
Gildus
__________________
.: Gildus :.

Etiquetas: barra, direcciones, url
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 10:38.