Foros del Web » Programando para Internet » Javascript »

Ventana secundaria

Estas en el tema de Ventana secundaria en el foro de Javascript en Foros del Web. Hola, tengo este código: echo "<a href=' popup1.php?ID_articulo=".$row['ID_uno']."' target='_blank', width=200, height=100, scrollbars=yes, menubar=no, location=no, resizable=no>Opción uno</a> <a href=' popup2.php?ID_articulo=".$row['ID_dos']."' target='_blank', width=200, height=100, scrollbars=yes, menubar=no, location=no, ...
  #1 (permalink)  
Antiguo 15/02/2012, 18:59
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Ventana secundaria

Hola, tengo este código:

echo "<a href=' popup1.php?ID_articulo=".$row['ID_uno']."' target='_blank', width=200, height=100, scrollbars=yes, menubar=no, location=no, resizable=no>Opción uno</a>

<a href=' popup2.php?ID_articulo=".$row['ID_dos']."' target='_blank', width=200, height=100, scrollbars=yes, menubar=no, location=no, resizable=no>Opción dos</a>";

Esto abre OK un popup, pero si el usuario tiene configurado, por ejemplo Firefox, para que se abran en una nueva pestaña, no aparecen como popup.

Antes de consultarles intenté varias opciones con javascrip que encontré en la web, por ejemplo esta de desarrolloweb.com que me pareció sencilla:

en el head:

<script language=javascript>
function ventanaSecundaria (URL){
window.open(URL,"ventana1","width=200,height=100,s crollbars=NO")
}
</script>

y en el body:

<a href="javascript:ventanaSecundaria('http://www.desarrolloweb.com')"> Pincha en este enlace para abrir la ventana secundaria</a>

Pero no sé como ingresar ' popup1.php?ID_articulo=".$row['ID_uno']."', si me pueden indicar esto por favor.

O quizás me digan otra manera de hacerlo, solo necesito que no abra en ventana completa o en otra pestaña, es que me da error, quizás pongo mal las comillas, o algo de eso.

Saludos y gracias.
  #2 (permalink)  
Antiguo 15/02/2012, 19:31
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Ventana secundaria

Tu problema no es de php, es de javascript.

podrías hacer ésto:
Código PHP:
Ver original
  1. echo "
  2. <a onclick=\"window.open('popup1.php?ID_articulo=".$row['ID_uno']."','mi_popup','width=200,height=100');\">Opción uno</a>";
  #3 (permalink)  
Antiguo 15/02/2012, 19:45
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

ocp001a, lo intento y luego te comento.
Gracias amigo.
  #4 (permalink)  
Antiguo 15/02/2012, 21:48
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

Bueno, el ejemplo que me enviaste funcionó perfecto en Firefox, exactamente como lo necesito.

Pero cuando hice la prueba con IE8 no puedo ingresar, en realidad se abre la ventana secundaria en blanco con la leyenda "Error cod.:1 - Acceso incorrecto!", esto es porque uso el autentificator de Cluster.

Perdón que extienda el tema, ya que la respuesta que me dieron es correcta, pero ahora me apareció esto en explorer solamente y nunca me había pasado que me permita ingresar con uno y en otro no.

Por otra parte no se forma la "manito" al dejar el mouse sobre la opción que se quiere seleccionar.

Saludos
  #5 (permalink)  
Antiguo 16/02/2012, 03:37
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

Ya encontré y resolví el mensaje de "Error cod.:1 - Acceso incorrecto!" en IE8.
Ahora se abre el popup perfecto con la instrucción que me dió "ocp001a".

Una pregunta, con este método los buscadores pueden seguir el link e indexar la página de destino (popup) ?

Y el tema de la manito no lo puedo resolver, los ejemplos que encontré no me funcionaron, por favor si alguien tiene alguna sugererencia.

Muchas gracias.
  #6 (permalink)  
Antiguo 16/02/2012, 13:38
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Ventana secundaria

Lo de la mano es por que al no tener href el navegador no lo considera un verdadero enlace.
Para que lo muestre, se puede agregar: href="#" con lo cual cambiará el cursor.
Con éste método los buscadores no creo que puedan indizar, ya que es un método de javascript.

Por otra parte, no lo había mencionado antes, pero si quieres que algo funcione por encima de las preferencias del usuario (lo de que nuevas ventanas se abran como pestañas) y encima multi plataforma, estarás fallando en una u otra forma.
  #7 (permalink)  
Antiguo 16/02/2012, 14:44
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

ocp001am, quizás deba pasar esto al sector de javascript, si es así no tengo problemas en iniciar el tema nuevamente.

por favor mira este artículo:
http://www.nosolousabilidad.com/arti...javascript.htm

dice esto:

***************************************
La forma correcta de lanzar una ventana pop-up con Javascript

<a href="/index.htm" target="_blank" onClick="window.open(this.href, this.target, 'width=300,height=400'); return false;">Lanzar correctamente</a>

Simplemente cambiar en href="/index.htm" el nombre del archivo .htm que se abrirá en la ventana nueva, y cambiar los valores de width y height según el ancho y alto deseados (en pixeles).
***************************************

Esto tiene el href para los buscadores, funciona ok en firefox y explorer y muestra la dichosa manito.

Si no entendí mal, según tu último mensaje no se puede conseguir el mismo resultado dentro de un echo en php.

Para terminar el tema, solo necesitaría una confirmación del párrafo anterior.

Gracias nuevamente por responder.
  #8 (permalink)  
Antiguo 16/02/2012, 15:18
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Ventana secundaria

si te he entendido, lee este articulo
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #9 (permalink)  
Antiguo 16/02/2012, 15:43
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

Hola, leí el artículo, y me lleva nuevamente a mi primer mensaje, y la pregunta que está allí .....

no sé como ingresar ' popup1.php?ID_articulo=".$row['ID_uno']."' dentro de un echo, si me pueden indicar esto por favor.

No quiero complicar las cosas, sólo abrir un popup, puse ejemplos que funcionan bien, aunque el usuario tenga configurado su navegador para que abra en una nueva pestaña, el popup igual funciona, con la manito y con href para los buscadores, en firefox y explorer, lo que sucede es que no están dentro de un echo.

Gracias de todas maneras.
  #10 (permalink)  
Antiguo 16/02/2012, 16:44
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Ventana secundaria

mekir, en mi último comentario, me refería a que estás obligando a que la aplicación haga algo contrario a las preferencias del usuario, lo cual no es bueno.

Desde luego, cualquier cosa que necesites se puede imprimir en pantalla con echo.
  #11 (permalink)  
Antiguo 16/02/2012, 17:07
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

Comprendo el tema de las preferecias del usuario, pero necesito que se abra como popup, que sirva para los buscadores y con la manito, (suena exigente, pido mil disculpas si es así, pero bueno, es lo que preciso).

"Desde luego, cualquier cosa que necesites se puede imprimir en pantalla con echo." Es por eso que vuelvo nuevamente al principio del post.

Realmente agradezo muchisimo tus respuestas, y el tiempo que dedican a ayudar a los que, como yo, no tenemos esto muy claro.

Seguiré buscando por ahí, y volveré luego a ver si alguien pudo aportar algo.

Saludos.
  #12 (permalink)  
Antiguo 16/02/2012, 17:33
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Ventana secundaria

¿Entonces tu duda es sobre cómo imprimir el enlace con php?
De ser así sólo necesitas conocer como se manejan las comillas simples y dobles en php.

Por ejemplo, esto
<a href="/index.htm" target="_blank" onClick="window.open(this.href, this.target, 'width=300,height=400'); return false;">Lanzar correctamente</a>

se puede imprimir así:

echo "<a href=\"/index.htm\" target=\"_blank\" onClick=\"window.open(this.href, this.target, 'width=300,height=400'); return false;\">Lanzar correctamente</a>";

En tu caso concreto
Código PHP:
Ver original
  1. echo "<a href=\"popup2.php?ID_articulo=$row[ID_dos]\" target=\"_blank\" onClick=\"window.open(this.href, this.target, 'width=300,height=400'); return false;\">Lanzar correctamente</a>";

o bien

Código PHP:
Ver original
  1. echo "<a href=\"popup2.php?ID_articulo=".$row['ID_dos']."\" target=\"_blank\" onClick=\"window.open(this.href, this.target, 'width=300,height=400'); return false;\">Lanzar correctamente</a>";

o bien

Código PHP:
Ver original
  1. echo '<a href="popup2.php?ID_articulo='.$row['ID_dos'].'" target="_blank" onClick="window.open(this.href, this.target, \'width=300,height=400\'); return false;">Lanzar correctamente</a>';

Hay muchas maneras, ésta última sería teóricamente la "más correcta"
  #13 (permalink)  
Antiguo 17/02/2012, 06:54
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Ventana secundaria

mi respuesta iba en la dirección de que me pareció que pedías confirmación de lo leído en algún otro sitio, pero releyendo ahora parece que no era así. esto me lleva a preguntar por qué tienes la necesidad de que el servidor se encargue de imprimir el html, cuando lo correcto es que se haga en el cliente?? de este modo no se usan recursos del servidor
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #14 (permalink)  
Antiguo 17/02/2012, 10:56
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

ocp001a ... Tu última respuesta era exactamente lo que necesitaba, ahora me quedó perfecto.

Estaba a punto de escribir un mensaje para dar por terminado el post, y me encuentro con la última respuesta IsaBelM, quién me hace la siguiente pregunta ...

"por qué tienes la necesidad de que el servidor se encargue de imprimir el html, cuando lo correcto es que se haga en el cliente ?"

Y pensé ... qué estaré haciendo ? qué le puedo responder ?

Finalmente decidí escribir la verdad, después de todo, ya lo deben saber .... NO TENGO NI IDEA DE QUE ME ESTAS PREGUNTANDO !

La realidad es que hace unos años hice un par de cosas en PHP que salieron bien, luego lo dejé y ahora volví a intentar otras, pero me dedico a esto sólo en mis pocos momentos libres, y cuando quiero obtener algún resultado busco ejemplos en la web y trato de adaptarlos, pero si no puedo ... acá estoy.

Sé que es mejor aprender de a poco y saber lo que estás haciendo "concientemente", pero ya les conté de mi escaso tiempo, es lo que hay.

Ya me extendí demasiado, volviendo al tema del post inicial, sólo quiero mostrar los datos completos de un artículo, quería un popup para que vean esos

datos y cerrando esa ventana sigan en la misma página, porque hay otras opciones que se pueden decidir además de ver los datos.

Lo hago así porque no sé hacerlo de otra manera, si me dicen cómo hacerlo correctamente (que se haga en el cliente) me vendría bárbaro.

Mil gracias a los dos.
  #15 (permalink)  
Antiguo 18/02/2012, 06:29
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Ventana secundaria

con ambos casos vas obtener el mismo resultado, la diferencia está en que el primer caso se ejecutar en el cliente y en el segundo el servidor
Cita:
<a href="/index.htm" target="_blank" onClick="window.open(this.href, this.target, 'width=300,height=400');">Lanzar correctamente</a>
echo '<a href="/index.htm" target="_blank" onClick="window.open(this.href, this.target, \'width=300,height=400\');">Lanzar correctamente</a>';
con algo tan pequeño como esto no, supone nada. simplemente se trata de buenas practicas. cada uno que se encargue de lo que le corresponde

por cierto no es necesario usar return
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #16 (permalink)  
Antiguo 19/02/2012, 20:26
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

Bueno, finalmente tengo este código que funciona correctamente:

while($row=mysql_fetch_array($_pagi_result)){

echo "
<font face='Arial' size='1' color='".$$aux."'>
<a href=\" ver_articulo.php?ID_articulo=$row[ID_articulo]\" target=\"_blank\" onClick=\"window.open(this.href, this.target, 'toolbar=no,menubar=no,directories=no,status=no,re sizable=no,location=no,scrollbars=yes,height=300,w idth=100'); return false;\">Ver Artículo</a>
</font>";

Por lo que me dijeron acá, esto funciona del lado del servidor

Por favor, podrían indicarme cómo es la forma de lograr lo mismo, pero del lado del cliente ?
  #17 (permalink)  
Antiguo 20/02/2012, 05:57
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Ventana secundaria

Cita:
while($row=mysql_fetch_array($_pagi_result)){
?>


<font face="Arial" size="1" color="<?php echo $$aux?>">
<a href="ver_articulo.php?ID_articulo=<?php echo $row[ID_articulo]?>" target="_blank" onClick="window.open(this.href, this.target, 'toolbar=no,menubar=no,directories=no,status=no,re sizable=no,location=no,scrollbars=yes,height=300,w idth=100'); return false;">Ver Artículo</a>
</font>
con esto abandono el tema
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #18 (permalink)  
Antiguo 20/02/2012, 12:53
 
Fecha de Ingreso: noviembre-2005
Mensajes: 55
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Ventana secundaria

Perfecto !

Con la última respuesta funciona bárbaro.

Cómo mostrar mi agradecimiento por el tiempo que me dedicaste ...

No soy muy creativo, pero me vino a la mente una frase célebre para finalizar este tema :

GRACIAS TOTALES !

Etiquetas: secundaria, ventanas, usuarios
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 03:51.