SlideShare una empresa de Scribd logo
1 de 28
Curso básico de PHP & MySQL Ing. Antonio J. Hdez. Blanco. Mail:  [email_address] Ing. Wilian Arroba Mail: [email_address]
Contenido clase # 3 ,[object Object],[object Object],[object Object]
Trabajo con ficheros fopen fopen -- Abre un archivo o una URL Descripción int fopen (string filename, string mode [, int use_include_path]) Si  filename  comienza con "http://" (no es sensible a mayúsculas), se abre una conexión HTTP 1.0 hacia el servidor especificado y se devuelve un apuntador de archivo al comienzo del texto de respuesta.
Trabajo con ficheros No maneja redirecciones HTTP, por eso se debe incluir una barra final cuando se trata de directorios. Si  filename  comienza con "ftp://" (no es sensible a mayúsculas), se abre una conexión ftp hacia el servidor especificado y se devuelve un apuntador al archivo requerido. Si el servidor no soporta ftp en modo pasivo, esto fallará. Se pueden abrir archivo via ftp para leer o para escribir (pero no ambas cosas simultáneamente). Si filename no comienza con nada de lo anterior, el archivo se abre del sistema dearchivos, y se devuelve un apuntador al archivo abierto si el abrir el archivo falla, la función devuelve false.
Trabajo con ficheros mode  puede ser cualquiera de lo siguiente: •  'r'  - Abre para sólo lectura; sitúa el apuntador del archivo al comienzo del mismo. •  'r+'  - Abre para lectura y escritura; sitúa el apuntador del archivo al comienzo del archivo. •  'w'  - Abre para sólo escritura; sitúa el apuntador del archivo al comienzo del archivo y trunca el archivo con longitud cero. Si el archivo no existe, trata de crearlo.
Trabajo con ficheros •  'w+'  - Abre el archivo para lectura y escritura; sitúa el apuntador del archivo al comienzo del archivo y trunca el archivo con longitud cero. Si el archivo no existe, trata de crearlo. •  'a'  - Abre sólo para escribir (añadir); sitúa el apuntador del archivo al final del mismo. Si el archivo no existe, trata de crearlo. •  'a+'  - Abre para lectura y escritura (añadiendo); sitúa el apuntador del  archivo al final del mismo. Si el archivo no existe, trata de crearlo.
Trabajo con ficheros fwrite fwrite -- Escribe archivos en modo binario Descripción int fwrite (int fp, string string [, int length]) fwrite() escribe el contenido de  string  al fichero apuntado por  fp . Si se da el argumento  length , la escritura acaba antes de que  length  bytes sean escritos o se alcance el  final de  string , lo que ocurra primero.
Trabajo con ficheros fread fread -- Lee archivos en modo binario Descripción string fread (int fp, int length) fread() lee hasta  length  bytes del apuntador de fichero referenciado por  fp . La lectura acaba cuando  length  bytes se han leído o se alcanza EOF, lo que ocurra primero. Hagamos un contador sencillo para nuestra web.
Trabajo con BD MySQL Para la creación de BD y tablas usaremos el phpmyadmin que es mas fácil de usar y mas interactivos, pero veremos como hacerlo del shell del sistema.
Trabajo con BD MySQL Conectándose y desconectándose al servidor MySQL Para conectarse al servidor, generalmente se necesita proveer a  MySQL  un nombre de usuario, y un password. Si el servidor corre en una máquina distinta a la que se está utilizando se debe especificar el nombre del host (máquina).  Cuando se conocen todos estos parámetros la conexión se realiza de la siguiente manera: shell> mysql -h host -u user -p Enter password:*********
Trabajo con BD MySQL Si la conexión se realizó con éxito,  mysql  despliega el siguiente mensaje: Welcome to the MySQL monitor. Commands end with; or. Your MySQL connection id is 459 to server version: 3.22.20a-log Type "help" for help. mysql>
Trabajo con BD MySQL El prompt indica que  mysql  está listo para recibir los comandos que ingrese el usuario. Algunas instalaciones de  MySQL  admiten usuarios  anonymous  (sin nombre) cuando el servidor corre en el host local.  En este caso, se debe invocar a el servidor  mysql  sin ninguna opción: shell>mysql Una vez que se ha realizado la conexión con éxito, para desconectarse al servidor en cualquiera de los dos casos anteriores se debe escribir  QUIT  o  control-D .
Trabajo con BD MySQL Creando y usando una base de datos Visualización de las bases de datos existentes en el servidor MySQL Antes de crear una base de datos, se debe conocer que base de datos existen actualmente en el servidor, para ello se utiliza el comando SHOW, de la siguiente manera: mysql> SHOW DATABASES;
Trabajo con BD MySQL +----------+ | Database | +----------+ | mysql | | test | | tmp | +----------+ Esta lista probablemente no es igual en todas las máquinas, pero las bases de datos  mysql  y  test  están siempre entre ellas. La base de datos  mysql  se requiere porque en ella se describe la información de los privilegios de acceso a los usuarios.
Trabajo con BD MySQL Selección de una base de datos Para seleccionar o acceder a una base de datos determinada se utiliza el comando USE: mysql> USE test Database changed Una vez, que se ha realizado la conexión con éxito se puede comenzar a trabajar con la base de datos, pero siempre y cuando se tengan los permisos adecuados.
Trabajo con BD MySQL Si no se tienen los permisos el administrador debe darle los permisos al usuario para poder trabajar, esto se realiza con la ejecución del siguiente comando: mysql> GRANT ALL ON nombre_database.* TO nombre_usuario;
Trabajo con BD MySQL Creación de una base de datos Para crear una base de datos se debe tener permiso para poder crear base de datos en el servidor MySQL , si se tiene el permiso entonces la sentencia a seguir es: mysql> CREATE DATABASE nombre_database; Bajo Unix, los nombres de las bases de datos y de las tablas son sensibles, esto quiere decir que se hace diferencia entre minúsculas y mayúsculas, así es que para referirse a una base de datos determinada hay que llamarla tal como se le nombro cuando fue creada.
Trabajo con BD MySQL Creación de tablas Para crear las tablas que va a contener la base de datos, se realiza de la siguiente forma: mysql> CREATE TABLE nombre_tabla(campo_1 tipo(tamaño), campo_2 tipo(tamaño),...,campo_n tipo(tamaño)); El  campo  indica el nombre de la columna y  tipo(tamaño)  específica el tipo de dato y el espacio que se va a conservar para cada dato almacenado en esa columna.
Trabajo con BD MySQL Ejemplo: codigo int(5), nombre char(25), fecha date, etc.. Cuando se trata de fechas no se específica el tamaño, puesto que ya está determinado. Para visualizar las tablas que tiene una base de datos se usa el mismo comando utilizado para ver las bases de datos, pero con la diferencia de que en vez de  database  se coloca  tables , es decir:
Trabajo con BD MySQL mysql> SHOW TABLES; Para verificar que la tabla ha sido creada de la forma indicada, se usa el comando  DESCRIBE. Ejemplo: Se va a crear una tabla llamada  clientes , de la siguiente forma: mysql> CREATE TABLE clientes( rut char(8),nombre char(25), direccion char(50), telefono int(10)); mysql> DESCRIBE clientes;
Trabajo con BD MySQL +----------+-----------+------+-----+--------+-------+ | Field | Type | Null | Key | Default| Extra | +----------+-----------+------+-----+--------+-------+ | rut | char(12) | YES | | NULL | | | nombre | char(25) | YES | | NULL | | | direccion| char(50) | YES | | NULL | | | telefono | int(10) | YES | | NULL | | +----------+-----------+------+-----+--------+-------+
Trabajo con BD MySQL Esto es muy útil cuando se olvida el nombre o tipo de una columna. El  Field  indica el nombre de la columna,  Type  es el tipo de dato que acepta esa columna,  Null  indica si la columna puede contener valores NULL,  Key  indica la clave por la cual la columna se va a indexar y  Default  específica el valor por defecto que tiene la columna.
Trabajo con BD MySQL Ingreso de Datos a las tablas Para ingresar información a una tabla se puede hacer básicamente de dos maneras. La primera se utiliza cuando se tiene mucha información a ingresar de una sola vez,  entonces es conveniente almacenar esta información en un archivo de texto, es decir,  .txt . Una vez que se tiene este archivo, se procede de la siguiente forma: mysql> LOAD DATA LOCAL INFILE "nombre_archivo.txt" INTO TABLE nombre_tabla;
Trabajo con BD MySQL Para el caso que se desee ingresar un solo registro, entonces la sentencia a seguir es: mysql> INSERT INTO nombre_tabla VALUES (``valor_1'',''valor_2'',...., Los datos a ingresar se separan por comas y van entre comillas. Estos datos indican los valores que va a tomar cada una de las columnas, según el orden en que fueron creadas. En el caso que se quiera ingresar un valor NULL no es necesario las comillas, sólo se coloca NULL.
Trabajo con BD MySQL Recuperación de la Información Para recuperar la información que está contenida en una tabla, la sentencia general a seguir es: mysql> SELECT qué_es_lo_que_se_desea_ver FROM nombre_tabla WHERE condiciones_a_satisfacer; Para los casos en que, se requiera: o Ver o seleccionar toda la información de una tabla: o mysql> SELECT * FROM nombre_tabla; o Seleccionar filas en particular: o mysql> SELECT * FROM nombre_tabla WHERE nombre_columna="lo que se desee buscar"
Trabajo con BD MySQL o Seleccionar columnas en particular: o mysql> SELECT nombre_columna_1, nombre_columna_n FROM nombre_tabla; Esto es conveniente cuando no se desea ver toda la fila o registro, entonces solo se seleccionan aquellas columnas en las que se esté interesado. .
Trabajo con BD MySQL Creación de una bd y su tabla.. Desde el shell CREATE TABLE tablacurso ( id tinyint(3) unsigned NOT NULL auto_increment, nombre varchar(30) DEFAULT '0' , direccion varchar(30) DEFAULT '0' , telefono varchar(30) DEFAULT '0' , email varchar(30) DEFAULT '0' , imagen varchar(30) DEFAULT '0' , PRIMARY KEY (id) );
Trabajo con BD MySQL Conectar desde php <?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) {    die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?>

Más contenido relacionado

La actualidad más candente (19)

Admon PG 1
Admon PG 1Admon PG 1
Admon PG 1
 
58517228 postgre sql-desarrolladoresbasico
58517228 postgre sql-desarrolladoresbasico58517228 postgre sql-desarrolladoresbasico
58517228 postgre sql-desarrolladoresbasico
 
69 Php. Proteccion De Directorios
69 Php. Proteccion De Directorios69 Php. Proteccion De Directorios
69 Php. Proteccion De Directorios
 
Ms dos basico
Ms dos basicoMs dos basico
Ms dos basico
 
Creación de certificados digitales con openssl CA local
Creación de certificados digitales con openssl CA localCreación de certificados digitales con openssl CA local
Creación de certificados digitales con openssl CA local
 
57 Php. Funciones Ftp
57 Php. Funciones Ftp57 Php. Funciones Ftp
57 Php. Funciones Ftp
 
php y mysql
php y mysqlphp y mysql
php y mysql
 
curso-servidores-apache-2
curso-servidores-apache-2curso-servidores-apache-2
curso-servidores-apache-2
 
Manual ldap
Manual ldapManual ldap
Manual ldap
 
Codigo para crear la base de datos
Codigo para crear la base de datosCodigo para crear la base de datos
Codigo para crear la base de datos
 
Tareas varias en cmd
Tareas varias en cmdTareas varias en cmd
Tareas varias en cmd
 
phpMyAdmin
phpMyAdminphpMyAdmin
phpMyAdmin
 
como instalar saba en linux
como instalar saba en linuxcomo instalar saba en linux
como instalar saba en linux
 
ADMINISTRACIÓN DE FICHEROS UBUNTU
ADMINISTRACIÓN DE FICHEROS UBUNTUADMINISTRACIÓN DE FICHEROS UBUNTU
ADMINISTRACIÓN DE FICHEROS UBUNTU
 
Practicas open solaris_v3_2
Practicas open solaris_v3_2Practicas open solaris_v3_2
Practicas open solaris_v3_2
 
Comandos Basicos DOS
Comandos Basicos DOSComandos Basicos DOS
Comandos Basicos DOS
 
21 dns linux_asoitson
21 dns linux_asoitson21 dns linux_asoitson
21 dns linux_asoitson
 
Capitulo 9
Capitulo 9Capitulo 9
Capitulo 9
 
Tarea 4
Tarea 4Tarea 4
Tarea 4
 

Destacado

tutorial de slide.com
tutorial de slide.comtutorial de slide.com
tutorial de slide.com
octabio
 
Prueba4.pdf
Prueba4.pdfPrueba4.pdf
Prueba4.pdf
jcarrey
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysql
I LG
 
Programacion de SQL y MySQL
Programacion de SQL y MySQLProgramacion de SQL y MySQL
Programacion de SQL y MySQL
huritomo1998
 

Destacado (20)

Curso php y_mysql
Curso php y_mysqlCurso php y_mysql
Curso php y_mysql
 
tutorial de slide.com
tutorial de slide.comtutorial de slide.com
tutorial de slide.com
 
Tema4[php]
Tema4[php]Tema4[php]
Tema4[php]
 
Php.y.my sql
Php.y.my sqlPhp.y.my sql
Php.y.my sql
 
Php y MySQL
Php y MySQLPhp y MySQL
Php y MySQL
 
Iniciación PHP 5. PHP y MySQL
Iniciación PHP 5. PHP y MySQLIniciación PHP 5. PHP y MySQL
Iniciación PHP 5. PHP y MySQL
 
Prueba4.pdf
Prueba4.pdfPrueba4.pdf
Prueba4.pdf
 
php-mysql
php-mysqlphp-mysql
php-mysql
 
Visual basic 6 (curso paso a paso)
Visual basic 6 (curso paso a paso)Visual basic 6 (curso paso a paso)
Visual basic 6 (curso paso a paso)
 
Clases de Programación Android
Clases de Programación AndroidClases de Programación Android
Clases de Programación Android
 
Marysabel morillo
Marysabel morilloMarysabel morillo
Marysabel morillo
 
PHP. Bases de Datos
PHP. Bases de DatosPHP. Bases de Datos
PHP. Bases de Datos
 
4.Programación con PHP y MySQL
4.Programación con PHP y MySQL4.Programación con PHP y MySQL
4.Programación con PHP y MySQL
 
Desarrollo de sitios web con php y my sql
Desarrollo de sitios web con php y my sqlDesarrollo de sitios web con php y my sql
Desarrollo de sitios web con php y my sql
 
PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysql
 
Programacion de SQL y MySQL
Programacion de SQL y MySQLProgramacion de SQL y MySQL
Programacion de SQL y MySQL
 
PHP MySql FIEI - UNFV Clase05
PHP MySql FIEI - UNFV Clase05PHP MySql FIEI - UNFV Clase05
PHP MySql FIEI - UNFV Clase05
 
PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06
 
Mysql
MysqlMysql
Mysql
 

Similar a Curso TIC de PHP y MSQL Parte 3 (20)

Html,php
Html,phpHtml,php
Html,php
 
CREACION Y MANEJO DE LA BASE DE DATOS
CREACION Y MANEJO DE LA BASE DE DATOSCREACION Y MANEJO DE LA BASE DE DATOS
CREACION Y MANEJO DE LA BASE DE DATOS
 
Conexion con visual basic 6.0
Conexion con visual basic 6.0Conexion con visual basic 6.0
Conexion con visual basic 6.0
 
Conexion Entre Php Y Mysqul
Conexion Entre Php Y MysqulConexion Entre Php Y Mysqul
Conexion Entre Php Y Mysqul
 
Administracion de base de datos
Administracion de base de datosAdministracion de base de datos
Administracion de base de datos
 
Base de datos dinamicas
Base de datos dinamicasBase de datos dinamicas
Base de datos dinamicas
 
Mysql
MysqlMysql
Mysql
 
MANUAL
MANUALMANUAL
MANUAL
 
Tutorial mysql
Tutorial mysqlTutorial mysql
Tutorial mysql
 
Tutorial mysql
Tutorial mysqlTutorial mysql
Tutorial mysql
 
Tutorial mysql
Tutorial mysqlTutorial mysql
Tutorial mysql
 
04 Primeros pasos con my sql
04 Primeros pasos con my sql04 Primeros pasos con my sql
04 Primeros pasos con my sql
 
mysql comandos.pdf
mysql comandos.pdfmysql comandos.pdf
mysql comandos.pdf
 
Apuntes php
Apuntes phpApuntes php
Apuntes php
 
MySQL - SQL.pdf
MySQL - SQL.pdfMySQL - SQL.pdf
MySQL - SQL.pdf
 
MySQL.pdf
MySQL.pdfMySQL.pdf
MySQL.pdf
 
Parte 08 my sql
Parte 08 my sqlParte 08 my sql
Parte 08 my sql
 
Mysql
MysqlMysql
Mysql
 
Administrando la Instancia en Oracle database 11g-Z052 05
Administrando la Instancia en Oracle database 11g-Z052 05Administrando la Instancia en Oracle database 11g-Z052 05
Administrando la Instancia en Oracle database 11g-Z052 05
 
scribd.vpdfs.com_sql-server-tutorial.pdf
scribd.vpdfs.com_sql-server-tutorial.pdfscribd.vpdfs.com_sql-server-tutorial.pdf
scribd.vpdfs.com_sql-server-tutorial.pdf
 

Último

QUINTA SEXTA GENERACION de COMPUTADORAS
QUINTA  SEXTA GENERACION de COMPUTADORASQUINTA  SEXTA GENERACION de COMPUTADORAS
QUINTA SEXTA GENERACION de COMPUTADORAS
Marc Liust
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
2024020140
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
Yanitza28
 

Último (16)

Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdf
 
QUINTA SEXTA GENERACION de COMPUTADORAS
QUINTA  SEXTA GENERACION de COMPUTADORASQUINTA  SEXTA GENERACION de COMPUTADORAS
QUINTA SEXTA GENERACION de COMPUTADORAS
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
 
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el tema
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
2023 07 Casos prácticos para Realidad aumentada, metaverso y realidad extendida
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Función del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacionFunción del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacion
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
 

Curso TIC de PHP y MSQL Parte 3

  • 1. Curso básico de PHP & MySQL Ing. Antonio J. Hdez. Blanco. Mail: [email_address] Ing. Wilian Arroba Mail: [email_address]
  • 2.
  • 3. Trabajo con ficheros fopen fopen -- Abre un archivo o una URL Descripción int fopen (string filename, string mode [, int use_include_path]) Si filename comienza con &quot;http://&quot; (no es sensible a mayúsculas), se abre una conexión HTTP 1.0 hacia el servidor especificado y se devuelve un apuntador de archivo al comienzo del texto de respuesta.
  • 4. Trabajo con ficheros No maneja redirecciones HTTP, por eso se debe incluir una barra final cuando se trata de directorios. Si filename comienza con &quot;ftp://&quot; (no es sensible a mayúsculas), se abre una conexión ftp hacia el servidor especificado y se devuelve un apuntador al archivo requerido. Si el servidor no soporta ftp en modo pasivo, esto fallará. Se pueden abrir archivo via ftp para leer o para escribir (pero no ambas cosas simultáneamente). Si filename no comienza con nada de lo anterior, el archivo se abre del sistema dearchivos, y se devuelve un apuntador al archivo abierto si el abrir el archivo falla, la función devuelve false.
  • 5. Trabajo con ficheros mode puede ser cualquiera de lo siguiente: • 'r' - Abre para sólo lectura; sitúa el apuntador del archivo al comienzo del mismo. • 'r+' - Abre para lectura y escritura; sitúa el apuntador del archivo al comienzo del archivo. • 'w' - Abre para sólo escritura; sitúa el apuntador del archivo al comienzo del archivo y trunca el archivo con longitud cero. Si el archivo no existe, trata de crearlo.
  • 6. Trabajo con ficheros • 'w+' - Abre el archivo para lectura y escritura; sitúa el apuntador del archivo al comienzo del archivo y trunca el archivo con longitud cero. Si el archivo no existe, trata de crearlo. • 'a' - Abre sólo para escribir (añadir); sitúa el apuntador del archivo al final del mismo. Si el archivo no existe, trata de crearlo. • 'a+' - Abre para lectura y escritura (añadiendo); sitúa el apuntador del archivo al final del mismo. Si el archivo no existe, trata de crearlo.
  • 7. Trabajo con ficheros fwrite fwrite -- Escribe archivos en modo binario Descripción int fwrite (int fp, string string [, int length]) fwrite() escribe el contenido de string al fichero apuntado por fp . Si se da el argumento length , la escritura acaba antes de que length bytes sean escritos o se alcance el final de string , lo que ocurra primero.
  • 8. Trabajo con ficheros fread fread -- Lee archivos en modo binario Descripción string fread (int fp, int length) fread() lee hasta length bytes del apuntador de fichero referenciado por fp . La lectura acaba cuando length bytes se han leído o se alcanza EOF, lo que ocurra primero. Hagamos un contador sencillo para nuestra web.
  • 9. Trabajo con BD MySQL Para la creación de BD y tablas usaremos el phpmyadmin que es mas fácil de usar y mas interactivos, pero veremos como hacerlo del shell del sistema.
  • 10. Trabajo con BD MySQL Conectándose y desconectándose al servidor MySQL Para conectarse al servidor, generalmente se necesita proveer a MySQL un nombre de usuario, y un password. Si el servidor corre en una máquina distinta a la que se está utilizando se debe especificar el nombre del host (máquina). Cuando se conocen todos estos parámetros la conexión se realiza de la siguiente manera: shell> mysql -h host -u user -p Enter password:*********
  • 11. Trabajo con BD MySQL Si la conexión se realizó con éxito, mysql despliega el siguiente mensaje: Welcome to the MySQL monitor. Commands end with; or. Your MySQL connection id is 459 to server version: 3.22.20a-log Type &quot;help&quot; for help. mysql>
  • 12. Trabajo con BD MySQL El prompt indica que mysql está listo para recibir los comandos que ingrese el usuario. Algunas instalaciones de MySQL admiten usuarios anonymous (sin nombre) cuando el servidor corre en el host local. En este caso, se debe invocar a el servidor mysql sin ninguna opción: shell>mysql Una vez que se ha realizado la conexión con éxito, para desconectarse al servidor en cualquiera de los dos casos anteriores se debe escribir QUIT o control-D .
  • 13. Trabajo con BD MySQL Creando y usando una base de datos Visualización de las bases de datos existentes en el servidor MySQL Antes de crear una base de datos, se debe conocer que base de datos existen actualmente en el servidor, para ello se utiliza el comando SHOW, de la siguiente manera: mysql> SHOW DATABASES;
  • 14. Trabajo con BD MySQL +----------+ | Database | +----------+ | mysql | | test | | tmp | +----------+ Esta lista probablemente no es igual en todas las máquinas, pero las bases de datos mysql y test están siempre entre ellas. La base de datos mysql se requiere porque en ella se describe la información de los privilegios de acceso a los usuarios.
  • 15. Trabajo con BD MySQL Selección de una base de datos Para seleccionar o acceder a una base de datos determinada se utiliza el comando USE: mysql> USE test Database changed Una vez, que se ha realizado la conexión con éxito se puede comenzar a trabajar con la base de datos, pero siempre y cuando se tengan los permisos adecuados.
  • 16. Trabajo con BD MySQL Si no se tienen los permisos el administrador debe darle los permisos al usuario para poder trabajar, esto se realiza con la ejecución del siguiente comando: mysql> GRANT ALL ON nombre_database.* TO nombre_usuario;
  • 17. Trabajo con BD MySQL Creación de una base de datos Para crear una base de datos se debe tener permiso para poder crear base de datos en el servidor MySQL , si se tiene el permiso entonces la sentencia a seguir es: mysql> CREATE DATABASE nombre_database; Bajo Unix, los nombres de las bases de datos y de las tablas son sensibles, esto quiere decir que se hace diferencia entre minúsculas y mayúsculas, así es que para referirse a una base de datos determinada hay que llamarla tal como se le nombro cuando fue creada.
  • 18. Trabajo con BD MySQL Creación de tablas Para crear las tablas que va a contener la base de datos, se realiza de la siguiente forma: mysql> CREATE TABLE nombre_tabla(campo_1 tipo(tamaño), campo_2 tipo(tamaño),...,campo_n tipo(tamaño)); El campo indica el nombre de la columna y tipo(tamaño) específica el tipo de dato y el espacio que se va a conservar para cada dato almacenado en esa columna.
  • 19. Trabajo con BD MySQL Ejemplo: codigo int(5), nombre char(25), fecha date, etc.. Cuando se trata de fechas no se específica el tamaño, puesto que ya está determinado. Para visualizar las tablas que tiene una base de datos se usa el mismo comando utilizado para ver las bases de datos, pero con la diferencia de que en vez de database se coloca tables , es decir:
  • 20. Trabajo con BD MySQL mysql> SHOW TABLES; Para verificar que la tabla ha sido creada de la forma indicada, se usa el comando DESCRIBE. Ejemplo: Se va a crear una tabla llamada clientes , de la siguiente forma: mysql> CREATE TABLE clientes( rut char(8),nombre char(25), direccion char(50), telefono int(10)); mysql> DESCRIBE clientes;
  • 21. Trabajo con BD MySQL +----------+-----------+------+-----+--------+-------+ | Field | Type | Null | Key | Default| Extra | +----------+-----------+------+-----+--------+-------+ | rut | char(12) | YES | | NULL | | | nombre | char(25) | YES | | NULL | | | direccion| char(50) | YES | | NULL | | | telefono | int(10) | YES | | NULL | | +----------+-----------+------+-----+--------+-------+
  • 22. Trabajo con BD MySQL Esto es muy útil cuando se olvida el nombre o tipo de una columna. El Field indica el nombre de la columna, Type es el tipo de dato que acepta esa columna, Null indica si la columna puede contener valores NULL, Key indica la clave por la cual la columna se va a indexar y Default específica el valor por defecto que tiene la columna.
  • 23. Trabajo con BD MySQL Ingreso de Datos a las tablas Para ingresar información a una tabla se puede hacer básicamente de dos maneras. La primera se utiliza cuando se tiene mucha información a ingresar de una sola vez, entonces es conveniente almacenar esta información en un archivo de texto, es decir, .txt . Una vez que se tiene este archivo, se procede de la siguiente forma: mysql> LOAD DATA LOCAL INFILE &quot;nombre_archivo.txt&quot; INTO TABLE nombre_tabla;
  • 24. Trabajo con BD MySQL Para el caso que se desee ingresar un solo registro, entonces la sentencia a seguir es: mysql> INSERT INTO nombre_tabla VALUES (``valor_1'',''valor_2'',...., Los datos a ingresar se separan por comas y van entre comillas. Estos datos indican los valores que va a tomar cada una de las columnas, según el orden en que fueron creadas. En el caso que se quiera ingresar un valor NULL no es necesario las comillas, sólo se coloca NULL.
  • 25. Trabajo con BD MySQL Recuperación de la Información Para recuperar la información que está contenida en una tabla, la sentencia general a seguir es: mysql> SELECT qué_es_lo_que_se_desea_ver FROM nombre_tabla WHERE condiciones_a_satisfacer; Para los casos en que, se requiera: o Ver o seleccionar toda la información de una tabla: o mysql> SELECT * FROM nombre_tabla; o Seleccionar filas en particular: o mysql> SELECT * FROM nombre_tabla WHERE nombre_columna=&quot;lo que se desee buscar&quot;
  • 26. Trabajo con BD MySQL o Seleccionar columnas en particular: o mysql> SELECT nombre_columna_1, nombre_columna_n FROM nombre_tabla; Esto es conveniente cuando no se desea ver toda la fila o registro, entonces solo se seleccionan aquellas columnas en las que se esté interesado. .
  • 27. Trabajo con BD MySQL Creación de una bd y su tabla.. Desde el shell CREATE TABLE tablacurso ( id tinyint(3) unsigned NOT NULL auto_increment, nombre varchar(30) DEFAULT '0' , direccion varchar(30) DEFAULT '0' , telefono varchar(30) DEFAULT '0' , email varchar(30) DEFAULT '0' , imagen varchar(30) DEFAULT '0' , PRIMARY KEY (id) );
  • 28. Trabajo con BD MySQL Conectar desde php <?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) {    die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?>