Variables globales

edited octubre 2007 in Principiantes
A ver kumbia permite usar variables globales, es decir cuando yo defino una variable en una función este me permite verla en una vista llamándola, por ejemplo:
<?=img_tag($imagen);?>

Lo que quiero es que en un método ya yo tengo la imagen a mostrar desde un webservice, pero quiero mostarla en un lugar llamando a la función.
Aver si se puede hacer así.

Comentarios

  • edited 8:18
    podrias mostrar el codigo del controlador donde tienes las funciones. para ayudarte
  • edited 8:18
    mira lo que quiero hacer es esto:
    public function getphotobyuser&#40;&#41;&#123;
      		$user = $_POST&#91;'user'&#93;;
      		$idpersona = new SoapClient&#40;$this-&gt;ws&#41;;
      		$param = array&#40;'usuario'=&gt;$user&#41;;
            $result = $idpersona-&gt;ObtenerIdPersonaDadoUsuario&#40;$param&#41;;
      		$idfoto = new SoapClient&#40;$this-&gt;fotoid&#41;;
      		$param = array&#40;'idPersona'=&gt;$result-&gt;ObtenerIdPersonaDadoUsuarioResult&#41;;
            $result = $idfoto-&gt;ObtenerFotoDadoIdPersona&#40;$param&#41;;
            $imagen='&lt;img src=http&#58;//photostore&#46;uci&#46;cu/idcards/'&#46;$result-&gt;ObtenerFotoDadoIdPersonaResult&#46;'&#46;jpg /&gt;' ;
            return $imagen
    
    y en la vista donde yo quiera le digo
    &lt;?=img_tag&#40;$imagen&#41;;?&gt;
    
    o
    &lt;?=echo img_tag&#40;$imagen&#41;;?&gt;
    
    como quiera
  • edited 8:18
    en el controlador tendrias que poner:

    $this->imagen = ...


    creo...


    Saludos
  • edited 8:18
    gracias de todas formas pero no...
  • edited 8:18
    que tipo de controlador es???

    ApplicationController,StandardForm ,...



    Saludos
  • edited 8:18
    ApplicationController
  • gracias de todas formas pero no...

    Efectivamente es como le dijo el Sr. wiggly.
    En el controlador colocas:
    $this-&gt;imagen = $imagen_aux;
    


    Y luego en la vista accedes a la imagen colocando el nombre de la variable, así:
    &lt;? echo img_tag&#40;$imagen&#41;; ?&gt;
    


    PD: A proposito sr. linur si coloca la etiqueta de atajo <?= no es necesario hacer un echo, ya que esa es la funcion del =.
  • edited 8:18
    Buenas sr.rogerjose81, pero le informo que no he podido hacerlo, mire el código, puede decirme usted cómo:
    echo'&lt;img src=http&#58;//photostore&#46;uci&#46;cu/idcards/'&#46;$result-&gt;ObtenerFotoDadoIdPersonaResult&#46;'&#46;jpg /&gt;' ;
    
  • mira lo que quiero hacer es esto:
    public function getphotobyuser&#40;&#41;&#123;
            $imagen='&lt;img src=http&#58;//photostore&#46;uci&#46;cu/idcards/'&#46;$result-&gt;ObtenerFotoDadoIdPersonaResult&#46;'&#46;jpg /&gt;' ;
            return $imagen
    
    y en la vista donde yo quiera le digo
    &lt;?=img_tag&#40;$imagen&#41;;?&gt;
    
    o
    &lt;?=echo img_tag&#40;$imagen&#41;;?&gt;
    
    como quiera

    En la parte del metodo getphotobyuser donde pones $imagen = '<img... />', debes colocar $this->imagen = '<img... />' (anteponer $this->).

    Cuando se antepone $this-> en el nombre de una variable en el controlador se hace que ésta este disponible en la vista.

    Entonces si en un metodo del controlador colocas:
    $this-&gt;mensaje = &quot;Hola&quot;;
    

    para acceder y mostrar esa variable en la vista colocarás:
    echo $mensaje;
    
Sign In or Register to comment.