Hola, segunda parte del tutorial en Codigoprogramacion en el que enseñaré cómo hay que conectarse a la base de datos. Para ello, lo primero será crear la base de datos MySQL en el servidor, yo he creado una base de datos llamada “Tutorial PDO” y voy a poner una sola tabla que se llame “Usuarios” (por ejemplo, puedes poner otras), voy a ponerle dos columnas, un “Id” de tipo Int, 10 de longitud, clave primaria y auto-increment; la segunda columna va a llamarse “Nombre”, un VARCHAR de longitud 10:
Hecho esto procederemos a insertar los datos, yo voy a poner dos Nombres: Javier y Juan, el Id se pone solo.
Ahora pasamos a lo que de verdad es objeto de este tutorial: la programación en PHP. Tengo que admitir que la primera vez que vi el Api de PDO me pareció complejísima, pero realmente no es tan difícil, así que si en un principio no entiendes por qué pongo algunas cosas, no dudes en preguntar.
Bien, vamos a ver cómo se hace una conexión a una base de datos con MySQL normal (el de toda la vida):
<?php mysql_connect('localhost', 'username', 'password') or die ("Fallo."); ?>
Donde localhost, username y password serían el servidor, el nombre de usuario del servidor, y la contraseña del mismo, respectivamente. Esto está muy bien y es muy sencillo de recordar, pero con PDO se hace de otra manera, que quizá parezca algo más complicado al principio pero al fin y al cabo igual de intuitiva:
<?php $conn = new PDO('mysql:host=localhost;dbname=mibasededatos', $usuario, $password); ?>
Aunque parezca raro realmente es muy sencillo: creamos con el “new” una instancia de clase PDO (lo que nos permitirá usar varias a la vez), definimos el tipo de base de datos con “mysql:”, el servidor “localhost” (en este caso), el nombre de la base de datos “dbname=mibasededatos”, y después usando variables (se puede hacer sin), el usuario y la contraseña del servidor de bases de datos.
Como puede haber errores y tenemos que controlarlos mediante el uso de try…catch(…){} de la siguiente manera:
<?php try{ $conn = new PDO('mysql:host=localhost;dbname=mibasededatos', $usuario, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); }catch(PDOException $e){ echo "ERROR: " . $e->getMessage(); } ?>
De esta manera se conecta a la base de datos y en caso de que no pueda saca el error con un echo. Se puede ver que el try..catch hace la función del or die de la sintaxis habitual de PHP y MySQL.
Así se acaba esta primera parte del tutorial de PDO, ¡espero que os haya gustado y no olvidéis comentar!
¡Un saludo!
Hola!
Muy interesante tu tema, pero tengo una consulta, como me conectaria PDO con un servidor remoto a SQL Server….
Me ha venido genial para introducirme en PDO. Muy buenos tutos.
no esta validado este form
Hola estuvo muy interesante pero mi pregunta es que si esta clase de programacion en php es la que me sirve para programar con objetive c
Hola, muy interesante, me preguntaba si esta es la clase de programacion en php que me sirve para implementar con objetive c
Well done to think of soitehmng like that
Hola, interesante tu tutorial pero tengo una pregunta, ya teniendo la conexion como aseguramos que sea segura; es decir como hacer una conexion segura a una base de datos
Gracias!.
[…] Todo esto dejando de lado aspectos de seguridad, ya que esto podría ser “hackeable”. En PDO se hace de una manera completamente distinta pero a la vez mucho más segura, haciendo uso de los “prepared statements”, con el fin de que nuestra web sea más difícil de acceder. Se hace de la siguiente manera (aprovechando el código de la parte 1): […]
estuvo muy interesante