|
|
Línea 63: |
Línea 63: |
| {{Actividad| | | {{Actividad| |
| #Conectar a mysql <!--mysql -u root -proot--> | | #Conectar a mysql <!--mysql -u root -proot--> |
− | #Mira Las bases de datos que tienes | + | #Mira Las bases de datos que tienes <!-- show databases;--> |
− | *Conectar a una base de datos
| + | #usa una base de datos concreta <!--use mysql --> |
− | *Hacer una consuta
| + | #mira las tablas que tiene esa bases de datos <!-- show tables--> |
| + | #mira la estructura de la tabla <!-- show nombreTabla--> |
| + | #Haz una consulta de los valores que tiene su primera columna <!--select campo from tabla;--> |
| + | #ejecuta el comando help |
| + | #sal de sql <!-- quit--> |
| }} | | }} |
| | | |
Revisión de 09:06 24 oct 2014
|
Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos. Ver página de charlas.
|
|
BLOQUE 2 PHP: PROGRACION DE APLICACIONES WEB EN ENTORNO SERVIDOR
¡El servidor te responde
PHP Un lenguaje de script al lado del servidor
BASES DE DATOS
Introducción
- Idea de independizar la base de datos y el lenguaje de programación: concepto de driver, conector y extensión (mysql, mysqli, PDO).
- Para trabajar con bases de datos debemos
- Normalmente también
- Realizaremos Consulta o inserciones
- Procesar información
- Cerrar la base de datos
- PHP tiene un API especifico para trabajar directamente con mysql mysqli
- Para realizar estas acciones disponemos de diversas funciones específicas dentro de PHP,
- También vamos a disponer de la extensión PDO, la cual se independiza del gestor concreto de bases datos que vayamos a utilizar.
- Por lo tanto en este tema vamos a ver dos extensiones
- usar una extensión nativa con su GBD en concreto mysql que viene con el propio lenguaje
- usar una extensión genéricoa que permite conectarse con cualquier gestor de BD.
Introduccion Usao de extensiones orientadas a objetos
- Para trabajar con las extensiones, las usaremos siempre orientadas a objetos, aunque tengan
la correspondiente funcionalidad en el lenguaje estructurado.
- Para recordar muy brevemene posemos usar el siguiente enlace
http://www.desarrolloweb.com/articulos/1540.php
- Posteriormente veremos un tema de php orientado a objetos
- Recordamos que para crear una nueva instancia de una clase usamos el operador new
- Para acceder a los diferentes métodos del objeto instaciado
$miObjeto->metodo($parametros);
- Con estos detalles nos sobra de momento para este tema.
Mysql y su extensión mysqli para php
- Instalar mysql lo hicimos en el primer tema
apt-get install mysql-server mysql-client
- Para parar/arrancar el servicio
service mysql start/stop/restart/status
- El fichero de configuracion
/etc/mysql/my.cnf
- En él podemos ver el puerto (3306 por defecto), el usuario y otros parámetros del servicio
- Podemos accecder a la documentación que php da sobre mysqli (mysql improve), o sea interfaz mysql mejorada http://php.net/manual/es/intro.mysqli.php
- Debmos saber conectarnos por línea de comandos
Actividad
- Conectar a mysql
- Mira Las bases de datos que tienes
- usa una base de datos concreta
- mira las tablas que tiene esa bases de datos
- mira la estructura de la tabla
- Haz una consulta de los valores que tiene su primera columna
- ejecuta el comando help
- sal de sql
|
CONECTAR AL SERVIDOR MYSQL con mysqli
resource mysql_connect($hostname, $user, $password);
- Los parámetros de tipo string identificarían
- $hostname = nombre del host
- $user = usuario
- $password = contraseña
- Esta función retorna el recurso de la conexión
- FALSO si no se ha conectado
SELECCIONAR LA BASE DE DATOS
Dentro del servidor tendremos diferentes bases de datos
Antes de trabajar con una debemos seleccionarla
Si no la seleccionamos se intentará operar con la última seleccionada
bool mysql_select_db ($namedatabase, $conexion)
<?php
$conexion = mysql_connect('localhost', 'manolo', 'manolo');
if (!$conexion) {
die('No conectado : ' . mysql_error());
}
// Seleccionar alumnos como base de datos activa
$db_seleccionada = mysql_select_db('alumnos', $conexion);
if (!$db_seleccionada) {
die ('No puedo conectar con la BD alumno : ' . mysql_error());
}
?>
FUNCIONES die()- mysql_error() y concatenador .
die('texto');
Es una función que aborta la ejecución
previamente visualiza el mensaje del parámetro por pantalla
mysql_error()
visualiza el error que da el sistema por el que no ha podido conectar
.
Es un concatenador de cadenas
echo "Esto es una cadena " . "Esta es otra concatenada a la anterior"
CREAR CONSULTA
resource mysql_query ( string $consulta );
consulta es la consulta a la base de datos
<?php
$resultado = mysql_query('SELECT * from alumnos');
if (!$resultado) {
die('Invalid query: ' . mysql_error());
}
?>
PROCESAR INFORMACIÓN
Ahora ya tenemos los datos con los que queremos trabajar
los tenemos en una variable de tipo consulta
ahora debemos recorrela
La variable es como un vector de filas que hay que recorrer
array mysql_fetch_row ( resource $resultado )
esta función devuelve falso o 0 cuando ya no retorna más filas
si no retorna la siguiente fila de la consulta
la forma de acceder a cada campo será por el índice del array
array[0] .. array[n]
<?php
$resultado = mysql_query("SELECT nombre, apellido, direccion FROMM alumnos");
if (!$resultado) {
die("Could not run query: " . mysql_error();
}
$c=0;
while ($alumno=mysql_fetch_row($result)){
echo "alumno $c nombre $alumno[0] apellido $alumno[1] direccion $alumno[3]");
$c++;
?>
GESTIÓN DE BASE DE DATOS
Conocer todas las bases de datos
mysql_connect('localhost', 'mysql_user', 'mysql_password');
Todas las tablas de una base de datos
resource mysql_list_tables ( string $database [, resource $link_identifier ])
Los campos de una tabla
resource mysql_list_fields ( string $database_name , string $table_name [, resource $link_identifier])
</div>
FUNCIONES
==Definición de funiones
function ‘’’nombre_de_funcion’’’ (’’’’lista_de_parametros’’’’){
’’’’codigo a ejecutar ’’’’
}
Ejemplo de funcion
- Realiza una función que convierta de mayúsculas a minúsculas
Generar pdf desde el código php
pdf=new mPDF();
$mpdf->WriteHTML(' Hello World ');
$mpdf->Output();
-->
|