Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/07/2007, 12:56
Avatar de marcosr
marcosr
 
Fecha de Ingreso: agosto-2005
Ubicación: Montevideo, Uruguay
Mensajes: 451
Antigüedad: 19 años, 4 meses
Puntos: 5
(aprendiendo) No puedo hacer funcionar mis clases, ayuda por favor.

Hola amigos, la siguiente es mi primera clase con POO con un rejunte de cosas aprendidas hoy de las FAQs del foro.

De hecho estoy intentando hacer yo solo una clase para mostrar los usuarios en línea en base a la que está posteada en las FAQs de POO.

Hasta ahora tengo lo siguiente:

Código PHP:
<?php

class conectados {

    var 
$ahora;

    function 
conectados() {
    
        
// Conexión a la BD
    
        
$conex mysqli_connect('localhost''usuario''contraseña''BD') or trigger_error(mysqli_error,E_USER_ERROR); 
        
        
// Calculo de tiempo que se permitirá como conectado
        
        
$tiempo_permitido 1800;
        
$tiempo_actual time();
        
$tiempo $tiempo_actual $tiempo_permitido;
        
        
// Consulta a la BD que nos trae los usuarios conectados

        
$query_conectados "SELECT * FROM conectados WHERE (tiempo >= '$tiempo')";
        
$conectados mysqli_query($conex$query_conectados) or die(mysqli_error($conex));
        
$row_conectados mysqli_fetch_assoc($conectados);
        
$this->ahora mysqli_num_rows($conectados);
        
        function 
cuantos() {
        
            echo 
$this->ahora;
        
        }
        
        
// Bucle que muestra en pantalla a esos usuarios
        
        
function quienes() {
        
            do { echo 
$row_conectados['usuario'].', '; } while ($row_conectados mysqli_fetch_assoc($conectados));
            
        }
        
        
// Sentencia, consulta, que borra a los usuarios con tiempo excedido
        
        
$query_borrar "DELETE FROM conectados WHERE (tiempo <= '$tiempo')";
        
$borrar mysqli_query($conex$query_borrar) or die(mysqli_error($conex));
        
        
mysqli_close($conex);
    
    }
    
}

?>
Y luego intento llamarla desde la página haciendo lo siguiente:

Código PHP:
<?

// Usuarios en línea

$conectados = new conectados();



?>
<div id="pie">
        <div class="superior"></div>
        <div class="contenido">
            <div id="conectados">
            <div class="superior">Usuarios conectados: (<?php $conectados->cuantos(); ?>)</div>
            <div class="conectados">
            <?php $conectados->quienes(); ?>
            </div>
            </div>
        </div>
    </div>
Pero no funciona, me presenta el siguiente error para los dos objetos:

Código:
Fatal error: Call to undefined method conectados::quienes() in D:\www\sedice\index.php on line 144
Agradecería me marquen todos los errores que encuentren y me si tienen una respuesta a mi pregunta, por qué no funciona, agradecería me den la respeusta.

Muchas gracias !
__________________
Yo hago preguntas inteligentes para obtener respuestas rapidas, y vos?
(únete a la campaña !)