Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Ayuda con llamada a funciones!!

Estas en el tema de Ayuda con llamada a funciones!! en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola por favor necesito que me ayuden a utilizar las funciones de una clase instanciada mediante enlaces, como hago eso? o sea digamos que tengo ...
  #1 (permalink)  
Antiguo 14/06/2007, 17:44
 
Fecha de Ingreso: junio-2007
Mensajes: 3
Antigüedad: 16 años, 10 meses
Puntos: 0
Exclamación Ayuda con llamada a funciones!!

Hola por favor necesito que me ayuden a utilizar las funciones de una clase instanciada mediante enlaces, como hago eso?
o sea digamos que tengo
<?
class Prueba{
public $mensaje;
function __construct($men){
$this->men = $men;
}
function imprimir(){
echo $this->men ;
}
}
quiero hacer algo asi:
$prub = new Prueba('hola');
echo "<a href= '$prub->imprimir()'>Imprimir</a>";
?>
Intente de esa manera pero no funciona, intente tambien concatenarlos o sea utilizar .$prub->imprimir(). pero tampoco da Por favor se que ustedes son los mero meros del php ayudenme se los agredecere mucho.
  #2 (permalink)  
Antiguo 14/06/2007, 18:51
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 3 meses
Puntos: 3
Re: Ayuda con llamada a funciones!!

En tu archivo donde tienes la clase..
Archivo.php
=================
//CODE CLASS
{
...
}
Y aqui instancias..
$Test = new Test();
=========================
CODE HTML
<a href="Archivo.php">Test </a>
Solito va a entrar a la instancia.
Esa es la forma mas facil, pero tambien puede ser a traves de parametros , y en base a eso tu en tu codigo PHP decides a donde enviar, segun te paresca..no te explico mucho por q eestoy por irme..jaja
Sds!
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #3 (permalink)  
Antiguo 14/06/2007, 20:50
 
Fecha de Ingreso: junio-2007
Mensajes: 3
Antigüedad: 16 años, 10 meses
Puntos: 0
Exclamación Re: Ayuda con llamada a funciones!!

Gracias B** y bueno, ahora la duda que tengo, es que al llamar nuevamente al página no se instanciaria otra vez la clase con nuevos atributos, osea perderia los anteriores? y aparte de eso, como podria acceder especificamente a un metodo llamandolo de esa forma?. si alguien pudiera contestar please, sufro al no saber nada jeje
  #4 (permalink)  
Antiguo 14/06/2007, 21:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Ayuda con llamada a funciones!!

Si, por la naturaleza del lenguaje de PHP en cada llamada se instancia una nueva clase a menos que la guardes en una variable de session, asi podras ocupar la misma instancia de la clase.

Saludos.
  #5 (permalink)  
Antiguo 14/06/2007, 22:26
 
Fecha de Ingreso: junio-2007
Mensajes: 3
Antigüedad: 16 años, 10 meses
Puntos: 0
Re: Ayuda con llamada a funciones!!

OH, E=O( bueno eso me pone en aprietos, entonces como le hago para poder acceder mediante ese enlace que les indique al principio del tema a una funcion especifica de ese objeto, ahora si que me perdi o pudiera haber otra manera de que se active una funcion del objeto mediante la interaccion del usuario? o sea el usuario tiene que precionar algo para que recien funcione la funcion del objeto que ya esta utilizando.
  #6 (permalink)  
Antiguo 15/06/2007, 07:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Ayuda con llamada a funciones!!

Puedes poner en el enlace la pagina y llamar a la funcion ejemplo:
Código HTML:
<a href="imprimir.php?do=imprimir">Imprimir!</a> 
Luego creas tu objeto en un archivo imprimir.php:
Código PHP:
require_once( 'class/prueba.php' );
$prub = new Prueba('hola');
if( 
$_GET['do'] == "imprimir" ) {
     
$prub->imprimir();

Cualquier duda puedes preguntar, saludos!
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:27.