Esta es una clase que yo hice y la eh venido usando sin problemas, pero en esto último que estoy haciendo tengo problemas y no se porque.
La clase es esta:
Código PHP:
require("global.php");
class DB
{
private $con;
private $pInicio;
private $pLogin;
private $pRegistro;
private $pSalir;
private $MsgError;
private function Conectar()
{
$this->con = mysql_connect(HOST, US, PW) or die("Error de conexión al servidor.");
mysql_select_db(DBASE, $this->con) or die("Error al conectar con la base de datos.");
}
public function __contruct()
{
$this->pInicio = PAGINA_INICIO;
$this->pLogin = PAGINA_LOGIN;
$this->pRegistro = PAGINA_REGISTRO;
$this->pSalir = PAGINA_SALIR;
$this->Conectar();
}
public function NumeroFilas($rs)
{
if (!$rs) {
echo "La consulta no es válida, no se puede extraer el número de filas.";
}
else {
return mysql_num_rows($rs);
}
}
public function NumeroCampos($rs)
{
if (!$rs) {
echo "La consulta no es válida, no se puede extraer el nñumero de campos.";
}
else {
return mysql_num_fields($rs);
}
}
public function Consulta($sql)
{
if (empty($sql)) {
echo "La sentencia SQL no es válida.";
}
else {
return mysql_query($sql, $this->con);
}
}
public function DevolverFilasConsulta($rs)
{
if ($rs) {
return mysql_fetch_object($rs);
}
else {
echo "El parametro para devolver el resultado no es válido.";
}
}
public function VerificarSession()
{
if (!isset($_SESSION["us"])) {
session_unset();
session_destroy();
}
}
public function MostrarLogin()
{
$muestra = "";
if (isset($_SESSION["us"])) {
$muestra = "Bienvenido(a) " . $_SESSION["us"];
$muestra .= " | " . "<a href = '" . $this->pSalir . "'>Salir</a>";
echo $muestra;
}
else {
include("php/minilogo.php");
}
}
private function Salir()
{
session_unset();
session_destroy();
$out = "<script type = 'text/javascript'>";
$out .= "location.href = " . $this->pInicio;
$out .= "</script>";
}
public function Logearse($usuario, $clave)
{
$rs = $this->Consulta("SELECT * FROM " . TABLA_USUARIOS . " WHERE us_name = '" . $usuario . "' AND us_clave = '" . $clave ."'");
$result = ($this->NumeroFilas($rs)) ? 1 : 0;
if ($result == 1) {
$_SESSION["us"] = $usuario;
}
header("Location: " . $this->pInicio);
}
public function MostrarCuadroCategorias()
{
echo "<span class='titlecarritoinfo'>Busque por categoría</span>";
echo "<p>";
echo "Seleccione una categoría<br />";
echo "<select name='categorias' id='categorias' class='selectwidth' onchange='javascript:cargarSubcategorias();'>";
echo "<option value=''>[ Seleccione ]</option>";
$rs = $this->Consulta("SELECT * FROM categorias ORDER BY cat_des");
while ($ob = $this->DevolverFilasConsulta($rs)) {
echo "<option value=".$ob->cat_id.">".$ob->cat_des."</option>";
}
echo "</p>";
echo "<div id='subcategorias'></div>";
}
}
Código PHP:
session_start();
require("php/global/db.class.php");
$inicl = new DB();
Código PHP:
$str = "SELECT * FROM categorias";
$rs = $inicl->Consulta($str);
$nr = $inicl->NumeroFilas($rs);
$i = 0;
while ($ob = $inicl->DevolverFilasConsulta($rs)) {
echo "<li class='categorias'>" . $ob->cat_des . "</li>";
}
Código PHP:
$nr = $inicl->NumeroFilas($rs);
...
$ob = $inicl->DevolverFilasConsulta($rs)
Gracias de antemano.