Foros TXTFULL.COM - Seo, Webmasters, Posicionamiento Web
Una clase en php para conectarte con Mysql - Versión para Impresión

+- Foros TXTFULL.COM - Seo, Webmasters, Posicionamiento Web (http://www.txtfull.com/foros)
+-- Foro: Comunidad (/forumdisplay.php?fid=5)
+--- Foro: Lenguajes de Programación (/forumdisplay.php?fid=9)
+--- Tema: Una clase en php para conectarte con Mysql (/showthread.php?tid=14)

1 2 3 4


Una clase en php para conectarte con Mysql - lobomalo - 2009-04-09 01:36 PM

Código:
<?php

class ConexionDB
{
    private $conexion;
    private $total_consultas;
    
    function __construct(){
        if(!isset($this->conexion)){  
        $this->conexion = (mysql_connect("localhost","usuario","password")) or die(mysql_error());  
        mysql_select_db("Nombre de tu base de datos",$this->conexion) or die(mysql_error());  
          }  
    }
    
    public function consulta($consulta){  
        $this->total_consultas++;  
        $resultado = mysql_query($consulta,$this->conexion);  
        if(!$resultado){  
        echo 'MySQL Error: ' . mysql_error();  
        exit;  
    }  
    return $resultado;  
    }  
    
    public function fetch_array($consulta){  
        return mysql_fetch_array($consulta);  
    }  
    
    public function num_rows($consulta){  
    return mysql_num_rows($consulta);  
    }  
    
    public function getTotalConsultas(){  
    return $this->total_consultas;  
    }  
    
}

$db = new ConexionDB();  
$consulta = $db->consulta("SELECT id FROM tu_tabla");  
if($db->num_rows($consulta)>0){  
while($resultados = $db->fetch_array($consulta)){  
echo "ID: ".$resultados['id']."<br />";  
}  
}



RE: Una clase en php para conectarte con Mysql - h992295@trbvm.com - 2009-04-09 02:46 PM

es pregunta?? o aporte


RE: Una clase en php para conectarte con Mysql - Alvaro_brub - 2009-04-09 08:43 PM

Por lo que se ve es un aporte...

Gracias!!

Salu2!


RE: Una clase en php para conectarte con Mysql - Naguissa - 2009-05-29 07:33 PM

Código PHP:
<?php
if( !isset($conectado) ) {

/**
 * Config. de la BBDD, conexion a MySQL.
 * Rellenar estas variables con los datos del servidor:
 */
    
$config["DB_HOST"] = "localhost";
    
$config["DB_LOGIN"] = "user";
    
$config["DB_PASSWORD"] = "pass";
    
$config["DB_NAME"] = "db_name";

    
// FIN CONFIGURACION


    
$ddbb["db"] = false;

    function 
ddbb_query($q) {
        global 
$ddbb;
        
$n func_num_args();
        if( 
$n ) {
            
$a func_get_args();
            for( 
$i 1$i $n$i++ ) {
                if(
get_magic_quotes_gpc()) $a[$i] = stripslashes($a[$i]);
                if(!
is_numeric($a[$i])) $a[$i] = mysqli_real_escape_string$ddbb["db"], stripslashes($a[$i]));
                }
            
$c call_user_func_array('sprintf'$a);
            if( isset(
$ddbb) && isset($ddbb["debug"]) && $ddbb["debug"] ) echo "\n<!-- [ ".$c." ] -->\n";
            return 
mysqli_query$ddbb["db"], $c);
            }
        if( isset(
$ddbb["debug"]) && $ddbb["debug"] ) echo "\n<!-- [ ".$q." ] -->\n";
        return 
mysqli_query$ddbb["db"], $q);
        }


    function 
ddbb_last_id() {
        global 
$ddbb;
        return 
mysqli_insert_id($ddbb["db"]);
        }


    function 
ddbb_num_rows(&$r) {
        return 
mysqli_num_rows($r);
        }

    function 
ddbb_fetch_array(&$r$i) {
        return 
mysqli_fetch_array($r);
        }

    function 
ddbb_fetch_row(&$r$i) {
        return 
mysqli_fetch_row($r);
        }

    function 
ddbb_bool($b) {
        return ( 
$b );
        }

    if( !( 
$ddbb["db"] = mysqli_connect($config["DB_HOST"], $config["DB_LOGIN"], $config["DB_PASSWORD"], $config["DB_NAME"] ) ) ) {
        echo 
"<p align=\"center\"><b>Error, no he podido conectar a la base de datos.</b></p>";
        }
     else {
        
// nuevo metodo: mysqli_query( $ddbb["db"], "SET NAMES 'utf8'");
        
mysqli_set_charset$ddbb["db"], 'utf8');
        
$conectado true;
        }
    } 
// FIN 


Lo mismo, sin encapsularlo en una clase (no me he molestado), y con protecci


RE: Una clase en php para conectarte con Mysql - educavent - 2009-06-02 05:15 AM

Buenos aportes ambos, se agradecen