Foros del Web » Programando para Internet » PHP »

PHP OO Variable global pierde valor

Estas en el tema de Variable global pierde valor en el foro de PHP en Foros del Web. Hola a todos/as. De entrada decir que soy bastante novato en php y por eso os planteo este ¿como lo hago? y tambien nuevo en ...
  #1 (permalink)  
Antiguo 14/02/2016, 17:59
 
Fecha de Ingreso: febrero-2016
Mensajes: 3
Antigüedad: 8 años, 2 meses
Puntos: 0
Pregunta Variable global pierde valor

Hola a todos/as.
De entrada decir que soy bastante novato en php y por eso os planteo este ¿como lo hago? y tambien nuevo en este foro "preguntando" aunque como seguidor ya hace mucho quehe perdido la cuenta de las veces que os he visitado.

Mi problema es que una variable global pierde su valor al querer pasarla a una ventana modal y no se que hago mal o que me falta o sobra. Os pongo el codigo o al menos lo importante:

// El script que llama a la ventana


<script type="text/javascript">
function abrir_Ampliacion(_valor){
var temp = $(this).attr('title'); // Intento capturar en la variable temp lo que estaba en title
document.getElementById('tabla').value=temp; // intento enviar el valor de la variable temp a la variable global $id_tabla del php
alert(temp); // esto lo puse para ver q tal

*** ESTAS TRES PRIMERAS LINEAS NO FUNCIONAN ***
** A partir de aqui si que me llama a la modal siempre y cuando saque las anteriores, sino tampoco **
document.getElementById("Fondo_Ventana_Modal_Ampli acion").style.visibility=_valor;
document.getElementById("Modal_Ampliacion").style. visibility=_valor;
}
</script>


// Aqui comenzaria la ventana modal

<div id="Fondo_Ventana_Modal_Ampliacion">
<div class id="Modal_Ampliacion">


<? echo $id_tabla; ?> // Aqui siempre marca el valor por defecto que es 0 (cero) cuando deberia ir cambiando en funcion de lo que viene seguidamente...


<?php // Aqui llamo a un PHP separado que tambien deberia recibir el nuevo valor de id_tabla pero no es asi

include 'robesc_v3_rddw/robesc_php_generic/filtro_ampliacion_2016.php';
?>

.... y seguiria el resto del codigo de la vantana modal pero que no afecta a lo que necesito

</div>
</div>


// Aqui estaria el cuerpo del html y con este cogido cambio el valor de id_tabla:

<?php
function cambia1(){
global $id_tabla;
$id_tabla = 1;
}
cambia1(); // Activo la funcion y Cambia Valor de $id_tabla // Esto va bien


He puesto las tres partes del codigo en este orden porque asi las tengo en realidad, no se si esto afecta.

En fin que no consigo que la variable $id_tabla vaya desde (cambia1) a (script) y de ahi a (modal) aunque tampoco se muy bien si es que tiene que ser asi, pero por todo lo que he consultado creo que si debe ser asi.

Bueno si alguien quiere colaborar en sacarme de esta pues se lo agradezco de antemano.

Muchas gracias y espero alguna ayudita.
  #2 (permalink)  
Antiguo 14/02/2016, 18:55
 
Fecha de Ingreso: diciembre-2015
Mensajes: 529
Antigüedad: 8 años, 4 meses
Puntos: 39
Respuesta: Variable global pierde valor

Edita tu texto y ponlo en el highlight correspondiente, ya que al menos yo me enredé. Saludos :D
  #3 (permalink)  
Antiguo 14/02/2016, 23:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Variable global pierde valor

1. No sabemos en qué momento y de qué manera invocas la función de Javascript abrir_Ampliacion()
2. No sabemos qué valor contiene _value aunque me imagino que es para ajustar la visibilidad de las otras capas
3. Dices que "ESTAS TRES PRIMERAS LINEAS NO FUNCIONAN" y eso es código Javascript, primero deberías aprender a distinguir tecnologías y sobre todo comprender la forma en la que se relacionan
4. Usa globales es pésima practica, de hecho es la razón principal de que no tengas idea de lo que sucede ¿o entiendes perfectamente sus implicaciones?
5. Tampoco explicas cómo invocas tu función cambia1() ni la relación entre el código Javascript y dicha función de PHP

En fin, si pudieras explicar perfectamente cada una de tus intenciones y además usas las herramientas del foro adecuadamente es más seguro que alguien ayude.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 16/02/2016, 04:08
 
Fecha de Ingreso: febrero-2016
Mensajes: 3
Antigüedad: 8 años, 2 meses
Puntos: 0
Pregunta Respuesta: Variable global pierde valor

Hola, ante todo gracias por el interes.

Sobre tus preguntas...

1- Javascript lo invoco asi:

Código Javascript:
Ver original
  1. <a title="<? echo $vtab['id_tabla'];?>"
  2.      href="javascript:abrir_Ampliacion('visible');">+info</a>

2- y estas en lo cierto, _value es para la visibilidad de las capas

3- Por muy novato que sea, ya se que Javascript no es lo mismo que php o html u otros lenguajes a los que estoy mas acostumbrado.

4- Si, he visto por ahi que eso de usar globales no es muy bueno pero como hago pues para ver el valor id_tabla desde cualquier punto, ¿no es mas facil una global?

5- Esta funcion esta dentro de una "tabla" del html digamos de la "pantalla principal" por decirlo de alguna forma entendible y cuando doy click al href anteriormente indicado pues lo primero que hace es este php y luego el resto pero esta parte va bien. Lo que no hay manera es de pasar el valor de la variable de la ventana principal a la modal.


Código PHP:
Ver original
  1. <?php
  2.     function cambia1(){
  3.                       global $id_tabla;
  4.                     $id_tabla = 1;
  5.                                       }
  6.     cambia1(); // Cambia Valor de $id_tabla //

Bueno espero haberme explicado un poco mejor.

Y nuevamente gracias.

Etiquetas: global, html, pierde, tabla, valor, variable
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 08:14.