Inicio > Practicando PHP > Conexiones PHP a MySQL

Conexiones PHP a MySQL

6 agosto 2013

Generalmente las conexiones a base de datos son divertidas, y ahora han cambiado nueva sintaxis, sin embargo como de costumbre a nivel de apunte expondré las diferentes formas de conectar PHP a MySQL…

  1. Forma clásica:
    mysql_connect($server, $username, $password, $new_link, $client_flags);
    Revisar en PHP.net
  2. Forma persistente:
    <?php
    class MySQLConnectionFactory {
    static $SERVERS = array(
    array(  ‘host’ => ‘myHost1’,        ‘username’ => ‘myUsername1’,
    ‘password’ => ‘myPassword1’, ‘database’ => ‘myDatabase1’),
    array(  ‘host’ => ‘myHost2’,        ‘username’ => ‘myUsername1’,
    ‘password’ => ‘myPassword2′,’database’ => ‘myDatabase2’)
    );
    public static function create() {
    // Figure out which connections are open, automatically opening any connections
    // which are failed or not yet opened but can be (re)established.
    $cons = array();
    for ($i = 0, $n = count(MySQLConnectionFactory::$SERVERS); $i < $n; $i++) {
    $server = MySQLConnectionFactory::$SERVERS[$i];
    $con = mysql_pconnect($server[‘host’], $server[‘username’], $server[‘password’]);
    if (!($con === false)) {
    if (mysql_select_db($server[‘database’], $con) === false) {
    echo(‘Could not select database: ‘ . mysql_error());
    continue;
    }
    $cons[] = $con;
    }
    }
    // If no servers are responding, throw an exception.
    if (count($cons) == 0) {
    throw new Exception
    (‘Unable to connect to any database servers – last error: ‘ . mysql_error());
    }
    // Pick a random connection from the list of live connections.
    $serverIdx = rand(0, count($cons)-1);
    $con = $cons[$serverIdx];
    // Return the connection.
    return $con;
    }
    }
    ?>
    Revisar en PHP.net
  3. Versión mejorada
    mysqli_connect(“myhost”,”myuser”,”mypassw”,”mybd”) or die(“Error ” . mysqli_error($link));
    Revisar en PHP.net
  4. Usando API
    $ mysqli  = new  mysqli ( “example.com” ,  “usuario” ,  “contraseña” ,  “base de datos” );
    Revisar en PHP.net

    Example # 1 Al comparar las tres API MySQL

    <php? 
    // mysqli 
    $mysqli = new  mysqli ( "example.com" ,  "usuario" ,  "contraseña" ,  "base de datos" );
    $result = $mysqli -> consulta ( "¡Hola, querido usuario MySQL" SELECT COMO _message DE DUAL " );
    $row  =  $ result -> fetch_assoc ();
    echo  htmlentities($row ['_message']);
    // PDO 
    $pdo  = new PDO(‘mysql: host = example.com; dbname = base de datos’, ‘usuario’, ‘password’);
    $comunicado  =  $ pdo -> consulta ( “SELECT” Hola, querido usuario de MySQL ‘AS _message DE DOBLE! ” );
    $row  =  $ comunicado -> buscar ( PDO :: FETCH_ASSOC );
    echo  htmlentities ( $ row [ ‘_message’ ]);-Hola, querido usuario de MySQL! COMO _message DE DUAL ” );
    $row  =  mysql_fetch_assoc ( $ result );
    echo  htmlentities ( $ row [ ‘_message’ ]);
    ?>

    El que quiere más que le piquen caña….
Categorías:Practicando PHP
A %d blogueros les gusta esto: