Saltar al contenido

Crear una conexión entre PHP y MySQL

Establecer una conexión entre PHP y MySQL es esencial para construir aplicaciones web dinámicas. Con esta conexión, puedes acceder y manipular los datos almacenados en una base de datos MySQL a través de scripts PHP. Este artículo proporciona una guía completa para ayudarte a crear una conexión entre PHP y MySQL.

Requisitos previos

Antes de profundizar en la creación de la conexión, es importante asegurarte de contar con los siguientes requisitos:

  • Un servidor web con PHP instalado (como Apache o Nginx)
  • Una base de datos MySQL
  • Extensión PHP MySQL (incluida en la mayoría de las instalaciones de PHP)

Comprender la conexión entre PHP y MySQL

Una conexión entre PHP y MySQL implica dos componentes principales: PHP y una base de datos MySQL. PHP es un lenguaje de scripting del lado del servidor utilizado para crear páginas web dinámicas, mientras que una base de datos MySQL se utiliza para almacenar y recuperar datos.

Para conectar PHP y MySQL, necesitarás usar la extensión mysqli (MySQL Improved), que proporciona un conjunto de funciones para trabajar con una base de datos MySQL. Con la extensión mysqli, puedes realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) en una base de datos a través de scripts PHP.

Establecer una conexión

Para establecer una conexión entre PHP y MySQL, necesitarás usar la función mysqli_connect(). Esta función acepta varios parámetros, incluido el nombre del servidor, el nombre de usuario y la contraseña.

A continuación se muestra un ejemplo de cómo usar la función mysqli_connect():

Ejemplo de PHP de cómo usar la función mysqli_connect

php
<?php 
$server = "localhost";
$username = "your_username";
$password = "your_password";

// Establish connection 
$conn = mysqli_connect($server, $username, $password); 

// Check connection 
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

En el ejemplo anterior, $server se establece en localhost, que es la ubicación predeterminada del servidor MySQL. $username y $password deben establecerse con el nombre de usuario y la contraseña utilizados para acceder a la base de datos.

Después de establecer la conexión, usamos la función mysqli_connect_error() para verificar si la conexión fue exitosa. Si la conexión falla, el script muestra un mensaje de error y termina la conexión. Si la conexión es exitosa, el script muestra "Connected successfully".

Consejo: También puedes pasar el nombre de la base de datos como el cuarto parámetro a mysqli_connect() para simplificar la lógica de conexión y omitir un paso separado de selección de base de datos.

Seleccionar una base de datos

Una vez que hayas establecido una conexión con el servidor MySQL, necesitarás seleccionar una base de datos con la que trabajar. Puedes hacerlo usando la función mysqli_select_db().

A continuación se muestra un ejemplo de cómo usar la función mysqli_select_db():

Ejemplo de PHP de cómo usar la función mysqli_select_db

php
<?php 
$server = "localhost";
$username = "your_username";
$password = "your_password";
$db = "your_database";

// Establish connection 
$conn = mysqli_connect($server, $username, $password); 

// Check connection 
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// Select database 
$select_db = mysqli_select_db($conn, $db); 

// Check database selection 
if (!$select_db) {
    die("Error selecting database: " . mysqli_error($conn));
}
echo "Database selected successfully";
?>

En el ejemplo anterior, $db se establece con el nombre de la base de datos que deseas seleccionar. Después de establecer la conexión, usamos la función mysqli_select_db() para seleccionar la base de datos. La función acepta dos parámetros: la conexión y el nombre de la base de datos.

Luego usamos la función mysqli_error() para verificar si la base de datos se seleccionó correctamente. Si la selección falla, el script muestra un mensaje de error y termina la conexión. Si la selección es exitosa, el script muestra "Database selected successfully".

Cerrar la conexión

Cuando hayas terminado de trabajar con una base de datos MySQL, es importante cerrar la conexión. Esto ayuda a liberar recursos y prevenir posibles problemas de seguridad.

Para cerrar la conexión, puedes usar la función mysqli_close(). A continuación se muestra un ejemplo de cómo usar la función mysqli_close():

Ejemplo de PHP de cómo usar la función mysqli_close

php
<?php 
$server = "localhost";
$username = "your_username";
$password = "your_password";
$db = "your_database";

// Establish connection 
$conn = mysqli_connect($server, $username, $password); 

// Check connection 
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// Select database 
$select_db = mysqli_select_db($conn, $db); 

// Check database selection 
if (!$select_db) {
    die("Error selecting database: " . mysqli_error($conn));
}

// Close connection 
mysqli_close($conn); 
echo "Connection closed";
?>

En el ejemplo anterior, usamos la función mysqli_close() para cerrar la conexión. La función acepta un parámetro: la conexión. El script luego muestra "Connection closed" para confirmar que la conexión se ha cerrado.

Nota de seguridad: En entornos de producción, evita codificar las credenciales. Usa variables de entorno o archivos de configuración para almacenar datos sensibles.

Conclusión

En este artículo, hemos proporcionado una guía completa para ayudarte a crear una conexión entre PHP y MySQL. Cubrimos los requisitos previos, la comprensión de la conexión, el establecimiento de la conexión, la selección de una base de datos y el cierre de la conexión. Con esta guía, ahora deberías poder crear una conexión entre PHP y MySQL y realizar operaciones CRUD en una base de datos a través de scripts PHP.

Para aplicaciones PHP modernas, considera usar PDO o la interfaz orientada a objetos de mysqli, las cuales ofrecen una seguridad mejorada, sentencias preparadas y un mejor manejo de errores.

Práctica

¿Qué se requiere para conectarse a una base de datos MySQL usando PHP?

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.