Foros del Web » Programando para Internet » PHP »

modificar DIV o IFRAME desde PHP

Estas en el tema de modificar DIV o IFRAME desde PHP en el foro de PHP en Foros del Web. hola amigos, espero puedan ayudarme con mi siguiente problema. Código: <?php if(isset($_GET["link"]))$ENLACE=$_GET["link"]; else $ENLACE="1"; $CARGAR="http://localhost/pruebas/1.php"; if($ENLACE=="1"){ $CARGAR="http://localhost/pruebas/1.php"; }else if($ENLACE=="2"){ $CARGAR="http://localhost/pruebas/2.php"; }else if($ENLACE=="3"){ $CARGAR="http://localhost/pruebas/3.php"; } ?> ...
  #1 (permalink)  
Antiguo 10/03/2010, 17:00
 
Fecha de Ingreso: marzo-2010
Mensajes: 18
Antigüedad: 14 años, 1 mes
Puntos: 0
modificar DIV o IFRAME desde PHP

hola amigos, espero puedan ayudarme con mi siguiente problema.
Código:
<?php
if(isset($_GET["link"]))$ENLACE=$_GET["link"];
else $ENLACE="1";
$CARGAR="http://localhost/pruebas/1.php";
if($ENLACE=="1"){
$CARGAR="http://localhost/pruebas/1.php";
}else if($ENLACE=="2"){
$CARGAR="http://localhost/pruebas/2.php";
}else if($ENLACE=="3"){
$CARGAR="http://localhost/pruebas/3.php";
}
?>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>
<table>
<tr>
<td><a href="http://localhost/pruebas/index.php?link=1&">uno</td>
</tr>
<tr>
<td><a href="http://localhost/pruebas/index.php?link=2&">dos</td>
</tr>
<tr>
<td><a href="http://localhost/pruebas/index.php?link=3&">tres</td>
</tr>
<tr>
<th width="750" height="700" valign="top" scope="col"><iframe name="frame" frameborder="1" width=100% height=100% frameborder=0 scrolling="no" marginwidth="0" marginheight="0" src="<?php echo $CARGAR ?>" >please use a browser that supports frames</iframe></th>
</tr>
</table>
<body>
</body>
</html>
tengo esa pagina como index.php, la cual tiene tres enlaces que cargan sus respectivas paginas en un iframe, este iframe obviamente cambia conforme el usuario cambie de enlace, la manera en que lo hago es para incrementar la sgeuridad de mi pagina y hacer que los usuarios no conozcan la estructura de mi sitio, el problema es que en el iframe, debo poner un src="<?php echo $CARGAR ?>" , de tal manera, si el usuario revisa el codigo fuente de la pagina pues ve la ruta de la pagina que este cargada en el iframe en ese momento, lo que quiero hacer es que desde la parte de php, es decir la que el usuario no puede ver por ser codigo side server, se pueda modificar el contenido de ese iframe, tmbn sirve hacerlo con un div no importa.

se hacerlo desde javascript con el document.getEelementByid..... pero en php hay una funcion similar???, lo haria con javascript, pero si el usuario descarga el contenido de esa pagina, tambien descarga la script y por lo tanto tambien puede ver las rutas de esta manera, estuve leyendo y desde php se pueden ejecutar instrucciones javascript que para mi caso quedaria algo asi como:
'<script language="javascript">document.getElementById("fra me").innerHTML = $CARGARMARCOPRINCIPAL</script>'

pero lo probe asi y no me funciono, que estoy haciendo mal??
al usar esas instrucciones desde la parte hecha en php el usuario puede verlas??

es que yo se hacerlo con xajax, pero quiero saber si uds conocen una solución mas simple a ponerme a meter código y funciones xajax, Gracias por su ayuda :D.
  #2 (permalink)  
Antiguo 10/03/2010, 17:11
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: modificar DIV o IFRAME desde PHP

Es extraño que pretendas que PHP haga algo similiar a JavaScript, tú bien deberías saber que ambos corren en ámbitos distintos, por lo tanto no hay manera que PHP pueda hacer lo que necesitas. En realidad no hay solución a tus requerimientos y que a mi criterio tus requerimientos no están correctamente canalizados. Mira facebook, coloca su ruta normal, no usa nada para esconderla, quién la hackea? igual gmail y muchos más, porque esconder no es la solución, la solución es evitar.

Y este evitar se logra validando los valores que se reciben como parámetros. Por ejemplo, si yo tengo un sistema donde por $_GET obtengo un valor con el cual hago una consulta a la base de datos, yo puedo creer que mediante el valor de este parámero me podrías hacer un SQL inyection y de hecho que si lo pueden hacer.

Entonces obtengo el valor y lo valido. Ese valor por ejemplo solo puede ser un número o nunca puede tener espacios en blancos y menos comillas simples. Entonces si tiene alguno de esas condiciones indeseables simplemente no hace nada. De esta manera solo los valores que el mismo sistema asigna a esos parámetros pueden ser usados evitando el SQL Inyection.

Mi consejo sería, no uses frames ni iframes y como medida de seguridad toma en cuenta lo que te acabo de decir, hay muchas medidas de seguridad más, pero ocultar la ruta no es de las mejores, simpre se puede conseguir la ruta, no te haz dado cuenta que si usas Internet explorer y le das click con el botón derecho y luego "propiedades" puedes ver la ruta completa? Podrías decirme que se puede deasctivar el botón derecho con JavaScript y yo te puedo decir que también se puede desactivar JavaScript. Te das cuenta? no vayas por ese lado, hay muchas formas más efectivas de hacerlo, a parte de que lo que quieres hacer específicamente no se puede conseguir ni con JavaScript, porque el cliente podría conocer algo de JavaScript y verificar la dirección mediante código, tampoco se puede con PHP que trabaja solo en el servidor y no en el cliente.

Toma en cuenta mis consejos, suerte!
  #3 (permalink)  
Antiguo 10/03/2010, 17:29
 
Fecha de Ingreso: marzo-2010
Mensajes: 18
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: modificar DIV o IFRAME desde PHP

Cita:
Iniciado por ElJavista Ver Mensaje
Es extraño que pretendas que PHP haga algo similiar a JavaScript, tú bien deberías saber que ambos corren en ámbitos distintos, por lo tanto no hay manera que PHP pueda hacer lo que necesitas. En realidad no hay solución a tus requerimientos y que a mi criterio tus requerimientos no están correctamente canalizados. Mira facebook, coloca su ruta normal, no usa nada para esconderla, quién la hackea? igual gmail y muchos más, porque esconder no es la solución, la solución es evitar.

Y este evitar se logra validando los valores que se reciben como parámetros. Por ejemplo, si yo tengo un sistema donde por $_GET obtengo un valor con el cual hago una consulta a la base de datos, yo puedo creer que mediante el valor de este parámero me podrías hacer un SQL inyection y de hecho que si lo pueden hacer.

Entonces obtengo el valor y lo valido. Ese valor por ejemplo solo puede ser un número o nunca puede tener espacios en blancos y menos comillas simples. Entonces si tiene alguno de esas condiciones indeseables simplemente no hace nada. De esta manera solo los valores que el mismo sistema asigna a esos parámetros pueden ser usados evitando el SQL Inyection.

Mi consejo sería, no uses frames ni iframes y como medida de seguridad toma en cuenta lo que te acabo de decir, hay muchas medidas de seguridad más, pero ocultar la ruta no es de las mejores, simpre se puede conseguir la ruta, no te haz dado cuenta que si usas Internet explorer y le das click con el botón derecho y luego "propiedades" puedes ver la ruta completa? Podrías decirme que se puede deasctivar el botón derecho con JavaScript y yo te puedo decir que también se puede desactivar JavaScript. Te das cuenta? no vayas por ese lado, hay muchas formas más efectivas de hacerlo, a parte de que lo que quieres hacer específicamente no se puede conseguir ni con JavaScript, porque el cliente podría conocer algo de JavaScript y verificar la dirección mediante código, tampoco se puede con PHP que trabaja solo en el servidor y no en el cliente.

Toma en cuenta mis consejos, suerte!
jejej gracias por tus consejos, lo que pasa es que como en xajax logré modificar contenidos de los div desde PHP, pero solamente los textos mas no los src (me imagino se puede namas tengo pereza intentar), y pos por lo de seguridad si lo aplico con la validacion, por otra parte es seguridad de muy bajo nivel lo que ando haciendo de ocultar las rutas eso lo se :S, pero incluso por estética me parece mejor poder ocultarlas, lo que se me hace raro es que me digas que no se puede, porque entonces no entiendo como le hacen en paginas como:

http://plusclix.com

para cambiar los contendos innerHtml de los divs, como no se ven rutas ditrectas en el codigo fuente, solamente instrucciones del tipo: index.php?u=c& (que es lo que apliqué, si lo hacen asi es porque en php deben haber instrucciones que hagan el redireccionamiento y asignacion en las divs o no?), y al descargar la pagina no tiene scripts por ningun lado supuse que lo hacian por medio de php :S, pero weno, gracias por tus consejos y a ver como le hago :P.
  #4 (permalink)  
Antiguo 10/03/2010, 17:48
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: modificar DIV o IFRAME desde PHP

Respecto al link que pones yo puedo ver todo el contenido al dar click al boton derecho -> ver codigo fuente, así que no entiendo a que te refieres con que cambian el innerHTML...

Saludos.
  #5 (permalink)  
Antiguo 10/03/2010, 17:58
 
Fecha de Ingreso: marzo-2010
Mensajes: 18
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: modificar DIV o IFRAME desde PHP

Cita:
Iniciado por GatorV Ver Mensaje
Respecto al link que pones yo puedo ver todo el contenido al dar click al boton derecho -> ver codigo fuente, así que no entiendo a que te refieres con que cambian el innerHTML...

Saludos.
obvio que puedes ver todo el contenido de la pagina, pero todos y cada uno de los enlcaes son del tipo index.php?u=c& o index.php?r=s& o por ejemplo: index.php?l=p& o lo que sea, lo que yo asumo es que ese tipo de rutas las procesan con alguna funcion o instruccion php, si te fijas en los href es asi, no obstante el funcionamiento de la pagina da la impresion que tiene macros (aunque ellos lo hacen con etiquetas div), asi que de alguna manera que no es javascript lo estan haciendo y pos lo unico que se me ocurre es que sea con php, lo que me refieron con lo del innerHtml, es que cargan las paginas de los diferentes enlaces en los divs para darme a entender mejor, pero lo hacen caragando el index.php una y otra ves solo que con instrucciones de entrada _GET diferentes jejeje.
  #6 (permalink)  
Antiguo 10/03/2010, 18:07
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: modificar DIV o IFRAME desde PHP

OK OK, plusclix lo podría hacer con ajax, lo cual usa JavaScript. Esa es la opción un sistema full ajax como lo que estoy haciendo, es algo complicado de hacer, pero tú mismo dijiste que no quieres complicarte con Ajax. En ese caso no hay ninguna ruta que ocultar, solo hay llamadas Ajax para recargar DIVs, nada más. No se puede ocultar rutas, simplemente alguien lo puede ver. No uses frames ni iframes, usa solo la validación, en cuanto a lo de estética, podrías usar URL amiglables, con lo cual se oculta también algo de la ruta, se hace más difícil entender los parámetros.

El querer ocultar a toda costa la ruta raya en los paranoico, si están bien validadas los parámetros como podrían hacer algún hacking?
  #7 (permalink)  
Antiguo 10/03/2010, 22:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: modificar DIV o IFRAME desde PHP

Mmmm creo que entiendo lo que quieres, revisa esto: FAQs de PHP: Web modulares:¿Cómo hago esas páginas web que las secciones que incluyen son del tipo index.php?id=2
  #8 (permalink)  
Antiguo 11/03/2010, 13:35
 
Fecha de Ingreso: marzo-2010
Mensajes: 18
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: modificar DIV o IFRAME desde PHP

Cita:
Iniciado por GatorV Ver Mensaje
Mmmm creo que entiendo lo que quieres, revisa esto: [URL="http://www.forosdelweb.com/wiki/PHP:Web_modulares:%C2%BFC%C3%B3mo_hago_esas_p%C3%A 1ginas_web_que_las_secciones_que_incluyen_son_del_ tipo_index.php%3Fid%3D2"][B]FAQs de PHP: Web modulares:¿Cómo hago esas páginas web que las secciones que incluyen son del tipo index.php?id=2[/B][/URL]
siiii eeeso era exactamente lo que yo estaba buscando, se puede ver el codigo html, el seguro, pero no pueden ver mis rutas :D, muchas gracias por la ayuda.

PD: lo unicon fue que no funciono con <? ?> tuve que escribir <?php ?>

Etiquetas: iframe, modificar
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 03:12.