PDF de programación - MySQL y Sesiones en PHP

Imágen de pdf MySQL y Sesiones en PHP

MySQL y Sesiones en PHPgráfica de visualizaciones

Publicado el 25 de Junio del 2020
786 visualizaciones desde el 25 de Junio del 2020
2,0 MB
23 paginas
Creado hace 15a (04/11/2008)
MySQL y Sesiones en PHP
y Sesiones en PHP
MySQL

Área de Ingeniería Telemática

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Contenido
Contenido

• Repaso de SQL
• PHP y MySQL

MySQL en PHP

2

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: tipo de datos
Repaso SQL: tipo de datos

• Numéricos

– Standard:

• INTEGER o INT, SMALLINT, DECIMAL o DEC,

NUMERIC

• FLOAT, REAL, DOUBLE PRECISION
• BIT
– Extras:

• TINYINT, MEDIUMINT, BIGINT

• Fecha y hora

– DATETIME, DATE, TIMESTAMP, TIME, YEAR
– Las fechas siempre deben darse en el orden año-mes-

día

MySQL en PHP

3

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: tipo de datos
Repaso SQL: tipo de datos

Tipo de Columna
DATETIME
DATE
TIMESTAMP
TIME
YEAR

“Cero” Valor
'0000-00-00 00:00:00'
'0000-00-00'
00000000000000
'00:00:00'
0000

• Cadena de caracteres
– CHAR y VARCHAR

• Char: longitud fija (0-255). Asigna espacios si la

cadena es más corta

• Varchar: longitud variable (0-255 v5.0.3-, 0-65535

MySQLv5.0.3+)

MySQL en PHP

4

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: tipo de datos
Repaso SQL: tipo de datos

• BINARY y VARBINARY

• Similares a CHAR y VARCHAR
• Contienen cadenas de caracteres binarias (cadenas

de bytes) en lugar de cadenas de carácteres no
binarias (cadenas de caracteres)

• Principalmente se usan para almacenar ficheros

• BLOB y TEXT

– No pueden tener valores DEFAULT
– Su tamaño está prefijado
– TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB
– TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT
– BLOB: cadenas de carácteres binarias
– TEXT: cadenas de carácteres no binarias

MySQL en PHP

5

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: tipo de datos
Repaso SQL: tipo de datos

• ENUM

– Objeto de cadenas de caracteres con un valor elegido

de una lista de valores permitidos que se enumeran
explícitamente en la especificación de columna en
tiempo de creación de la tabla

– Cada valor de la enumeración tiene un índice
– ENUM('uno', 'dos', 'tres') => 'uno' 'dos' 'tres'

• SET

– objeto de cadenas de caracteres que tiene cero o más

valores, cada uno de ellos debe elegirse de una lista de
valores posibles especificada cuando se crea la tabla.

– Los miembros de SET no pueden contener comas
– Puede tener un máximo de 64 miembros distintos
– SET('one', 'two') NOT NULL => '' 'one' 'two' 'one,two'

MySQL en PHP

6

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: SELECT
Repaso SQL: SELECT

• SELECT * FROM tabla
• SELECT nombre_campo as nuevo_nombre FROM tabla
• SELECT * FROM tabla WHERE

nombre_campo=‘valor_campo’

• SELECT * FROM tabla WHERE

nombre_campo=‘valor_campo’ AND/OR
nombre_campo=‘valor_campo’

• SELECT * FROM tabla GROUP BY nombre_campo
• SELECT DISTINCT nombre_campo FROM tabla
• SELECT * FROM tabla nombre_campo LIKE

‘%valor_campo?’

• SELECT * FROM tabla ORDER BY nombre_campo ASC/DESC

MySQL en PHP

7

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: INSERT INTO
Repaso SQL: INSERT INTO

• INSERT INTO tabla (campo_1, campo_2, ...) VALUES

(‘valor_1’, ‘valor_2’, ...)

• Recomendación: siempre poner los nombres de los campos

MySQL en PHP

8

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: UPDATE
Repaso SQL: UPDATE

• UPDATE tabla SET campo_1=‘valor_1’, campo_2=‘valor_2’,

...

• UPDATE tabla SET campo_1=‘valor_1’, campo_2=‘valor_2’,

... WHERE campo_x=‘valor_x’

MySQL en PHP

9

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: DELETE
Repaso SQL: DELETE

• DELETE FROM tabla WHERE
• DELETE FROM tabla WHERE nombre_campo =‘valor_campo’

MySQL en PHP

10

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

Repaso SQL: Otros
Repaso SQL: Otros

• TRUNCATE TABLE tabla => reinicia tabla
• SELECT * FROM tabla_1 WHERE nombre_campo=(SELECT

valor FROM tabla_2 WHERE
nombre_campo_2=‘valor_campo_2’)

• Referencias:

– http://www.w3schools.com/sql/default.asp
– http://dev.mysql.com/doc/refman/5.0/es/index.html

MySQL en PHP

11

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

PHP y MySQL
MySQL
PHP y

• Veamos algunas funciones para conectarse y realizar

queries a un servidor de MySQL:
– mysql_connect()
– mysql_list_dbs(), mysql_select_db()
– mysql_select_db()
– mysql_query()
– mysql_fetch_array()
– mysql_num_rows(), mysql_insert_id()
– mysql_error(), mysql_errno()

MySQL en PHP

12

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

mysql_connect()()
mysql_connect

• Establecer una conexión con un servidor MySQL
resource mysql_connect ( [string server [, string username
int

password

new_link

[,

[,

bool

string

[,
client_flags]]]]])

• Devuelve un recurso que identifica a esa conexión si se

lleva a cabo con éxito, si no devuelve FALSE

• Ejemplo:

$link = mysql_connect("localhost", "mysql_user",

"mysql_password");

• Para cerrar esa conexión se usa mysql_close(), aunque no
es necesario puesto que se cerrará al terminar el script de
PHP. Es recomendable cerrarla.

MySQL en PHP

13

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

mysql_list_dbs()()
mysql_list_dbs

• Lista las bases de datos disponibles en el servidor (si se
tiene permiso)
resource mysql_list_dbs ( [resource link_identifier])

• El argumento es el recurso que identifica a la conexión con

la base de datos ($link en el ejemplo anterior)

• El resultado se puede recorrer como cualquier resultado de

un query

MySQL en PHP

14

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

mysql_select_db()()
mysql_select_db

•• Selecciona una base de datos para todos los
string database_name

queries
Selecciona una base de datos para todos los queries
siguientes
siguientes
[, resource
resource
bool mysql_select_db
bool
link_identifier])])
link_identifier

mysql_select_db ( ( string

database_name [,

Si se le pasa el segundo argumento (la conexión a la BD),
•• Si se le pasa el segundo argumento (la conexión a la BD),
pasa a estar activa la base de datos seleccionada en el
pasa a estar activa la base de datos seleccionada en el
resource dado
dado
resource
•• Sin segundo argumento, activa esa base de datos en la
Sin segundo argumento, activa esa base de datos en la
conexión más reciente al servidor
conexión más reciente al servidor

MySQL en PHP

15

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

mysql_query()()
mysql_query

• Envía una query al servidor

resource mysql_query ( string query [, resource

link_identifier])

• Envía una query (primer argumento) al servidor al que
hace referencia el segundo argumento, a la base de datos
que tenga activa

• Si no hay segundo argumento se emplea la última conexión

con base de datos que se haya creado

• Para SELECT, SHOW, EXPLAIN y DESCRIBE devuelve un

identificador de recurso o FALSE

• Para otras sentencias SQL devuelve TRUE o FALSE

MySQL en PHP

16

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

mysql_fetch_array()()
mysql_fetch_array

• Extrae una fila del resultado de una query

array mysql_fetch_array ( resource result [, int result_type])

• El primer argumento es el resultado de la query
• El segundo argumento nos permite especificar cómo

queremos que nos devuelva la fila:
– MYSQL_ASSOC para que sea un array asociativo cuyas claves

son los nombres de las columnas

– MYSQL_NUM para que sea un array indexado por el número de

columna

– MYSQL_BOTH para que tenga ambas claves (nombres e índice)

• Cada vez que se llama a la función devuelve la siguiente

fila del resultado

• Devuelve FALSE cuando no quedan más filas

MySQL en PHP

17

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

mysql_num_rows()()
mysql_num_rows

• Devuelve el número de filas que tiene el resultado de una

query de tipo SELECT

int mysql_num_rows ( resource result)

• El argumento es el resultado de la query

MySQL en PHP

18

LABORATORIO DE INTERFACES DE REDES
3º Ingeniero Técnico en Informática de Gestión

Área de Ingeniería Telemática

Universidad Pública de Navarra

mysql_insert_id()()
mysql_insert_id

•• Si la última operación de tipo INSERT fue en una tabla con
Si la última operación de tipo INSERT fue en una tabla con
AUTO_INCREMENT devuelve el
devuelve el
una columna con el atributo AUTO_INCREMENT
una columna con el atributo
ID nuevo que se le asignó
ID nuevo que se le asignó

intint mysql_insert_id

mysql_insert_id ( [( [resource

resource link_identifier
  • Links de descarga
http://lwp-l.com/pdf17826

Comentarios de: MySQL y Sesiones en PHP (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad