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

Error con clase abstracta

Estas en el tema de Error con clase abstracta en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Podrian ayudarme diciendome por que me arroja este mensaje al correr la siguiente clase?: Código PHP: <?php require_once  'checkData.php' ; require_once  'database.php' ; require_once  'MySQL.php' ...
  #1 (permalink)  
Antiguo 17/03/2012, 15:00
 
Fecha de Ingreso: marzo-2012
Mensajes: 9
Antigüedad: 9 años, 4 meses
Puntos: 0
Error con clase abstracta

Podrian ayudarme diciendome por que me arroja este mensaje al correr la siguiente clase?:

Código PHP:
<?php
require_once 'checkData.php';
require_once 
'database.php';
require_once 
'MySQL.php';
require_once 
'Sql.php';

abstract class 
step2
{
    public function 
run($array)
    {
        
$sql = new Sql($array);
        
$sql->prepareToinsert();
        
        
$db = new database(new MySQL());
        
$db->ejecutar($sql);
    }
}

$array $_POST;

step2::run($array);
Mensaje:
Código PHP:
Strict StandardsNon-static method step2::run() should not be called statically in C:xampphtdocssavoyxpressstep2.php on line 27 

Aun arrojando el error el script hace su trabajo...

Apartir de un array crea una sentencia sql, el array debe ser del tipo

Código PHP:
("nombre_de_la_tabla" => "Valor"); 
  #2 (permalink)  
Antiguo 17/03/2012, 19:38
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 10 años
Puntos: 793
Respuesta: Error con clase abstracta

run() no es un método estático, no debe ser llamado estáticamente. Debes agregarle la palabra static:

Código PHP:
Ver original
  1. static public function run($array) {
  2. //código
  3. }

o sino quitarle el abstract a la clase e instanciar la clase step2, para llamar al método

$step2->run($array);

otra opción es desactivar los errores de tipo Strict Standards, cosa que yo no recomiendo.

Ya tu decides que hacer.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 17/03/2012, 21:07
 
Fecha de Ingreso: marzo-2012
Mensajes: 9
Antigüedad: 9 años, 4 meses
Puntos: 0
Respuesta: Error con clase abstracta

Wow gracias... estoy aprendiendo sobre poo en php y aun me falta mucho por entender... muchas gracias !!

Etiquetas: clase, class, php
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:50.