Está en la página 1de 21

Programacin de Bases de Datos con PHP y MySQL

ISTTA - CUSCO

PHP: la herramienta para el desarrollo WEB


Herramientas Web Forms Herramientas Web Forms

Lenguaje PHP-POO

Proceso de errores

Herramientas Servicios Web

Acceso a datos

Disear

Desarrollar

Depurar

Implantar

Funcionamiento de las arquitecturas de base de datos Web


Una de las aplicaciones ms tiles de PHP es la posibilidad de conectarse a una base de datos de MySQL

El navegador web de un usuario enva una peticin http solicitando una pgina web dada, que se almacena p.ej. en results.php El servidor web recibe la peticin de results.php, recupera los datos y lo pasa al motor de php para su procesamiento. El motor php comienza a analizar la secuencia de comandos, dentro del cual hay un comando que establece la conexin a la base de datos y ejecuta una consulta (query). PHP abre una conexin al servidor MySQL y remite la consulta pertinente. El servidor MySQL recibe la consulta de la BD y la procesa. A continuacin enva, los resultados al motor de PHP El motor de PHP termina de ejecutar la secuencia de comandos, lo que suele implicar la aplicacin de formato a los resultados en HTML. Seguidamente devuelve el cdigo HTML resultante al servidor web. El servidor web devuelve el cdigo HTML, al navegador donde el usuario puede ver los resultados de su consulta o peticin.

DESARROLLO WEB
Herramientas del desarrollador Clientes

Bases de datos
Servicios Web XML

Aplicaciones Web PHP

Motor PHP

Experiencias del usuario

Aplicacin Web PHP


Servidor Web PHP
Clientes
Web Forms Page1. php Page2. php Pginas cdigo trasero Web. config machine. config

Internet

Servicios Web

Cach de Salida

Datos XML

Base de datos

Componentes

Seguridad MySQL
Servidor Web Configuracin PHP predeterminada Aqu est el nombre de usuario y la contrasea o Cliente Autenticacin modo mixto Enviar el nombre de usuario y contrasea en texto claro. Servidor MySQL Cada cuenta de usuario se agrega a grupo login de MySQL No enviar el nombre de usuario y contrasea. Enviar slo que el usuario ha sido autenticado.

Autenticacin slo Windows Servidor Web Autenticacin Windows

Servidor MySQL Slo la cuenta PHP tiene concedido acceso

CREAR LA CONEXIN

Uso de la funcin mysql_connect()


SINTAXIS
<?php
$conexion = mysql_connect([nombre_servidor], [nombre_usuario], [password]);

?>
Ejemplo

<?php
$conexion = mysql_connect(localhost, root, root);

?>

Establecer los parmetros de conexin Uso de la funcin mysql_connect() <?php


$dbhost = 'localhost'; $dbuser = 'root'; $dbpass = 'root'; $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error de coneccin a mysql');

?>

Con Nombre de servidor y Nro. de Puerto


<?php $dbhost = 'db.istta.net:3306'; $dbuser = 'root'; $dbpass = 'root';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) die ('Error en la conexin a mysql'); or

?>

Seleccionar la base de datos


Una vez establecida la conexin, debemos seleccionar la base de datos que utilizaremos:

Uso de la funcin mysql_select_db() <?php


$dbhost = 'localhost'; $dbuser = 'root'; $dbpass = 'root'; $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error de coneccin a mysql'); $dbname = 'dbventas'; mysql_select_db($dbname);

?>

Otra forma de implementar la seleccion de la base de datos

<?php $conexion = mysql_connect('localhost', 'root', 'root'); if (!$conexion) print mysql_error(); else { mysql_select_db('DBVentas', $conexion); } ?>

CERRAR LA CONEXIN <?php // cerrar la conexin a la BD MySQL mysql_close($conexion); ?>

ENVIO DE CONSULTAS (Query)


Una vez establecida la conexin y seleccionada la base de datos, el siguiente paso es realizar consultas a la BD.

Uso de la funcin mysql_query() <?php


$conexion = mysql_connect('localhost', 'root', root'); if (!$conexion) print mysql_error(); else { mysql_select_db("base_de_datos", $conexion); mysql_query("UPDATE usuarios SET nombre=Mariana' WHERE nombre=Margarita'", $conexion); }

?>

config.php
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento sin t&iacute;tulo</title> </head> <body> <?php
// Este es un ejemplo de config.php $dbhost = 'localhost'; $dbuser = 'root'; $dbpass = 'root'; $dbname = dbVentas';

?> </body> </html>

opendb.php
<html"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Libreria para abrir la base de datos</title> </head> <body> <?php //opendb.php //Ejemplo de opendb.php $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error de coneccin a mysql'); mysql_select_db($dbname); ?> </body> </html>

closedb.php
<html> <head> <title>Cerrar la conexin al servidor de la base de datos</title> </head> <body>
<?php // un ejemplo de closedb.php mysql_close($conn); ?>

</body> </html>

createdb.php
<html> <head> <title>Crear base de datos </title> </head> <body> <?php include 'config.php'; include 'opendb.php'; mysql_create_db('dbLibreria'); include 'closedb.php'; ?> </body> </html>

ConexionMySQL.php
<html> <head> <title>Conexin al servidor de la base de datos</title> </head> <body>
<?php $dbhost = 'localhost'; $dbuser = 'root'; $dbpass = 'root'; $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error de conexin a mysql');

print "Conexin correcta con el servidor. <br>"; $dbname = 'dbventas'; mysql_select_db($dbname); print "Seleccin de la base de datos adecuada <br>"; mysql_close($conn); print "Conexin a la base de datos cerrada <br>"; ?>

</body> </html>

Ejemplo: Tabla usuarios campos(nombre, clave)


<?php $nombre_servidor='localhost'; $nombre_usuario='root'; $password='root'; $conexion = mysql_connect($nombre_servidor, $nombre_usuario, $password) or die ("Error de conexin"); print 'Conexion Satisfactoria'; print "<br> "; mysql_select_db(dbVentas",$conexion) or die ("Error en la seleccion de la base de datos"); print 'Base de datos dbVentgas seleccionado'; print "<br> "; mysql_query("insert into usuarios (nombre, clave) values (Rita','nihhonga%&per')", conexion) or die ("error en la consulta query".mysql_error()); print "consulta satisfactoria"; mysql_close($conexion); ?>

Createcontact.php
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento sin t&iacute;tulo</title> </head>

<body> <?php include 'config.php'; include 'opendb.php';


mysql_select_db('dbventas') or die( no se puede seleccionar la base de datos');

$query = 'CREATE TABLE usuarios( '.'uid INT NOT NULL AUTO_INCREMENT, '.'unombre VARCHAR(20) NOT NULL, '.'uclave VARCHAR(20) NOT NULL, '. 'PRIMARY KEY(uid))'; $result = mysql_query($query); print "Todo esta correcto con la creacin de la tabla usuarios en la bd dbventas"; include 'closedb.php'; ?> </body> </html>

Cuando se trabaja con consultas que no regresan resultados, lo nico que retornar ser true en caso de que la consulta se ejecut y false si la consulta es errnea. Cuando se necesita saber si una consulta de este tipo cambi algn dato se puede utilizar la funcin : mysql_affected_rows():

<?php $conexion = mysql_connect('localhost', 'root', root'); if (!$conexion) print mysql_error(); else { mysql_select_db(dbVentas", $conexion); mysql_query("UPDATE usuarios SET nombre=Mariana' WHERE nombre=Margarita'", $conexion); if (mysql_affected_rows($conexion)) print "Se cambio el nombre de usuario<br>"; else print "No pudo cambiarse el nombre de usuario<br>"; } ?>

También podría gustarte