Foros del Web » Programando para Internet » PHP »

llamar variable fuera de una class

Estas en el tema de llamar variable fuera de una class en el foro de PHP en Foros del Web. hola a todos, tengo una variable fuera de una class y yo estoy dentro de ella y a su vez dentro de una funcion y ...
  #1 (permalink)  
Antiguo 01/11/2009, 00:57
 
Fecha de Ingreso: mayo-2009
Mensajes: 147
Antigüedad: 15 años
Puntos: 1
Pregunta llamar variable fuera de una class

hola a todos, tengo una variable fuera de una class y yo estoy dentro de ella y a su vez dentro de una funcion y a su vez dentro de una consulta y quier saber como hago para llamar a esa funcion dejo codigo reducido poeque es muy extenso:

Código PHP:
<?php

$variable
="algo";

class 
Pagina
{
    function 
PublicarClan()
    { 
?>
               
                 <table><tr><td>
           <?
                  $resultado2 
= @mysql_query("SELECT * FROM $variable");
           
?>

                </td></tr></table>

           <? 
       
}
}
?>
la variable en cuestion es $variable, pues si la escribo tal como está, la consulta no se lleva a cabo, ya probé con $GLOBALS["variable"] , pero no me funcionó, quizas lo escribí mal, no sé...

Desde ya muchas gracias
  #2 (permalink)  
Antiguo 01/11/2009, 06:44
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 5 meses
Puntos: 89
Respuesta: llamar variable fuera de una class

No sé como llamar a una variable desde una clase, estando esta fuera de la clase

Pero si te puedo decir, que puedes pasar parámetros en los métodos.

Ej :

Código php:
Ver original
  1. class Pagina
  2. {
  3.     function PublicarClan($variable)
  4.     {
  5.            //.....
  6.      }
  7. }
  8.  
  9. // Luego deberías instanciar la clase
  10.  
  11. $pag = new Pagina();
  12.  
  13. // Llamamos al método
  14.  
  15. $pag->PublicarClan("algo");

Eso debería funcionarte, nos vemos.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #3 (permalink)  
Antiguo 01/11/2009, 09:11
 
Fecha de Ingreso: mayo-2009
Mensajes: 147
Antigüedad: 15 años
Puntos: 1
Respuesta: llamar variable fuera de una class

Gracias amigo PERO ESO NO ES LO QUE BUSCO
  #4 (permalink)  
Antiguo 01/11/2009, 09:15
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 6 meses
Puntos: 265
Respuesta: llamar variable fuera de una class

Probaste usando sesiones? Dependiendo de lo que quieras guardar en $variable te puede servir.
Tambien podes usar variables estaticas, pero todo depende de que quieras guardar en $variable.

Saludos.
  #5 (permalink)  
Antiguo 01/11/2009, 09:22
 
Fecha de Ingreso: mayo-2009
Mensajes: 147
Antigüedad: 15 años
Puntos: 1
Respuesta: llamar variable fuera de una class

lo que quiero guardar es el nombre de la tabla de la base de datos, el tema es que mi pagina tambien está en inglés y luego con otra funcion haré la traduccion de todas las variables, entonces lo que quiero guardar es simplemente eso el nombre de la tabla de la base, y luego con la traduccion guardaré la tabla pero de la parte de la pagina que sería en inglés...

Solo quiero saber como escribirlo, como , para que haga referencia a esa variable, asi tal como se vé en mi ejemplo no funciona, pero tampoco me tira error, simplemente no se ve el resultado
  #6 (permalink)  
Antiguo 01/11/2009, 09:24
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 6 meses
Puntos: 265
Respuesta: llamar variable fuera de una class

Si vos pones esto solo en tu .php

Código PHP:
<?php

$variable
="algo";

class 
Pagina
{
    function 
PublicarClan()
    { 
?>
               
                 <table><tr><td>
           <?
                  $resultado2 
= @mysql_query("SELECT * FROM $variable");
           
?>

                </td></tr></table>

           <? 
       
}
}
?>
No te va a mostrar nada, probaste poner echo $variable ? te deberia devolver "algo", pero a no ser q tengas una tabla llamada "algo" y q luego le hagas un fetch para que puedas imprimir el valor de tus filas....eso no te va a devolver nada.

Saludos.
  #7 (permalink)  
Antiguo 01/11/2009, 09:31
 
Fecha de Ingreso: mayo-2009
Mensajes: 147
Antigüedad: 15 años
Puntos: 1
Respuesta: llamar variable fuera de una class

amigo MarioAraque, ya sé que no devuelve nada, pues el ejemplo es solo ilustrativo, el codigo original es mucho mas extenso, pero ese ejemplo sirve para mi pregunta, COMO DEBO ESCRIBIR $variable PARA QUE ME LA RECONOZCA???????????

$resultado2 = @mysql_query("SELECT * FROM $variable");

solo quiero saber la sintaxis, estoy seguro de que es una pabada, pero no se si me hago entender
  #8 (permalink)  
Antiguo 01/11/2009, 09:37
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 6 meses
Puntos: 265
Respuesta: llamar variable fuera de una class

Proba con sesiones, o si no crea un php donde definas el valor de la variable,y luego lo vas incluyendo en cada clase segun lo uses o no.......la verdad no te termino de entender =(

Saludos.
  #9 (permalink)  
Antiguo 01/11/2009, 09:54
 
Fecha de Ingreso: mayo-2009
Mensajes: 147
Antigüedad: 15 años
Puntos: 1
Respuesta: llamar variable fuera de una class

creo que el problema está en que no me explico bien

Código PHP:
<?php
//declaro la variable y le doy algun valor, ese valor es el nombre 
//de la tabla de la base de datos  ok?

$variable="algo";

// hasta aca me entienden no?
//muy bien ,ahora tengo una class con muchas funciones, 
//una de ellas es la que muestro aca y se llama PublicarClan()  ok?...  
//Dentro de esta funcion se encuentra codigo html, por eso es que tube que
// abrir y cerrar las etiquetas de php.

//Como pueden observar en la funcion tambien hay una consulta mysql 
//donde dice que seleccione todos los campos de una tabla, el nombre 
//de esa tabla seria el contenido de la variable $variable, mi pregunta es
// relacionada mas que nada con la sintaxis, quiero saber como escribir en la
// consulta despues del FROM , la variable, para que la esto funcione. El
// problema está en el alcance de las variables, pues la variable   $variable esta
// declarada aFUERA de la clase, y yo me encuentro a dentro, y por eso es que
//  no me reconoce la variable, estoy seguro de que es un error de sintaxis, me
// faltaran unas comillas o algo por el estilo

class Pagina
{
    function 
PublicarClan()
    { 
?>
               
                 <table><tr><td>
           <?
                  $resultado2 
= @mysql_query("SELECT * FROM $variable");
           
?>

                </td></tr></table>

           <? 
       
}
}
?>

si escribo esto :

$resultado2 = @mysql_query("SELECT * FROM algo");

funciona perfectamente, donde "algo" es el nombre de la tabla da la base.
Ahora si me encuentyro dentro de una funcion y quiero hacer referencia a una variable que se encuentra afuera debería escribirlo asi:

$GLOBALS["variable"]

pero al encontrarme tambien dentro de la consulta esto no me funciona, po ej:

$resultado2 = @mysql_query("SELECT * FROM $GLOBALS["variable"]");

o quizas me faltan comillas o algun punto y coma o algo, no sé

Última edición por trombonete; 01/11/2009 a las 10:11 Razón: mas explicacion
  #10 (permalink)  
Antiguo 01/11/2009, 10:49
 
Fecha de Ingreso: mayo-2009
Mensajes: 147
Antigüedad: 15 años
Puntos: 1
Respuesta: llamar variable fuera de una class

Ya encontré la solucion:


DEbería escribirse asi


Código PHP:
$resultado2 = @mysql_query("SELECT * FROM"$GLOBALS["variable"]); 


el problema eran las comillas y el punto

GRACIAS

PD: Vieron que era un error simple de sintaxis...
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 13:42.