Está en la página 1de 14

¿Cómo usar PHP para insertar datos en MySQL?

Cómo insertar en MySQL desde PHP
1. Establecer una conexión entre tu aplicación y el servidor MySQL.
2. Generar el código SQL que corresponde con la operación que buscás
realizar.
3. Enviar el comando a través de la conexión.
4. Evaluar el resultado.

Razones de utilizar PHP y MySQL


Algunas de las principales razones y ventajas del uso de PHP y MySQL en la
actualidad son las siguientes:

Ambos son gratuitos y se descargan desde la web o desde aplicaciones que


podemos descargar desde la misma, como por ejemplo XAMPP, que instala PHP
y MySQL juntos y está disponible para Windows, Linux y Mac.

 PHP: https://www.php.net/.
 MySQL: https://www.mysql.com.
 XAMPP: https://www.apachefriends.org/es/index.html.

La curva de aprendizaje de ambos lenguajes es muy baja, por lo tanto es


bastante sencillo aprender tanto PHP como MySQL.

PHP tiene una interacción muy buena con HTML para crear sitios web de una
forma sencilla.

Tiene una comunidad muy amplia donde resolver las dudas, tanto oficial como
extraoficialmente.

Los entornos de desarrollo de PHP y de MySQL son fáciles de utilizar y de


configurar.

Son lenguajes fiables, eficientes y fáciles de usar.

PHP tiene un fácil acceso a software de terceros, es decir, si tenemos que


trabajar con APIs o con software de otros clientes que está realizado en PHP, se
integra muy fácilmente con nuestros desarrollos.

MySQL es una de las bases de datos más potentes y populares que hay en el


mercado.
Si quieres aprender más en profundidad puedes hacer el Curso de PHP y
MySQL de nuestro profesor experto Alex Arenols, en el que aprenderás a conectar
PHP y MySql, a realizar consultas y crear sitios dinámicos.

¿Cuáles son las ventajas de trabajar con PHP?

Ventajas del lenguaje PHP
 Lenguaje totalmente libre y abierto.
 Posee una curva de aprendizaje muy baja.
 Los entornos de desarrollo son de rápida y fácil configuración.
 Fácil de instalar: existen paquetes autoinstalables que
integran PHP rápidamente.
 Fácil acceso e integración con la bases de datos
DESVENTAJAS DE PROGRAMAR EN PHP:
 El inconveniente es que el código fuente no pueda ser ocultado de una
manera eficiente. ...
 Nuestro código estará seguro para ejecutar si es nuestro propio servidor. ...
 Si no lo configuras y/o proteges correctamente dejas abiertas muchas
brechas de seguridad que a la larga tendremos problemas.

Las ventajas de la base de datos MySQL


 Es una base de datos gratuita. Al ser de código abierto, no tiene coste, con
el ahorro que eso conlleva.
 Es muy fácil de usar. ...
 Es una base de datos muy rápida. ...
 Utiliza varias capas de seguridad. ...
 Pocos requerimientos y eficiencia de memoria. ...
 Es compatible con Linux y Windows.
Desventajas:
 Al ser de Software Libre, muchas de las soluciones para las deficiencias del
software no están documentados ni presentan documentación oficial.
 Muchas de sus utilidades tampoco presentan documentación.
 Se debe controlar/monitorizar el rendimiento de las aplicaciones en búsca
de fallos.

Cómo conectar PHP con


Bases de datos MySQL
como conectar PHP a MySQL con un script. De esta manera,
podrás modificar, ver o administrar las tablas creadas en la
base de datos MySQL. Este artículo te mostrará las formas más
fáciles de hacerlo, comencemos.
Descuento en Alojamiento web
 Crear una base de datos MySQL (Opcional)

 Dos formas en que un script PHP puede conectarse a


MySQL
 Uso de MySQLi para conectar un script PHP a MySQL
o Explicación del código MySQLi

 Usar PDO para conectar un script PHP a MySQL


o Explicación del código PDO

 Verificar la conectividad y resolver los errores


comunes
o Error Contraseña Incorrecta

o No se puede conectar con el servidor MySQL

Crear una base de datos


MySQL (Opcional)
Este paso es necesario en caso de que aún no tengas
una base de datos MySQL creada. Si eres un usuario de
Hostinger, puedes crear fácilmente una nueva a través del
hPanel de Hostinger en unos pocos pasos:

1. Busca el menú Bases de datos MySQL en la


sección Bases de datos.

2. Completa los campos necesarios y presiona Crear.

 
Ten en cuenta que al crear una base de datos, esta estará en
blanco y deberás completar los datos  antes de poder
manipularlos.

Toma nota de las credenciales de la base de datos MySQL que


acabas de crear para el siguiente paso. ¡No olvides anotar
también el nombre de usuario y la contraseña de la base de
datos!
Dos formas en que un
script PHP puede
conectarse a MySQL
Hay dos métodos para conectar con PHP a una base de datos
MySQL: MySQLi y PDO.
MySQLi son las siglas de MySQL Improved. Es una extensión
exclusiva de MySQL que agrega nuevas funciones a la interfaz
de una base de datos MySQL. MySQLi es tanto procedimental
como orientada a objetos, siendo el primer atributo heredado de
la versión anterior de MySQL.
El MySQL original divide una tarea en procedimientos lineales,
paso a paso, lo que dificulta la modificación porque tienes que
editar el código desde la parte superior. Mientras tanto, MySQLi
ve los datos como un conjunto de objetos intercambiables con
funciones, lo que permite a los usuarios agregar o eliminar
datos fácilmente.
PDO son las siglas de PHP Data Object. A diferencia de
MySQLi, PDO solo está orientado a objetos y admite varios
tipos de bases de datos diferentes que usan PHP, como
MySQL, MSSQL, Informix y PostgreSQL.
Las funciones originales de mysql_ están en desuso y no
deben usarse porque no son seguras y ya no cuentan con
mantenimiento ni desarrollo.

Una de las características más importantes que ambos admiten


son las declaraciones preparadas, lo que acelera el tiempo
necesario para que MySQL ejecute la misma consulta varias
veces. También se utiliza para prevenir ataques de inyección
de SQL al realizar cambios en la base de datos.
Cualquiera que sea el método que utilices, necesitarás la
información correcta para poder conectarte a la base de datos
MySQL que has creado. Aquí es donde los detalles de la base
de datos MySQL que has guardado previamente son útiles.
También necesitas el nombre de servidor o nombre de
host correcto para la configuración. Hostinger usa «localhost»
como el nombre de host de su servidor MySQL. En general,
este es el nombre que querrás usar si cargaste tu secuencia de
comandos PHP en el mismo servidor que la base de datos.
Por el contrario, si te estás conectando a una base de datos
desde una ubicación remota (por ejemplo, su computadora),
tendrás que usar la dirección IP del servidor MySQL. Para
obtener más detalles, comunícate con tu proveedor de
alojamiento para que puedan proporcionarte la información
correcta sobre qué usar como nombre de host.
Uso de MySQLi para
conectar un script PHP a
MySQL
Sigue estos pasos para usar MySQLi para conectar un script
PHP a MySQL:

1. Ve al Administrador de archivos -> public_html.

2. Crea un Archivo nuevo haciendo clic en el icono del


menú superior.

3. Guárdalo como databaseconnect.php. Puedes


reemplazar el nombre con lo que quieras, solo asegúrate
de estar usando php como extensión.

4. Haz doble clic para abrir el archivo y copia y pega las


siguientes líneas de código en él. Cambia los primeros
cuatro valores debajo de <?php con las credenciales que
anotaste anteriormente.

<?php

$servername = "localhost";

$database = "databasename";

$username = "username";

$password = "password";
// Create connection

$conn = mysqli_connect($servername, $username, $password, $database);

// Check connection

if (!$conn) {

die("Connection failed: " . mysqli_connect_error());

echo "Connected successfully";

mysqli_close($conn);

?>

Explicación del código MySQLi


El método principal utilizado en este script
es mysqli_connect(). Esta es una función interna de PHP para
establecer una nueva conexión a un servidor MySQL.
Al comienzo de nuestro código, vemos pocas declaraciones de
variables y valores asignados a esas variables. Por lo general,
necesitamos cuatro variables para establecer una conexión
adecuada: $servername, $database, $username y
$password. En el código, hemos establecido los datos exactos
de nuestra base de datos como valores para esas variables,
así se pueden pasar a la función.
Si la conexión no es exitosa, se ejecuta la función die(). Esto
básicamente termina con el script y arroja el mensaje de error
de conexión establecido. De forma predeterminada, el error de
conexión de MySQL dirá Connection failed seguido de un
mensaje de error exacto que describe el problema.
Por otro lado, si la conexión MySQL es exitosa, el código
imprimirá Connected successfully.
La última parte del código es mysqli_close, que simplemente
permitirá cerrar la conexión a la base de datos manualmente. Si
no se especifica, las conexiones MySQL se cerrarán por sí
solas una vez que finalice el script.

Usar PDO para conectar un


script PHP a MySQL
El otro método que puedes utilizar para conectar un script PHP
a MySQL es PDO. Es similar al método anterior, pero con una
ligera variación:

1. En public_html, crea un archivo


llamado pdoconfig.php e inserta el siguiente código.
Como siempre, no olvides reemplazar los valores del
marcador de posición con la información de tu base de
datos. Guárdalo y ciérralo una vez que hayas terminado.

<?php

$host = 'localhost';
$dbname = 'databasename';

$username = 'username';

$password = 'password';

2. Crea otro archivo llamado databaseconnect.php en el


mismo directorio, pero con el siguiente código. Si
nombraste el archivo anterior de manera diferente,
asegúrese de cambiar el valor de require_once.

<?php

require_once 'pdoconfig.php';

try {

$conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);

echo "Connected to $dbname at $host successfully.";

} catch (PDOException $pe) {

die("Could not connect to the database $dbname :" . $pe->getMessage());

Explicación del código PDO


Una conexión de base de datos PDO requiere que crees un
nuevo objeto PDO con un Nombre de origen de datos
(DSN – Data Source Name), nombre de
usuario y contraseña.
El DSN define el tipo de base de datos, el nombre de la base
de datos y cualquier otra información, si es necesario. Estas
son las variables y valores que declaramos dentro del
archivo dbconfig.php, referenciados una vez por la
línea require_once en databaseconnect.php.
En este último, encontrarás el código try…catch… Esto
significa que el script intentará (try) conectarse a MySQL
utilizando el código proporcionado, pero si hay un problema, se
ejecutará el código de la sección de captura (catch). Puedes
usar el bloque catch para mostrar mensajes de error de
conexión o ejecutar un código alternativo si falla el bloque try.
Si la conexión es exitosa, imprimirá el mensaje «Connected to
$dbname at $host successfully«. Sin embargo, si el intento
falla, el código de captura mostrará un mensaje de error simple
y eliminará el script.

Verificar la conectividad y
resolver los errores
comunes
Para verificar si la conexión es exitosa, accede a tu dominio
así: tudominio/databaseconnect.php. Si nombras el archivo
PHP de una forma diferente, asegúrate de cambiar la dirección
anterior en consecuencia.
Verás «Connected successfully» o variantes de este mensaje
si todo está funcionando sin problemas.
Ahora, si la conexión no fue exitosa, verás algo diferente. Los
errores son ligeramente diferentes para MySQLi y PDO.

Error Contraseña Incorrecta


Este error ocurre si cambiamos la contraseña o cualquier
credencial en el código PHP (pero no la cambiamos en la base
de datos real).
En caso de que veas un mensaje como «Access denied» o
«Could not connect to database» acompañado de «(using
password: YES)» al final, lo primero que debes hacer es
verificar los detalles de la base de datos. Podría haber un error
tipográfico o una parte faltante.

No se puede conectar con el servidor


MySQL
Si obtienes el mensaje «Can’t connect to MySQL server on
‘server’ (110)» en MySQLi, significa que el script no obtuvo una
respuesta de un servidor. Esto sucede cuando configuramos
«server» en lugar de «localhost» como $servername, y el
nombre no es reconocido.
El mensaje de error en PDO se verá como «Connection failed:
SQLSTATE[Hy000] [2002]» seguido de más detalles que
indican que no se encontró el host My SQL. Pero la forma de
solucionarlo es la misma que la anterior.
Y, por supuesto, siempre es importante recordar una regla de
oro para solucionar un error: comprobar el registro de errores
de su sitio.
El registro se puede encontrar en la misma carpeta donde se
ejecuta el script. Por ejemplo, si estamos ejecutando un script
en public_html, encontraremos el registro error_log en la
misma carpeta.

También podría gustarte