Tutorial PHP y MySQL

Tutorial PHP y MySQL

Este tutorial PHP y MySQL es la continuación de uno previo que tengo en mi canal. En el siguiente enlace tengo la lista de reproducción:

Tutorial PHP ConfiguroWeb


En el tutorial inicial, abarco temas exclusivos de PHP desde básico hasta avanzado en 29 vídeos en promedio de más de 30 minutos. En el presente tutorial de PHP y MySQL se abarcarán temas específicos de la relación de PHP y su gestión con las bases de datos.

Tutorial PHP y MySQL Introducción

Esta relación intima entre PHP y MySQL es muy, muy funcional y por este motivo en este blog, publico constantemente aplicaciones de libre distribución y de pago con estas tecnologías.

Que es MySQL

MySQL es un sistema de administración de bases de datos relacionales (RDBMS) desarrollado por Oracle que se basa en un lenguaje de consulta estructurado (SQL).

Un RDBMS es un conjunto de herramientas de software utilizadas para implementar, administrar y consultar bases de datos.

Principales Motivos por los que usar MySQL

  • MySQL es fácil de usar y a la vez muy potente, rápido, seguro y escalable.
  • MySQL se ejecuta en una amplia gama de sistemas operativos, incluidos UNIX o Linux, Microsoft Windows, Apple Mac OS X y otros.
  • MySQL admite SQL estándar (lenguaje de consulta estructurado).
  • MySQL es una solución de base de datos ideal para aplicaciones pequeñas y grandes.
  • MySQL es desarrollado y distribuido por Oracle Corporation.
  • MySQL incluye capas de seguridad de datos que protegen los datos confidenciales de los intrusos.

Que es PHP

PHP es el lenguaje de desarrollo de código abierto más popular del mundo en desarrollo web, que tiene como principal característica su gran capacidad de integración con el código HTML

Como Conectarse a MySQL desde PHP

Tutorial PHP y MySQL

En este Tutorial PHP y MySQL vamos a aprender inicialmente a conectar nuestra aplicación con la base de datos en MySQL.

PHP ofrece dos formas posibles de conexión con bases de datos en MySQL, Las extensiones MySQLi y PDO.

MySQLi es la versión actual y mejorada de la API de MySQL para conectarse efectivamente a las bases de datos. Su gran diferencia con PDO es que este último no es solo compatible con MySQL sino con otras tecnologías, haciendo que la aplicación pueda tener una mayor capacidad de evolución que una exclusiva con MySQLi.

La extensión MySQLi tiene como ventaja sobre PDO que es más sencilla en su configuración y por ende muchos desarrolladores web la prefieren.

Conexión con MySQLi

La conexión a la base de datos con la extensión de MySQLi se puede hacer muy fácilmente a través de la función

mysqli_connect()

A continuación se muestra el código de conexión a la base de datos por línea de procedimientos:

Línea de Procesos

$link = mysqli_connect("donde está alojada la base de datos", "usuario", "contraseña", "nombre de base de datos");

Programación Orientada a Objetos

$mysqli = new mysqli("donde está alojada la base de datos", "usuario", "contraseña", "nombre de base de datos");

Conexión con PDO

PDO no está condenado exclusivamente a trabajar con MySQL, proporciona un capa de abstracción de acceso a los datos, esto significa que, independientemente de con que base de datos se esté se esté trabajando, permitirá que se usen las mismas funciones para realizar consultas y obtener datos.

Programación Orientada a Objetos con PDO

$pdo = new PDO("mysql:host=hostname;dbname=base_de_datos", "usuario", "contraseña");

El parámetro de nombre de host en PDO en la sintaxis anterior es donde está la base de datos alojada (por ejemplo localhost) o la dirección IP del servidor de MySQL en Internet o en un red LAN, mientras que los parámetros de nombre de usuario y contraseña especifican las credenciales para acceder al servidor MySQL.

El siguiente ejemplo muestra cómo conectarse al servidor de base de datos MySQL usando MySQLi por línea de procesos:

Ejemplo de Conexión MySQLi con Línea de Procesos

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
$link = mysqli_connect("localhost", "root", "", "demo");
 
// Verificando Conexión
if($link === false){
    die("ERROR: No se pudo hacer la conexión. " . mysqli_connect_error());
}
 
// Mostrar conexión exitosa
echo "Conexión exitosa desde MySQLi Procedimientos. Información del anfitrión: " . mysqli_get_host_info($link);
?>

Ejemplo de Conexión MySQLi con Programación Orientada a Objetos

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
$mysqli = new mysqli("localhost", "root", "", "demo");
 
// Verificando Conexión
if($mysqli === false){
    die("ERROR: No se pudo hacer la conexión. " . $mysqli->connect_error);
}
 
// Mostrar conexión exitosa
echo "Conexión exitosa desde MySQL con POO: " . $mysqli->host_info;
?>

Ejemplo de Conexión PDO con Programación Orientada a Objetos

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
try{
    $pdo = new PDO("mysql:host=localhost;dbname=demo", "root", "",);
    
    // Establecer el modo de error PDO en excepción
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    // Mostrar conexión exitosa
    echo "Conexión exitosa. Información del Host: " . 
$pdo->getAttribute(constant("PDO::ATTR_CONNECTION_STATUS"));
} catch(PDOException $e){
    die("ERROR: No pudo conectar. " . $e->getMessage());
}
?>

Cerrar la conexión del servidor de base de datos MySQL

La conexión con el servidor de la base de datos MySQL se cerrará automáticamente tan pronto como finalice la ejecución del script. Sin embargo, si deseas cerrar la conexión manualmente se puede hacer llamando a la función mysqli_close() de PHP.

Script de ejemplo de cierre de conexión de base de datos con MySQLi en línea de procesos

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
$link = mysqli_connect("localhost", "root", "", "demo");
 
// Verificando Conexión
if($link === false){
    die("ERROR: No se pudo hacer la conexión. " . mysqli_connect_error());
}
 
// Mostrar conexión exitosa
echo "Conexión exitosa desde MySQLi Procedimientos. Información del anfitrión: " . mysqli_get_host_info($link);

// Cierre de Conexión
mysqli_close($link);
echo "</p></p></p> En esta instancia se ha cerrado la conexión de la base de datos con MySQLi en línea de procesos."

?>

Script de ejemplo de cierre de conexión de base de datos con MySQLi y Programación Orientada a Objetos

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
$mysqli = new mysqli("localhost", "root", "", "demo");
 
// Verificando Conexión
if($mysqli === false){
    die("ERROR: No se pudo hacer la conexión. " . $mysqli->connect_error);
}
 
// Mostrar conexión exitosa
echo "Conexión exitosa desde MySQL con POO: " . $mysqli->host_info;

// Cerrar conexión
$mysqli->close();

echo "</p></p></p> En esta instancia se ha cerrado la conexión de la base de datos con MySQLi con POO"
?>

Script de ejemplo de cierre de conexión de base de datos con PDO

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
try{
    $pdo = new PDO("mysql:host=localhost;dbname=demo", "root", "",);
    
    // Establecer el modo de error PDO en excepción
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    // Mostrar conexión exitosa
    echo "Conexión exitosa. Información del Host: " . 
$pdo->getAttribute(constant("PDO::ATTR_CONNECTION_STATUS"));
} catch(PDOException $e){
    die("ERROR: No pudo conectar. " . $e->getMessage());
}

// Cierre de conexión
unset($pdo);
echo "</p></p></p> En esta instancia se ha cerrado la conexión de la base de datos con PDO"
?>

Cómo crear una base de datos desde PHP

Ya abordamos el tema de como Conectarse a MySQL desde PHP en esta sección del tutorial PHP y MySQL aprenderás cómo ejecutar una consulta SQL para crear una base de datos.

La declaración CREATE DATABASE se utiliza para crear una nueva base de datos en MySQL

A continuación se crea una consulta SQL usando la declaración CREATE DATABASE, pasándola a la función mysqli_query() de PHP para finalmente crear la base de datos.

Creación de la Base de Datos con MySQLi en Línea de Procesos

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
$link = mysqli_connect("localhost", "root", "");
 
// Verificando Conexión
if($link === false){
    die("ERROR: No se pudo hacer la conexión. " . mysqli_connect_error());
}
 
// Creación de la base de datos
$sql = "CREATE DATABASE demo";
if(mysqli_query($link, $sql)){
    echo "Base de Datos Creada Exitósamente";
} else{
    echo "ERROR: No se pudo ejecutar $sql. " . mysqli_error($link);
}
 
// Cierre de la conexión
mysqli_close($link);
?>

Creación de la Base de Datos con MySQLi en POO

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
$mysqli = new mysqli("localhost", "root", "");
 
// Verificando Conexión
if($mysqli === false){
    die("ERROR: No se pudo conectar. " . $mysqli->connect_error);
}
 
// Creación de la base de datos
$sql = "CREATE DATABASE demo";
if($mysqli->query($sql) === true){
    echo "Base de datos creada exitósamente";
} else{
    echo "ERROR: No se pudo ejecutar $sql. " . $mysqli->error;
}
 
// Cierre de la conexión
$mysqli->close();
?>

Creación de la Base de Datos con PDO

<?php
/* Intento de conexión al servidor MySQL. Suponiendo que está ejecutando MySQL
servidor con configuración predeterminada (usuario 'root' sin contraseña) */
try{
    $pdo = new PDO("mysql:host=localhost;", "root", "");
    // Mostrando errores de conexión PDO
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
    die("ERROR: No se pudo establecer la conexión. " . $e->getMessage());
}
 
// Ejecutando la consulta de creación de la base de datos
try{
    $sql = "CREATE DATABASE demo";
    $pdo->exec($sql);
    echo "Base de datos creada exitósamente";
} catch(PDOException $e){
    die("ERROR: No se pudo executar la consulta $sql. " . $e->getMessage());
}
 
// Cierre de la conexión
unset($pdo);
?>

Deja una respuesta

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