Foros del Web » Programando para Internet » PHP »

Abrir ventana desde un echo....

Estas en el tema de Abrir ventana desde un echo.... en el foro de PHP en Foros del Web. Buenas, quiero abrir una ventana para mostrar una ventana desde un registro de una bd, y no hay manera. la funciona java es: function Abrir_Ventana_Scroll(theURL,w,h) ...
  #1 (permalink)  
Antiguo 10/09/2004, 03:42
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
Abrir ventana desde un echo....

Buenas, quiero abrir una ventana para mostrar una ventana desde un registro de una bd, y no hay manera. la funciona java es:

function Abrir_Ventana_Scroll(theURL,w,h) {
var windowprops ="top=0,left=0,toolbar=no,location=no,status=no,me nubar=no,scrollbars=yes, resizable=no,width=" + w + ",height=" + h;
window.open(theURL,winName,windowprops);
}
</script>

y lo que pongo en el enlace es:

var i<?php echo $cont; ?>= "<a href="javascript:Abrir_Ventana_Scroll('noticia.php ?idnoticia=<?echo $noticia['idnoticia']?>','','width=500,height=500')"></a>";

y hago click en el enlace y no me abre nada...

donde esta el fallo??

salu2
  #2 (permalink)  
Antiguo 10/09/2004, 03:58
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Bueno, creo que es otro error de sintaxis javascript. En javascript pasa lo mismo que en PHP: una cadena limitada por " no puede contener ". Asi que el codigo tendria que ser:

var i<?php echo $cont; ?>= "<a href=\"javascript:Abrir_Ventana_Scroll('noticia.ph p?idnoticia=<?echo $noticia['idnoticia']?>','','width=500,height=500')\"></a>";

Asi creo que se soluciona.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 10/09/2004, 04:30
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
gracias Josemi..

he puesto el codigo q me dices, y entonces no me muestra la noticia en pantalla...sabes de algun codigo para abrir la ventana? no puede ser que al codigo le falte el texto del href? el echo...

salu2
  #4 (permalink)  
Antiguo 10/09/2004, 04:42
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Cita:
no puede ser que al codigo le falte el texto del href? el echo...
Si, puede ser eso. Apostaria que lo es. Pero ese no es un problema del codigo PHP, es un problema de saber cual es el codigo HTML que se debe generar. Es algo asi como las matematicas, 3 * 2 = 6 esta bien, pero resulta que el problema te decia sumar 3 y 2. La operacion de multiplicacion esta bien hecha, pero no es la operacion que habia que hacer. Aqui lo mismo, este es el foro PHP. Si el codigo PHP esta bien, esta bien. Otra cosa es que el codigo HTML que le mandas generar no es el que deberia ser. Yo normalmente "paso" del codigo HTML que generan los codigos PHP que se ponen en las preguntas del foro. Doy por sentado que se sabe cual es el codigo HTML correcto que se debe generar. Si no lo sabe, primero debe averiguarlo. El codigo PHP que pusiste era correcto para generar el HTML que genera. Pero el codigo HTML que le has dicho que genere no es que necesitas que genere.

Saludos.

PD: No es una critica hacia ti, sino generalizada. Muchas veces se ha preguntado '¿Como hago para asignarle un estilo a un link?' mostrando el codigo de un echo con la etiqueta <a>. Si sabes generar HTML con PHP, y sabes el HTML que quieres generar, no deberia haber preguntas de este tipo.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 10/09/2004, 06:18
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
perdona Josemi, pero no todo el mundo sabe tanto de php, ojala yo supiese. a eso entro en los foros, a aprender...

el tema esta en que creo que mi pregunta es de php. si no, creo que ahora si. el html funciona perfectamente, es al intentar abrir la ventana con valores php. te pongo las 2 versiones, a ver si ahora es una pregunta correcta...

var i<?php echo $cont; ?>= "<a href='javascript:Abrir_Ventana('noticia.php?idnoti cia=<?echo $noticia['idnoticia']?>','','width=300,height=300')"><?echo $noticia["titulo"];?></a>'";

<a href="javascript:Abrir_Ventana('noticia.php?idnoti cia=<?echo $noticia['idnoticia']?>','','width=300,height=300')">hola</a

esto sale, el problema es que cuando el hola por el valor del php, no me sale nada para ahcer el link... el error es como poner la sentencia del echo dentro del java..

esperando que mi nueva pregunta sea correcta para este foro,

salu2
  #6 (permalink)  
Antiguo 10/09/2004, 06:57
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Veamos, dices que no muestra nada, pero no dices que codigo genera. Solo pones el codigo PHP, no el codigo HTML que genera. Tienes que poner lo que ves al dar "ver codigo fuente" en tu navegador. No es lo mismo que:
Código PHP:
var i<?php echo $cont?>= "<a href='javascript:Abrir_Ventana('noticia.php?idnoticia=<?echo $noticia['idnoticia']?>','','width=300,height=300')"><?echo $noticia["titulo"];?></a>'";
genere

var i0= "<a href='javascript:Abrir_Ventana('noticia.php?idnoti cia=25','','width=300,height=300')"></a>'";

que

var i0= "<a href='javascript:Abrir_Ventana('noticia.php?idnoti cia=25','','width=300,height=300')">Este titulo tiene

un salto de linea en medio</a>'";

Por cierto, has cambiado la forma de poner comillas dentro de la cadena. Tal como lo has puesto en el ultimo mensaje (que es lo que he cambiado en este mensaje), es normal que falle, es codigo HTML no valido.

El HTML/javascript que quieres generar es:
Código:
var i0= "<a href=\"javascript:Abrir_Ventana('noticia.php?idnoticia=25','','width=300,height=300')\">Titulo de noticia</a>'";
Compara lo que te genera ahora con esto, teniendo en cuenta que los valores en negrita son valores variables.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 11:20.