Para PHP 5 y superior, se recomienda utilizar el siguiente método para conectarse a MySQL:
Extensión MySQLi ("i" significa mejorada)
PDO (objetos de datos PHP)
En versiones anteriores de PHP usábamos la extensión MySQL. Sin embargo, esta extensión ha quedado obsoleta desde 2012.
Si necesita una respuesta breve, "use la que le resulte más cómoda".
MySQLi y PDO tienen sus propias ventajas:
PDO se utiliza en 12 bases de datos diferentes y MySQLi solo se dirige a bases de datos MySQL.
Por lo tanto, si su proyecto necesita cambiar entre varias bases de datos, se recomienda utilizar PDO, de modo que solo necesite modificar la cadena de conexión y algunas declaraciones de consulta. Con MySQLi, si utiliza una base de datos diferente, deberá reescribir todo el código, incluidas las consultas.
Ambos están orientados a objetos, pero MySQLi también proporciona una interfaz API.
Ambos apoyan las declaraciones preparadas. Las declaraciones preparadas pueden evitar la inyección de SQL y son muy importantes para la seguridad de los proyectos web.
En este capítulo y en los siguientes, utilizaremos los siguientes tres métodos para demostrar PHP operando MySQL:
MySQLi (orientado a objetos)
MySQLi (orientado a procedimientos)
DOP
Linux y Windows: en la mayoría de los casos, la extensión MySQLi se instala automáticamente cuando se instala el paquete php5 mysql.
Para obtener detalles de instalación, consulte: http://php.net/manual/en/mysqli.installation.php
Puede comprobar si la instalación se realizó correctamente a través de phpinfo():
Para obtener detalles de instalación, consulte: http://php.net/manual/en/pdo.installation.php
Puede comprobar si la instalación se realizó correctamente a través de phpinfo():
Antes de acceder a la base de datos MySQL, debemos conectarnos al servidor de la base de datos:
Tenga en cuenta que $connect_error en el ejemplo orientado a objetos anterior se agregó en PHP 5.2.9 y 5.3.0. Si necesita compatibilidad con versiones anteriores, utilice el siguiente código para reemplazar: // Verifique la conexión if (mysqli_connect_error()) { die("Error en la conexión de la base de datos: " . mysqli_connect_error());} |
Tenga en cuenta que en el ejemplo de PDO anterior hemos especificado la base de datos (myDB). PDO necesita configurar el nombre de la base de datos durante el proceso de conexión. Si no se especifica, se generará una excepción. |
La conexión se cerrará automáticamente después de ejecutar el script. También puede utilizar el siguiente código para cerrar la conexión: