Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal estou trabalhando com um script de administração estava indo tudo certinho mais me deparei com um erro que ainda n consegui resolver vou postar aqui o arquivo do banco.class e usuario.class
usuarios.class.php:
<?php
require_once(dirname(__FILE__).'/autoload.php');
protegeArquivo(basename(__FILE__));
class usuarios extends base{
public function __construct($campos=array()){
parent::__construct();
$this->tabela = "adm_usuarios";
if(sizeof($campos)<=0):
$this->campos_valores = array(
"nome" => NULL,
"email" => NULL,
"login" => NULL,
"senha" => NULL,
"ativo" => NULL,
"administrador" => NULL,
"datacad" => NULL,
);
else:
$this->campos_valores = $campos;
endif;
$this->campopk = "id";
}//construct
public function doLogin($objeto){
$objeto->extras_select = "WHERE login='".$objeto->getValor('login')."' AND senha='".codificaSenha($objeto->getValor('senha'))."' AND ativo='s'";
$this-> ($objeto);
if ($this->linhasafetadas==1):
return TRUE;
else:
return FALSE;
endif;
}
}//fim classe clientes
?>
banco.class.php
<?php
require_once(dirname(__FILE__).'/autoload.php');
protegeArquivo(basename(__FILE__));
abstract class banco{
public $servidor = DBHOST;
public $usuario = DBUSER;
public $senha = DBPASS;
public $nomebanco = DBNAME;
public $conexao = NULL;
public $dataset = NULL;
public $linhasafetadas = -1;
//metodos
public function __construct(){
$this->conecta();public function __destruct(){
if($this->conexao != NULL):
mysql_close($this->conexao);
endif;public function conecta(){
$this->conexao = mysql_connect($this->servidor,$this->usuario,$this->senha,TRUE)
or die($this->trataerro(__FILE__,__FUNCTION__,mysql_errno(),mysql_error(),TRUE));
mysql_select_db($this->nomebanco) or die($this->trataerro(__FILE__,__FUNCTION__,mysql_errno(),mysql_error(),TRUE));
mysql_query("SET NAMES 'utf8'");
mysql_query("SET character_set_connection=utf8");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_results=utf8");
}//conecta
public function inserir($objeto){
$sql = "INSERT INTO ".$objeto->tabela." (";
for($i=0; $i<count($objeto->campos_valores); $i++):
$sql .= key($bjeto->campos_valores);
if($i < (count($objeto->campos_valores)-1)):
$sql .= ", ";
else:
$sql .= ") ";
endif;
next($objeto->campos_valores);
endfor;
reset($objeto->campos_valores);
$sql .= "VALUES (";
for($i=0; $i<count($objeto->campos_valores); $i++):
$sql .= is_numeric($objeto->campos_valores[key($objeto->campos_valores)]) ?
$objeto->campos_valores[key($objeto->campos_valores)] :
"'".$objeto->campos_valores[key($objeto->campos_valores)]."'";
if($i < (count($objeto->campos_valores)-1)):
$sql .= ", ";
else:
$sql .= ") ";
endif;
next($objeto->campos_valores);
endfor;
return $this->executaSQL($sql);
}//inserir
public function atualizar($objeto){
$sql ="UPDATE ".$objeto->tabela." SET ";
for($i=0; $i<count($objeto->campos_valores); $i++):
$sql .= key($bjeto->campos_valores)."=";
$sql .= is_numeric($objeto->campos_valores[key($objeto->campos_valores)]) ?
$objeto->campos_valores[key($objeto->campos_valores)] :
"'".$objeto->campos_valores[key($objeto->campos_valores)]."'";
if($i < (count($objeto->campos_valores)-1)):
$sql .= ", ";
else:
$sql .= " ";
endif;
next($objeto->campos_valores);
endfor;
$sql .= "WHERE ".$objeto->campopk."=";
$sql .= is_numeric($objeto->valorpk) ? $objeto->valorpk : "'".$objeto->valorpk."'";
return $this->executaSQL($sql);
}//atualizar
public function deletar($objeto){
$sql ="DELETE FROM ".$objeto->tabela;
$sql .= " WHERE ".$objeto->campopk."=";
$sql .= is_numeric($objeto->valorpk) ? $objeto->valorpk : "'".$objeto->valorpk."'";
return $this->executaSQL($sql);
}//deletar
public function selecionaTudo($objeto){
$sql = "SELECT * FROM ".$objeto->tabela;
if($objeto->extras_select!=NULL):
$sql .= " ".$objeto->extras_select;
endif;
return $this->executaSQL($slq);
}//seleciona tudo
public function selecionaCampos($objeto){
$sql = "SELECT ";
for($i=0; $i<count($objeto->campos_valores); $i++):
$sql .= is_numeric($objeto->campos_valores[key($objeto->campos_valores)]) ?
$objeto->campos_valores[key($objeto->campos_valores)] :
"'".$objeto->campos_valores[key($objeto->campos_valores)]."'";
if($i < (count($objeto->campos_valores)-1)):
$sql .= ", ";
else:
$sql .= " ";
endif;
next($objeto->campos_valores);
endfor;
$sql .= " FROM ".$objeto->tabela;
if($objeto->extras_select!=NULL):
$sql .= " ".$objeto->extras_select;
endif;
return $this->executaSQL($slq);
}//seleciona campos
public function executaSQL($sql=NULL){
if($sql!=NULL):
$query = mysql_query($sql) or $this->trataerro(__FILE__,__FUNCTION__);
$this->linhasafetadas = mysql_affected_rows($this->conexao);
if(substr(trim(strtolower($sql)),0,6)=='select'):
$this->dataset = $query;
return $query;
else:
return $this->linhasafetadas;
endif;
else:
$this->trataerro(__FILE__,__FUNCTION__,NULL,'Comando SQL nao informado na rotina', FALSE);
endif;
}//executa SQL
public function retornaDados($tipo=NULL){
switch (strtolower($tipo)):
case "array":
return mysql_fetch_array($this->dataset);
break;
case "assoc":
return mysql_fetch_assoc($this->dataset);
break;
case "object":
return mysql_fetch_object($this->dataset);
break;
default:
return mysql_fetch_object($this->dataset);
break;
endswitch;
}//retorna Dados
public function trataerro($arquivo=NULL,$rotina=NULL,$numerro=NULL,$msgerro=NULL,$geraexcept=FALSE){
if($arquivo==NULL) $arquivo="nao informado";
if($rotina==NULL) $rotina="nao informada";
if($numerro==NULL) $numerro=mysql_errno($this->conexao);
if($msgerro==NULL) $msgerro=mysql_error($this->conexao);
$resultado = 'Ocorreu um erro com os seguintes detalhes:<br />
<strong>Arquivo:</strong> '.$arquivo.'<br />
<strong>Rotina:</strong> '.$rotina.'<br />
<strong>Codigo:</strong> '.$numerro.'<br />
<strong>Mensagem:</strong> '.$msgerro;
if($geraexcept==FALSE):
echo($resultado);
else:
die($resultado);
endif;
}//trataerro
}// fim classe banco
?>
Se alguém, puder min ajudar agradeço estou a muito tempo tentando resolver e sem sucesso =/
Vlw mesmo galera!
Carregando comentários...