Conectarse a una base datos MySQL usando PHP mysql driver

PHP es uno de los lenguajes más populares para el desarollo de aplicaciones web. Algunas de sus ventajas son:
- Curva de aprendizaje ligera
- No se requieren avanzados conocimientos de administración para configurar un entorno de desarrollo (Existen paquetes como el XAMPP, AppServer, WAMP que te permiten configurar un entorno de desarrollo en solo unos minutos)
- Desarrollo activo
- Amplia comunidad
- Extensa y variada documentación
- Es un estándar dentro de las opciones que brindan los proveedores de alojamientos de aplicaciones web
- Características modernas como:
   * Acceso a bases de datos
   * Programación orientadas a objetos
   * Reflexión (Reflection)
   * Manipulación de ficheros
   * Web scraping
- Varias plataformas de trabajo que agilizan el proceso de desarrollo: Symfony, Zend, CakePHP, Joomla, WordPress, Drupal

Desde su creación PHP ha estado bien integrado con MySQL. En este artículo mostraremos como conectarnos a una base de datos MySQL usando la extensión mysql la cual provee entre otras las funciones: mysql_connect, mysql_select_db y mysql_query las que utilizaremos para conectarnos y ejecutar consultas sql a una base de datos determinada

Abrimos la conexión

// Si falla, termina e imprime el error 
if (false === @mysql_connect("{$host}:{$port}", $user, $passwd)) {
    die(mysql_error());
}

Seleccionamos la Base de datos

// Si falla, termina e imprime el error 
if (false === mysql_select_db($db)) {
     die(mysql_error());
}

Ejecutamos una consulta SQL

// Si falla, termina e imprime el error 
if (false === ($result = mysql_query($query))) {
     die(mysql_error());
}

Ejemplo

Para probar lo anterior creamos el siguiente script usando la BD Sakila:

#!/usr/bin/env php
<?php
/** Copyleft 2011 Librebyte
 * Este script es liberado bajos los téminos de la GNU GPL
 * version 2.0 o superior
 * -----------------------------------------------
 * Última actualización: 18 de noviembre del 2011
 * ------------------------------------------------
 */

$host = 'localhost';
$user = 'root';
$passwd = 'root';
$port = '3306';
$db = 'sakila';

// Abrimos la conexión
if (false === ($conn = @mysql_connect($host . ':' . $port, $user, $passwd))) {
    die( mysql_error() );
}

// Seleccionamos la BD
if (false === mysql_select_db($db)) {
    die( mysql_error() );
}

$query  = 'SELECT DISTINCT CONCAT(first_name, " ",last_name) AS full_name, title, release_year';
$query .= ' FROM actor as a, film_actor as fa, film as f';
$query .= ' WHERE a.actor_id = fa.actor_id AND';
$query .= ' f.film_id = fa.film_id limit 100';

// Ejecutamos una consulta
if (false === ($result = mysql_query($query))) {
    die( mysql_error() );
}

// Imprimimos el resultado
 while ($actor = mysql_fetch_object($result)) {
    echo "NOMBRE: {$actor->full_name}n";
    echo "PELICULA: {$actor->title}n";
    echo "AÑO: {$actor->release_year}n";
    echo "=====================================n";
}

Para ejecutar el script anterior lo copiamos y lo salvamos como sakila.php le asignamos permisos de ejecución (chmod -c a+x sakila.php) y lo ejecutamos ./sakila.php nos mostraría el siguiente resultado.

NOMBRE: PENELOPE GUINESS
PELICULA: ACADEMY DINOSAUR
AÑO: 2006
=====================================
NOMBRE: PENELOPE GUINESS
PELICULA: ANACONDA CONFESSIONS
AÑO: 2006
=====================================
NOMBRE: PENELOPE GUINESS
PELICULA: ANGELS LIFE
AÑO: 2006
=====================================
Los tutoriales aquí en LibreByte están disponible bajo una licencia de software libre. Si le gusta mi trabajo considere:
Comprar un Hosting/VPS o Servidor Dedicado en MCKHost

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.