Foros del Web » Programando para Internet » Javascript »

Error al añadir variable php

Estas en el tema de Error al añadir variable php en el foro de Javascript en Foros del Web. Hola, estoy haciendo una aplicacion, en la que tengo distintos botones que se accionan mediante funciones javascript, en princpio, tenia 2 de aceptar o cancelar, ...
  #1 (permalink)  
Antiguo 23/10/2009, 09:35
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Error al añadir variable php

Hola, estoy haciendo una aplicacion, en la que tengo distintos botones que se accionan mediante funciones javascript, en princpio, tenia 2 de aceptar o cancelar, que iban sin problemas, pero al haber añadido 2 mas para la paginacion de las listas... uno de los valores que le paso a estos en la funcion javascript se lo paso por php, dandome el resultado esperado, pero por el contrario, dejan de funcionarme los botones anteriores... os paso la funcion, al quitar el codigo para pasarle la variable php me funciona, pero debería ir tambien cn el no??

Código:
function paginacion(objeto){

	var sentido = objeto.id;
	var pagina = <? echo $pagina_actual?>;
	

	if( (sentido == "atras") && (pagina!= 0))
		pagina--;
		else if(sentido == "adelante")
			pagina++;

	location.href = '?mod=privado&menu=pacientes&modo=listar&pagina='+pagina;

}
A ver si podeis echarme una mano...
  #2 (permalink)  
Antiguo 23/10/2009, 13:35
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Error al añadir variable php

Hola

Prueba a quitarle el echo, ya que no quieres imprimir nada por pantalla

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 23/10/2009, 13:47
mleonardom
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Error al añadir variable php

Que extencion tiene el archivo donde se encuentra el codigo que pasaste?, ten en cuenta que apache ejecuta de manera distinta el codigo segun la extencion del archivo que lo contiene.

Deja el echo obvio necesitas imprimir el valor de la variable.

Ademas seria bueno que adjuntaras el codigo que se genera, es decir el que llega al navegador.
  #4 (permalink)  
Antiguo 23/10/2009, 14:10
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Error al añadir variable php

Cita:
Iniciado por mleonardom Ver Mensaje
Que extencion tiene el archivo donde se encuentra el codigo que pasaste?, ten en cuenta que apache ejecuta de manera distinta el codigo segun la extencion del archivo que lo contiene.

Deja el echo obvio necesitas imprimir el valor de la variable.

Ademas seria bueno que adjuntaras el codigo que se genera, es decir el que llega al navegador.
Tal vez me esté metiendo en jardín del que no se nada pero creo que el equivalente de echo para ASP es Response.Write y nunca se me ocurría hacerlo de tal manera, lo haría con <%=var%>, pues en su caso, a lo que me refería es a
<?=var?>
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 23/10/2009, 14:34
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: Error al añadir variable php

lo est[as haciendo mal. Para cuando el javascript se interpreta, el documento ya está en el cliente por lo que eses echo no hace nada. Si lo que necesitas es pasar una variable de php a javascript, tienes que hacerlo del lado del servidor y no del lado del cliente. Para eso necesitas modificar el javascript cuando la pagina está siendo interpretada por el servidor. Prueba con:

Código php:
Ver original
  1. function paginacion(objeto){
  2.  
  3.     var sentido = objeto.id;
  4.     <?php echo "var pagina = $pagina_actual"; ?>;
  5.    
  6.  
  7.     if( (sentido == "atras") && (pagina!= 0))
  8.         pagina--;
  9.         else if(sentido == "adelante")
  10.             pagina++;
  11.  
  12.     location.href = '?mod=privado&menu=pacientes&modo=listar&pagina='+pagina;
  13.  
  14. }

Nunca he hecho eso, pero es la primera forma de la que intentaría si quisiera pasar una variable de php a javascript. Ese codigo tiene que estar en tu pagina html la cual debe tener extención .php

Espero que te sirva.
__________________
twitter: @imbuzu
  #6 (permalink)  
Antiguo 23/10/2009, 16:30
mleonardom
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Error al añadir variable php

Cita:
Iniciado por Adler Ver Mensaje
Tal vez me esté metiendo en jardín del que no se nada pero creo que el equivalente de echo para ASP es Response.Write y nunca se me ocurría hacerlo de tal manera, lo haría con <%=var%>, pues en su caso, a lo que me refería es a
<?=var?>
Efectivamente funcionaria de la misma manera <? echo $var; ?> que <?= $var ?> pero esto es dependiente de la configuracion del php, no siempre funciona, y al ser equivalentes, yo siempre lo hago de la primera forma, para evitar problemas de compativilidad que ya los he tenido.

en cuanto a:
Cita:
Para cuando el javascript se interpreta, el documento ya está en el cliente por lo que eses echo no hace nada
no necesariamente, si el archivo tiene una extencion .php este echo se ejecuta en php y luego se envia al cliente con la impresion echa.
  #7 (permalink)  
Antiguo 23/10/2009, 18:57
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: Error al añadir variable php

Cita:
no necesariamente, si el archivo tiene una extencion .php este echo se ejecuta en php y luego se envia al cliente con la impresion echa.
JAJAJA.... tienes toda la razon... No me di cuenta que de hecho lo que yo estoy haciendo y lo que el esta haciendo es lo mismo... ahora si me siento novato 0_o
__________________
twitter: @imbuzu
  #8 (permalink)  
Antiguo 25/10/2009, 05:21
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Error al añadir variable php

Gracias por la ayuda, el "hecho" es que tal y como lo tengo puesto, funcia a la perfeccion la paginacion, pero "hace que deje de funcionar otra funcion javascript", y en cuanto "comento" esta primera funcion, vuelve a funcionar la 2ª.... una cosa rara... os paso mas parte del codigo, a ver si veis algo "anómalo"....


Desde aqui llamo la funcion... es un archivo .php incrustando el codigo javascript al final de este....

Código PHP:
<? 
if($numero_registros >10){
?>
<tr>
    <td>&nbsp;</td>
</tr>
<tr>
    <? if($inicio != 0){?><td class="botonera"><img src="images/iconos/atras.png" id="atras" name="atras"  title="atras"  onMouseOut="cambia_imagen1(this)" onClick="paginacion(this)" onMouseOver="{this.style.cursor='pointer'}cambia_imagen(this)" /></td><? }?>
    <td colspan="4">Páginas: <? echo $paginas;?> &nbsp;Actual: <? echo $pagina_actual;?></td>
    <? if($paginas != $pagina_actual){ ?><td class="botonera" colspan="2"><img src="images/iconos/adelante.png" id="adelante" name="adelante"  title="adlante"  onMouseOut="cambia_imagen1(this)" onClick="paginacion(this)" onMouseOver="{this.style.cursor='pointer'}cambia_imagen(this)" /></td><? }?>
</tr>

<?

y aqui las funciones javascript...


Código:
<script language="javascript">

function eliminar_paciente(objeto){ 
	
		var id_paciente = objeto.id;
	
		location.href = '?mod=privado&menu=pacientes&modo=eliminar&id_paciente='+id_paciente;
		

}
function agregar_paciente(){ 
		
		location.href = '?mod=privado&menu=pacientes&modo=agregar';
		

}  

function editar_paciente(objeto){

	var id_paciente = objeto.id;
	
	location.href = '?mod=privado&menu=pacientes&modo=editar&id_paciente='+id_paciente;
	
}

function guarda_paciente(){

	
	
	document.agrega_paciente.submit();
	
	
}

function cancela_cambios(){

	location.href = '?mod=privado&menu=pacientes&modo=listar';
	
	
}

function ver_historia(objeto){

	var id_paciente= objeto.id;
	
	location.href = '?mod=privado&menu=pacientes&modo=historia&hoja=datos&paciente='+ id_paciente;
	
	
}

function paginacion(objeto){

	var sentido = objeto.id;
	var pagina = <? echo $pagina_actual?>;
	

	if( (sentido == "atras") && (pagina != 0))
		pagina--;
		else if(sentido == "adelante")
			pagina++;

	location.href = '?mod=privado&menu=pacientes&modo=listar&pagina='+pagina;

}
</script>
Las funciones que dejan de "funcionar" son, cancela_cambios y guarda_paciente....
  #9 (permalink)  
Antiguo 25/10/2009, 13:57
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: Error al añadir variable php

como haces la llamada a las funciones que dejan de funcionar? específicamente cuales dejan de funcionar?
__________________
twitter: @imbuzu
  #10 (permalink)  
Antiguo 26/10/2009, 04:24
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Error al añadir variable php

Ya he arreglado el problema, era porque dependiendo del modulo en el que se encontrase, podia estar o no vacía la variable que le paso, por lo que la he iniciado al comienzo del archivo .php y ya me va, no se si es una chapuza o no pero ya funciona... gracias por vuestra ayuda!!
  #11 (permalink)  
Antiguo 27/10/2009, 06:59
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Error al añadir variable php

Pues tras haberlo "arreglado", no se que he hecho de nuevo para que me vuelva a dar el mismo error, seguramente tenga que ver con la variable $pagina_actual, pero la inicio a 0, para que no esté vacía y vuelven a fallarme esas dos funciones al incluir la paginación.... podeis ver el error entrando en la aplicación que la tengo subida a un servidor....

www.clinica.net46.net

Entrais en "conectar", seguidamente le dais a acceder sin introducir usuario ni contraseña y en el menú de la izquierda, le dais a "gestión pacientes", ahi os aparece el listado de pacientes, le dais a editar cualquiera de ellos y en la siguiente ventana, vereis como no van ni los botones de aceptar ni cancelar cambios... a ver si podeis echarme una mano, pq despues de llevarme todo el día con la paginación y pensando que tenía todo lo demás arreglado, he vuelto a ver este fallo y me ha comido un poco la moral....
  #12 (permalink)  
Antiguo 27/10/2009, 14:55
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Error al añadir variable php

Alguien tiene idea de a que puede deberse??
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 09:45.