Php y Mysql Para Dummies - Janet Valade

May 22, 2018 | Author: ingcarlosing | Category: Php, Html, My Sql, Web Page, World Wide Web
Share Embed Donate


Short Description

Descripción: Php y Mysql Para Dummies - Janet Valade...

Description

Contenido en un vistazo Introducción................................................................. 1 Parte 1:desarrollar una aplicación Web con Base de datos usando PHP y MySQL ............................. 7 Capítulo 1: Introducción a PHP y MySQL .................................................................. 9 Capítulo 2: Preparar su ambiente de tra b a jo.......................................................... 21 Capítulo 3: Desarrollar una aplicación Web con base de datos ............................. 37

Parte 11: La base de datos MySQL ...............................65 Capítulo 4: Construcción de la base de datos .........................................................67 Capítulo 5: Cómo proteger los datos ...................................................................... 93

Parte

111:PH P ................................................ 115

Capítulo 6: PHP General......................................................................................... 117 Capítulo 7: Bloques de construcción PHP paraprogram as................................... 147 Capítulo 8: Datos entran, datos s a le n .................................................................... 191 Capítulo 9: Mover información de una página Web a o t r a ....................................259

Parte IV: Aplicaciones ............................................. 281 Capítulo 10: Unirlo todo ........................................................................................ 283 Capítulo 11: Construir un catálogo en lín e a .......................................................... 295 Capítulo 12: Construir un sitio Web exclusivo para miembros ............................ 333

Parte V: Los diez m á s

....................................... 361

Capítulo 13: Diez cosas que querrá hacer usando funciones PHP

.....................363

Capítulo 14: Diez descuidos frecuentes en P H P .................................................... 371

Parte

VI: Apéndices

....................311

Apéndice A: Instalación de MySQL ....................................................................... 379 Apéndice B: Instalación de PHP ............................................................................ 395 Apéndice C: Instalación y configuración de Apache ............................................ 409

Indice ..................................................................... 621

Tabla de Contenidos Introducción................................................................. 1 Sobre este libro ........................................................................................ 1 Convenciones utilizadas en este lib r o ......................................................2 Lo que no necesita leer ............................................................................ 3 Suposiciones ingenuas .............................................................................3 Cómo está organizado este lib ro .............................................................. 4 Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y M yS Q L........................................................ 4 Parte II: Base de datos M yS Q L ........................................................ 4 Parte III: PHP ................................................................................... 4 Parte IV: A p licacion es..................................................................... 4 Parte V: Los diez m á s ...................................................................... 5 Parte VI: A p én d ices......................................................................... 5 Iconos usados en este libro ..................................................................... 5 ¿Y ahora adonde ir? ...........................................................:..................... 6

Parte 1: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL ............................. 7 Capítulo 1: Introducción a PHP y MySQL ...................................................... 9 ¿Qué es una aplicación Web con bases de d a to s ? ................................. 10 La base de d a to s ............................................................................ 11 La aplicación: Mover datos desde y hacia la base de d a to s 12 MySQL, mi base de d a to s ........................................................................13 Ventajas de M yS Q L.........................................................................13 Cómo funciona MySQL .................................................................. 14 Comunicación con el servidor MySQL ..........................................15 PHP, un movilizador de d a to s ................................................................. 15 Ventajas de P H P ............................................................................. 16 Cómo funciona PHP .......................................................................17 MySQL y PHP, la pareja perfecta .............................................................18 Ventajas de esta rela ción ............................................................... 18 Cómo funcionan juntos MySQL y P H P .................. u r~ ........................... 19 Mantenerse al día con los cambios en PHP y MySQL ............................19

Capítulo 2: Preparar su am biente de t r a b a jo ............................................. 21 Las herramientas necesarias..................................................................21 Encontrar un lugar para trabajar ........................................................... 22 Un sitio web de la com pañía......................................................... 22 Una compañía de hospedaje de sitios w e b ................................... 24

PHP Y MySQL Para Dummies, 2da Edición Montar y manejar su propio sitio web ........................................ 27 Probando, probando, 1, 2, 3................................................................... 32 Someter PHP a p ru e b a ................................................................. 32 Someter MySQL a p ru eb a .............................................................33

Capítulo 3: D esarrollar una ap licació n W eb con base de datos — 37 Planear su aplicación Web con base de datos ..................................... 37 Identificar lo que espera de la aplicación ................................... 38 Tome en cuenta a los usuarios .................................................... 40 Hacer que el sitio sea fácil de usar ..............................................41 Dejar espacio para expansiones.................................................. 42 E scríbalo.......................................................................................42 Presentamos los dos ejemplos creados para este lib ro ....................... 42 Cosas para v e n d e r ............................ 43 Sólo para Miembros .....................................................................43 Diseñar la base de datos .......................................................................44 Escoger los datos .........................................................................44 Organizar los datos ......................................................................46 Diseñar las bases de datos de los ejem p los...........................................51 Proceso del diseño del Catálogo de mascotas................................. 51 Proceso del diseño del área Sólo para miembros ....................... 53 Tipos de datos ...................................................................................... 56 Datos de caracteres......................................................................56 Datos num éricos.......................................................................... 57 Datos de fecha y hora ..................................................................57 Datos de enumeración..................................................................58 Nombres de los tipos de datos en MySQL .................................. 58 E scríbalo...................................................................................... 59 Un vistazo a los diseños de las bases de datos de los ejemplos ..........59 Tablas de la base de datos de Cosas para vender ...................... 60 Tablas para la base de datos Sólo para miembros ..................... 61 Desarrollar la aplicación ...................................................................... 62 Construir la base de datos .......................................................... 62 Escribir los programas ................................................................63

Parte U: La base de datos MySQL...............................65 Capítulo 4: Construcción de la base de datos ......................................... 67 Cómo comunicarse con MySQL ........................................................... 67 Construir consultas en SQL ........................................................ 68 Enviar consultas en S Q L ....................................................................... 69 Construir una base de d a to s .................................................................75 Crear una base de datos nueva ................................................... 75 Cómo borrar una base de d a to s .................................................. 76 Cómo agregar tablas a una base de datos .................................. 76 Cómo cambiar la estructura de la base de d a to s ........................ 78 M over datos hacia dentro y hacia fuera de una base de datos ........... 79

_____________________________________ Tabla de Contenidos Agregar información ..................................................................... 80 Cómo recuperar inform ación........................................................ 83 Cómo combinar información de tablas .........................................89 Cómo actualizar información......................................................... 93 Cómo eliminar información .......................................................... 94

Capítulo 5: Cómo proteger los datos ............................................................. 95 Controlar el acceso a sus datos ............................................................. 95 Comprender los nombres de las cuentas y los hostnames ..........96 Aprender más sobre contraseñas ................................................. 98 Echemos un vistazo a los permisos .............................................. 99 Cómo configurar cuentas MySQL .........................................................100 Identificar las cuentas existen tes................................................ 102 Cómo agregar cuentas nuevas y cambiar permisos ................... 102 Cómo agregar y cambiar contraseñas .........................................104 Eliminar permisos ....................................................................... 104 Eliminar cuentas........................................................................... 105 Respaldar sus d a to s .............................................................................. 105 Restaurar sus datos .............................................................................. 108 Cómo reparar tablas .................................................................... 108 Cómo restaurar de una copia de resp ald o..................................110

Parte

1:P H P ................................ 115

Capítulo 6: PHP General

................................................................................. 117

Agregar una sección PHP a una página HTML ....................................... 117 Escribir enunciados P H P .......................................................................120 Usar variables P H P ................................................................................ 123 Dar un nombre a una variable ..................................................... 123 Crear y asignar valores a las variables ........................................ 124 Lidiar con avisos ....................................................................... ..125 Usar constantes PHP ............................................................................ 126 Trabajar con números .......................................................................... 127 Trabajar con cadenas de caracteres .................................................... 129 Cadenas entre comillas sencillas versus cadenas entre comillas dobles ............................................................... 130 Juntar cadenas............................................................................. 132 Trabajar con fechas y horas ................................................................. 132 Formatear una fecha ....................................................................133 Almacenar una marca de tiempo en una variab le....................... 134 Usar fechas con M yS Q L ............................................................... 136 Comparar v a lo re s ..................................................................................136 Hacer comparaciones sim p les.....................................................137 Hacer coincidir cadenas de caracteres con patrones .................139 Unir comparaciones con and/or/xor ....................................................143 Agregar comentarios a su programa ....................................................145

ffj¡¡

PHP Y MySQL Para Dummies, 2da Edición Capítulo 7: Bloques de construcción PHP para program as ............. 147 Enunciados simples útiles ................................................................... 148 Usar enunciados echo .................................................................149 Usar enunciados de asignación...................................................152 Usar enunciados de increm ento..................................................153 Usar e x it ....................................................................................... 154 Usar llamados a funciones .......................................................... 154 Usar arreglos PHP ................................................................................ 155 Cómo crear arreglos.................................................................... 155 Cómo visualizar a rre g lo s.............................................................157 Cómo quitar valores de los a rre g lo s ........................................... 157 Cómo ordenar a rre g lo ................................................................. 158 Cómo obtener valores de un arreglo .......................................... 160 Cómo moverse por un a rre g lo .................................................... 162 Arreglos multidimensionales ...................................................... 164 Enunciados condicionales ú tiles.......................................................... 167 Usar enunciados i f .......................................................................168 Usar enunciados switch ..............................................................171 Usar c ic lo s ............................................................................................ 172 Usar ciclos f o r ............................................................................. 173 Usar ciclos while .........................................................................176 Usar ciclos d o..w h ile................................................................... 178 Ciclos infinitos ............................................................................ 179 Escapar de un ciclo ..................................................................... 181 Usar funciones......................................................................................183 Usar variables en funciones........................................................185 Cómo pasar valores entre una función y el programa principal .....186 Usar funciones incorporadas...................................................... 190

Capítulo 8: Datos entran, datos salen ........................................................191 Funciones de PHP/MySQL.................................................................... 192 Hacer una conexión ............................................................................. 193 Conectarse al servidor MySQL ................................................... 194 Seleccionar la base de datos c o rre c ta ........................................ 197 Enviar consultas SQL................................................................... 198 Extraer información de una base de d a to s .......................................... 199 Enviar una consulta SELECT....................................................... 199 Extraer y usar los d a to s .............................................................. 200 Usar funciones para extraer d a to s ............................................. 207 Obtener información del usuario.........................................................211 Usar formularios H T M L .............................................................. 212 Hacer que los formularios sean dinám icos................................ 217 Usar la información del form u lario.............................................230 Revisar la información ................................................................ 233 Dar a los usuarios la oportunidad de escoger, con múltiples botones de envío ..................................................... 242 Insertar información en una base de datos ..........................................244 Preparar los d a to s .......................................................................244

Tabla de Contenidos Agregar información n u e v a .........................................................247 Actualizar información existente ............................................... 251 Poner la información en archivos ........................................................254 Usar un formulario para subir el a rc h iv o ................................... 254 Procesar el archivo cargado ....................................................... 255 Unir todo ..................................................................................... 256

C apítulo 9: M over inform ación de una página W eb a otra ................. 259 M over a su usuario de una página a o t r a ............................................. 259 M over información de una página a o t r a ............................................. 263 Agregar información al URL.......................................................... 264 Almacenar información mediante coo k ies.................................. 269 Pasar información con formularios H T M L .................................. 271 Usar sesiones PHP ................................................................................ 272 Cómo funcionan las sesiones PH P............................................... 272 Abrir sesiones................ 273 Usar variables de sesión P H P .......................................................273 Sesiones sin cookies ....................................................................276 Hacer privadas las sesion es........................................................ 278 Cerrar sesiones PHP ................................................................... 279

Parte 1(J: Aplicaciones ..............................................281 C apítulo 10: Unirlo todo ................................................................................... 283 Organizar la aplicación.......................................................................... 283 Organizarse en el nivel de la ap licación...................................... 284 Organizarse en el nivel del program a..........................................284 Mantenerlo en p r iv a d o ......................................................................... 290 Asegure la seguridad del PC ....................................................... 291 No deje que el servidor web muestre los nombres de archivos 292 Oculte las cosas............................................................................ 292 No confíe en la información de los usuarios............................... 293 Use un servidor web seguro ....................................................... 293 Completar su documentación .............................................................. 294

C apítulo 11: Construir un catálogo en línea

........................................... 295

Diseñar la aplicación ............................................................................ 295 Mostrar mascotas a los c lien tes..................................................296 Agregar mascotas al c a tá lo g o ......................................................297 Construir la base de d a to s ................................................................... 297 Construir la tabla M a sco ta .......................................................... 298 Construir la tabla Tipodem ascota...............................................301 Construir la tabla C o lo r ...............................................................302 Agregar datos a la base de datos ................................................304 Diseñar la apariencia............................................................................305 Mostrar mascotas a los clien tes..................................................305 Agregar mascotas al catálogo...................................................... 309

PHP Y MySQL Para Dummies, 2da Edición Escribir los programas .........................................................................312 Mostrar mascotas a los c lie n te s................................................. 312 Agregar mascotas al catálogo...................................................... 318

Capítulo 12: Construir un sitio W eb exclusivo para miembros . . . .333 Diseñar la aplicación............................................................................ 334 Construir la base de d a to s ...................................................................335 Construir la tabla Miembros .......................................................335 Construir la tabla Entrada.......................................................... 338 Agregar datos a la base de datos ............................................... 339 Diseñar la apariencia ........................................................................... 339 Página inicial de la tien d a........................................................... 340 Página de reg istro....................................................................... 340 Página de bienvenida a los miembros nuevos................................ 343 Sección Exclusivo para Miembros ............................................. 344 Escribir los programas ........................................................................ 344 Escribir Página inicial de la tienda de mascotas ................................. 345 Escribir L o g in ..............................................................................346 Escribir Nuevomiembro ............................................................. 357 Escribir la sección Exclusivo para M iembros................................ 359 Planear para c r e c e r ..............................................................................360

Parte V: Los diez más ............................................. 301 Capítulo 13: Diez cosas que querrá hacer usando funciones PHP . . . .363 Comuniqúese con MySQL ....................................................................363 Envíe un mensaje electrón ico.............................................................. 364 Use sesiones PHP .................................................................................366 Detenga su program a........................................................................... 366 Maneje arreglos ................................................................................... 366 Revise en busca de variables............................................................... 367 Formatee v a lo re s ..................................................................................367 Compare cadenas con patrones ................................................. 368 Averigüe sobre las cadenas ................................................................. 369 Cambie las mayúsculas o minúsculas de las cadenas ........................369

Capítulo 14: Diez descuidos frecuentes en PHP ....................................371 Faltan puntos y c o m a s................................................................ 371 No hay suficientes signos de igual ............................................. 372 Nombres de variables mal e s c rito s ............................................ 372 Faltan signos de d ó la r ................................................................. 372 Comillas revo ltosas.....................................................................373 Output invisible .......................................................................... 373 Arreglos num erados.................................................................... 374 Incluir enunciados PHP .............................................................. 375 Parejas faltantes ..........................................................................375 Paréntesis y corchetes con fu sos................................................ 376

Tabla de Contenidos

Parte Vh Apéndices.....................................................377 Apéndice A: Instalación de MySQL ......................................................379 En Windows ..........................................................................................379 Descargar e instalar M yS Q L ........................................................ 380 Iniciar el servidor M ySQ L.................................................. 381 Configurar el servidor para que se inicie cuando se inicie el PC 383 En Linux/Unix ...................................................... 384 Usar RPM (sólo para Linux)......................... ............................... 384 Desde archivos binarios ............................................................. 386 Desde archivos fuente ................................................................ 389 391 En Mac .... Configurar M yS Q L .............................. 393

Apéndice B: Instalación de P H P ..............................................................395 Instalar PHP en Unix/Linux/Mac con A p a c h e .......................................395 En Unix/Linux...............................................................................395 En Mac OS X ..................................................................................398 Opciones de instalación...................................................................... .401 Configurar Apache para P H P ............. 402 En W in dow s............................................ 403 Configurar su servidor web para P H P ................................................. 405 Configurar A p ach e....................................................................... 405 Configurar IIS ....... 406 Configurar PHP ................................................................................. ...,407

Apéndice C: Instalación y configuración de Apache ....................... 409 Seleccionar una versión de A p a ch e..................................................... 409 Instalar Apache .... 410 .......410 En Linux/Unix................................................... En W in d o w s ........................ 414 En Mac .......................................................... 418 Configurar Apache ...............................................................................419 Cambiar configuraciones ........................................................... 419 Cambiar la ubicación de su espacio w e b .................................... 420 Cambiar el número del p u erto ...............................................420

Indice.....................

4 2 /

xrii

Introducción 4}

# f» * • ® • « * # « ♦

m # # # # # * # ♦ ♦ * ♦ # » # ♦ # # #

•& m * # • * »

* e* » « # * * o

sí que tiene que diseñar un sitio web interactivo. Tal vez su jefe acaba

W » de ponerlo a cargo del catálogo de productos en línea de la compañía. 0 quizá desea desarrollar su propio negocio en la Web. O su hermana desea vender sus cuadros en línea. O se ofreció com o voluntario para montar un si­ tio web exclusivo para los miembros de la asociación de acróbatas de su cir­ co. Cualquiera que sea el motivo, habrá notado que la aplicación necesita almacenar información (por ejemplo, información sobre productos, informa­ ción sobre cuadros, contraseñas de los miembros), y por lo tanto requiere de una base de datos. También habrá notado que la aplicación debe interactuar dinámicamente con el usuario; por ejemplo, el usuario selecciona un produc­ to que desea ver o dígita información sobre su membresía. Este tipo de sitio web es una aplicación Web con base de datos. Asumo que anteriormente ha creado páginas web estáticas usando HTML (HyperText Markup Language), pero crear un sitio web interactivo es un reto nuevo, al igual que diseñar una base de datos. Tal vez le preguntó a tres gu­ rús de la informática conocidos suyos qué debe hacer, y probablemente ellos le dijeron muchas cosas que no entendió. Pero en medio de la jerga técnica, seguramente habrá escuchado las palabras "rápido" y "fácil" y "gratis" men­ cionadas en las mismas oraciones que PHP y MySQL. Ahora desea saber más sobre cómo usar PHP y MySQL para desarrollar el sitio web que necesita. PHP y MySQL trabajan muy bien juntos; es una sociedad dinámica. En este capí­ tulo, aprenderá sobre las ventajas de cada uno, cómo funciona cada uno y cómo funcionan juntos para producir una aplicación Web con bases de datos.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL

(Qué es una aplicación Web con bases de datos7 Una aplicación es un programa o un grupo de programas diseñados para ser usa­ dos por un usuario final (por ejemplo clientes, miembros, acróbatas circenses, etc.). Si el usuario final interactúa con la aplicación por medio de un explorador web, la aplicación es una aplicación para uso en la Web o simplemente una apli­ cación web. Si la aplicación web requiere de almacenamiento de información a largo plazo, por medio de una base de datos, entonces es una aplicación Web con base de datos. Este libro le brinda la información que necesita para desarro­ llar una aplicación Web con base de datos a la cual se pueda tener acceso usan­ do exploradores web como Internet Explorer y Netscape. Una aplicación Web con base de datos está diseñada para ayudarle al usuario a realizar una tarea. Puede ser una aplicación simple que muestre información en la ventana del explorador (por ejemplo, muestra ofertas de trabajo actuales cuando el usuario selecciona el título de un puesto) o puede ser un programa complicado con funcionalidad extendida (por ejemplo, la solicitud para orde­ nar un libro en Amazon.com o la solicitud para pujar en eBay). De modo no sorprendente, una aplicación Web con base de datos consta de una base de datos y una aplicación — sólo dos partes: | v * Base de datos: La base de datos es la memoria de largo plazo de su apli­ cación con base de datos para la Web. La aplicación no puede cumplir su propósito sin la base de datos. No obstante, por sí misma la base de datos no es suficiente. ff Aplicación: La parte de la aplicación es el programa o grupo de progra­ mas que realiza las tareas. Los programas crean la presentación visual que el usuario ve en la ventana del explorador; hacen que la aplicación | sea interactiva al aceptar y procesar la información que el usuario digita en la ventana del explorador; almacenan información en la base de datos y extraen información de la base de datos. (La base de datos es inútil a menos que se puedan insertar y extraer datos de ella.) Las páginas web que usted ha creado anteriormente solo con HTML son estáticas, lo cual significa que el usuario no puede interactuar con la página. Todos los usua­ rios ven la misma página web. Por otro lado, las páginas web dinámicas permiten al usuario interactuar con la página. Diferentes usuarios podrían ver páginas web diferentes. Por ejemplo, un usuario que está viendo el catálogo en línea de los pro ductos de una tienda de muebles escoge ver información sobre sofás, mientras que otro usuario tal vez escoja ver información sobre mesitas para café. Para crear páginas web dinámicas, usted debe usar otro lenguaje además del HTML. Un lenguaje ampliamente usado para crear páginas web dinámicas es JavaScript. JavaScript es útil para varios propósitos, tales como pasadas del ^ (por ejemplo

Capítulo 1: Introducción a PHP y MySQL para resaltar un botón de navegación cuando el usuario mueve el puntero del -ft sobre él) o aceptar y validar información que los usuarios digitan en un formulario web. Sin embargo, no es útil para interactuar con una base de datos. No debe usar­ se JavaScript para mover la información del formulario web a la base de datos. Por el contrario, PHP es un lenguaje particularmente muy bien adaptado para interac­ tuar con bases de datos. PHP puede aceptar y validar la información que los usua­ rios digitan en un formulario web y también puede mover la información a una base de datos. Los programas en este libro están escritos con PHP.

La base de datos El corazón de una aplicación con base de datos para la Web es la base de da­ tos, la cual es la memoria a largo plazo (ojalá más eficiente que mi memoria a largo plazo) que almacena la información de la aplicación. Una base de datos es un gabinete archivador electrónico que almacena información de una forma ordenada, de modo que uno pueda encontrarla cuando la necesita. Después de todo, guardar información sería inútil si no se pudiera encontrar. Una base de datos puede ser pequeña, con una estructura simple — por ejemplo, una base de datos que contenga los títulos y los nombres de los autores de todos los li­ bros que usted posea. Pero una base de datos también puede ser enorme, con una estructura extremadamente compleja — tal como la base de datos que Amazon.com debe tener para guardar toda su información. La información almacenada en las bases de datos viene en muchas variedades. El catálogo en línea de una compañía requiere de una base de datos para guardar in­ formación sobre todos los productos de la compañía. Un sitio web con membresía requiere de una base de datos para guardar información sobre los miembros. Un sitio web sobre empleos requiere de una base de datos (o tal vez de dos bases de datos) para almacenar la información sobre las ofertas de empleo e informa­ ción sobre los currículum de los solicitantes. La información que usted planea al­ macenar quizá es similar a la información que hay guardada en miles de sitios web de Internet, o quizá sea información única a su aplicación. Técnicamente, el término base de datos se refiere al archivo o grupo de archi­ vos que contiene los datos reales. Se tiene acceso a los datos por medio de un conjunto de programas llamados SABD (Sistema Ádminitrador de Bases de Da­ tos o Database Management System). Casi todos los SABO actuales son Rela­ ciónales), en los cuales los datos se organizan y almacenan en un conjunto de tablas relacionadas. En este libro, usamos MySQL porque es un SABD especialmente apropiado para uso en sitios web. MySQL y sus ventajas se discuten en la sección "MySQL, Mi base de datos" más adelante en este capítulo. Puede aprender có­ mo organizar y diseñar una base de datos MySQL en el Capítulo 3.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL

Listas de discusión electrónicas Es posible encontrar muy buen soporte técnico en las listas de discusión electró n icas. Estas listas son grupos de personas que discuten tem as es­ pecíficos por medio del co rreo electrónico . Se pueden encontrar listas electrónicas para casi to ­ dos los tem as en los que se pueda pensar: la lote­ ría, filosofía antigua, cocina, los B eatles, razas de perros, política, etc. La discusión se realiza por m edio del correo electrónico. El adm inistrador de la lista m antiene una lista de distribución de direc­ ciones electrónicas para los que quieran unirse a la discusión. Cuando envía un m ensaje a la lista de discusión, su m ensaje es enviado a toda la lista para que todos lo vean. Por ende, la discusión es un esfuerzo grupal y cualquiera puede responder a cualquier m ensaje que le interese. Las listas de discusión electrónicas tienen el apo­ yo de varios patrocinadores. C ualquier individuo u organización puede activar una lista. La mayoría de los proveedores de softw are tiene una o más listas dedicadas a su softw are. Las universidades tie n e n lista para las asign aturas académ icas. A dem ás, algunos sitios w e b com o Yahoo! Groups y Tópica administran listas de discusión. Los usua­ rios pueden cre ar una lista nueva o unirse a una lista existente por medro de la aplicación w eb. Las listas electrónicas relacio n ad as con so ftw a­ re son com o la cueva del teso ro del soporte té c ­

nico. El núm ero de usuarios de softw are suscri­ tos a listas varía de un cen te n ar a varios miles. M u ch o s tien e n am plia experiencia con el soft­ w a re . A m enudo los desarrolladores, programadores y personal de soporte técnico del pro veed o r del s o ftw a re están en la lista. Cual­ quiera que sea su pregunta o problem a, alguien en la lista probablem ente conoce la respuesta o la solución. No es probable que usted sea la pri­ m era persona en h a b e r experim entado un pro­ blem a. Cuando plantea una pregunta en una lista e lectró n ica, la respuesta generalm ente ap are­ ce en su casillero en unos pocos minutos. A de­ más, la m ayoría de las listas m antiene un archivo de discusiones anteriores para que usted pueda b u sc ar res p u estas a problem as específicos. Cuando es nuevo en el uso de cualquier softw a­ re, puede averig u ar m ucho sim plem ente unién­ dose a las listas de discusión para ese software y leyendo los m ensajes durante algunos días. Por supuesto, PHP y M ySQ L tienen listas de dis­ cusión electró n icas. De hecho, cada uno tiene varias listas de discusión sobre tem as especí­ ficos, por ejem plo bases de datos y PHP. Puede enco ntrar los nom bres de las listas electrónicas e instrucciones sobre cómo unirse a ellas en los sitios w e b de PHP y M ySQ L respectivam ente.

La aplicación: {/ hacia la base de datos

Moóerdatos de

Para que la base de datos sea útil, usted debe poder introducirle y extraerle datos. Los programas son sus herramientas para lograrlo, pues interactúan con la base de datos para almacenar y recuperar datos. Un programa se conecta a la base de datos y hace una solicitud: "Tome estos datos y almacénelos en el lugar específico". Otro programa hace esta solicitud: "Encuentre los datos especificados y tráigamelos". Los programas de aplicación que interactúan con la base de datos corren cuando el usuario interactúa con la página web. Por ejemplo, cuando el usuario hace clic en el botón enviar después de completar un formulario en la web, un programa procesa la información en el formulario y la guarda en una base de datos.

Capítulo 1: Introducción a PHP y MySQL

MySQL, mi

basede datos

MySQL es un SABD relacional rápido y fácil de usar utilizado para bases de datos en muchos sitios web. Desde el principio, la velocidad fue el atributo más importante para los desarrolladores. En aras de la velocidad, tomaron la decisión de ofrecer me­ nos características que sus principales competidores (por ejemplo, Oracle y Syba­ se). Sin embargo, aunque MySQL tiene menos características que sus competidores comerciales, tiene todas las características necesarias para la gran mayoría de desa­ rrolladores de bases de datos. Es más fácil de instalar y usar que sus competidores comerciales, y la diferencia en el precio favorece muchísimo a MySQL. MySQL es desarrollado, mercadeado y mantenido por MySQL AB, que es una empresa sueca. La compañía ofrece dos tipos de licencias: u * Software de fuente abierta: MySQL está disponible por medio de una GNIJ GPL (General Public License/Licencia Pública General) sin ningún § costo. Cualquiera que cumpla los requisitos para una GPL puede usar el | software gratuitamente. Si está usando MySQL com o base de datos en un sitio web (el tema de este libro), puede usar MySQL gratuitamente, I incluso si está ganando dinero con su sitio web. ? I u * Licencia comercial: MySQL está disponible con una licencia comercial para | aquellos que prefieren esta alternativa a la GPL. Si un desarroliador desea I usar MySQL como parte de un nuevo producto de software y desea vender el nuevo producto en vez de ponerlo a disposición bajo la GPL, el desarrolla1 dor debe comprar una licencia comercial. El costo es muy razonable. Encontrar soporte técnico para MySQL no es difícil. Puede unirse a una de varias listas de discusión electrónicas que se ofrecen en el sitio web de MySQL: w w w .mysql .com. Incluso puede buscar en los archivos de la lista electrónica, los cuales contienen una gran base de conocimientos con pre­ guntas y respuestas sobre MySQL. Si se siente más cóm odo obteniendo so­ porte comercial, MySQL AB ofrece contratos de soporte técnico — con cinco niveles de soporte, que oscilan desde soporte directo por correo electrónico hasta soporte telefónico, con cinco niveles de precios.

Ventajas de MySQL MySQL es una base de datos popular entre los desarrolladores Web. Su velo­ cidad y pequeño tamaño la hacen ideal para un sitio Web. Súmele a eso el he­ cho de ser de código abierto, o sea gratis, y tiene allí la razón de su popularidad. Este es un informe minucioso de algunas de sus ventajas: 1 1

Es rápido. La meta principal de los desarrolladores de MySQL fue la ve­ locidad. En consecuencia, el software fue diseñado desde el principio con la velocidad en mente.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL I / Es barato. MySQL es gratis bajo la licencia GPL de código abierto, y el costo de una licencia comercial es muy razonable. Es fácil de usar. Puede construir una base de datos MySQL e interaetuar con ella usando unas cuantas instrucciones simples en el lenguaje SQL, el cual es el lenguaje estándar para comunicarse con los SABD relacional. Consulte el Capítulo 4 para conocer toda la verdad sobre el lenguaje SQL. Funciona en muchos sistemas operativos. MySQL. funciona en una gran varie­ dad de sistemas operativos — Windows, Linux, Mac OS, la mayoría de las varie­ dades de Unix (incluyendo Solaris, AIX y DEC Unix), FreeBSD, OS/2, Irixyotros. Amplio soporte técnico. Una base de usuarios grande brinda soporte gratuito por medio de listas electrónicas. Los desarrolladores de MySQL también participan en las listas electrónicas. También puede comprar soporte técnico a MySQL AB por un precio módico. Es seguro. El flexible sistema de autorización de MySQL permite algunos o todos los privilegios de la base de datos (por ejemplo, privilegios para crear una base de datos o borrar datos) a usuarios específicos o grupos de usuarios. Las contraseñas se encriptan. ^ Soporta bases de datos grandes. MySQL maneja bases de datos de hasta 50 millones de filas o más. El límite predefinido para el tamaño de archivo de una tabla es de 4GB, pero se puede aumentar (si su sistema operativo lo puede manejar) hasta un límite de 8 millones de terabytes (TB), en teoría. f v 0 Se puede personalizar. La licencia GPL de código abierto permite a los programadores modificar el software MySQL para adaptarlo a sus am­ bientes específicos.

Cómo funciona MySQL El software de MySQL consta del servidor MySQL, varios programas utili­ tarios que ayudan en la administración de la base de datos MySQL y algún software de apoyo que necesita el servidor MySQL (usted no debe preocu­ parse por nada de esto ahora). El corazón del sistema es el servidor MySQL. El servidor MySQL es el administrador del sistema de base de datos. Maneja todas las instrucciones de su base de datos. Por ejemplo, si desea crear una nueva base de datos, usted debe enviar un mensaje al servidor MySQL que diga "cree una base de datos nueva y llámela datosnuevos". Entonces el ser­ vidor MySQL crea un subdirectorio dentro de su directorio de datos, nombra el nuevo subdirectorio nuevosdatos y pone los archivos necesarios con el formato requerido en el subdirectorio nuevosdatos. Del mismo modo, para añadir datos a esa base de datos, usted envía un mensaje al servidor MySQL dándole los datos y diciéndole dónde quiere que añada los datos. Aprenderá cómo escribir y enviar mensajes a MySQL en la Parte II de este libro.

Capítulo 1: Introducción a PHP y MySQL El servidor MySQL debe estar funcionando y esperando órdenes antes de que usted pueda transmitirle instrucciones. El servidor MySQL generalmente se configura para que inicie cuando inicia el PC y para que continúe funcionan­ do todo el tiempo. Esta es la configuración usual para un sitio web. Sin em­ bargo, no es necesario configurarlo para que inicie cuando inicia el PC. Si es necesario, puede iniciarlo manualmente en el momento en que desee ingre­ sar a la base de datos. Cuando está funcionando, el servidor MySQL constan­ temente busca mensajes con instrucciones sobre lo que debe hacer.

Comunicación con el servidor MySOL Toda su interacción con la base de datos se hace mediante mensajes envia­ dos al servidor MySQL. Puede enviar mensajes al servidor MySQL de varias maneras, pero este libro se concentra en el envío de mensajes por medio de PHP. El software PHP tiene instrucciones específicas usadas para enviar ins­ trucciones al servidor MySQL. El servidor MySQL debe ser capaz de entender las instrucciones que recibe. Se comunica con él usando SQL (Structured Query Language / Lenguaje Estructu­ rado de Consulta), que es el lenguaje estándar que entienden muchos SABD. El servidor MySQL entiende SQL. PHP no entiende SQL, pero no necesita hacerlo: PHP establece una conexión con el servidor MySQL y envía el mensaje en SQL por medio de dicha conexión. El servidor MySQL interpreta el mensaje en SQL y sigue las instrucciones. El servidor MySQL envía un mensaje de vuelta, indi­ cando su estado y lo que hizo (o reportando un error si no pudo entender o se­ guir las instrucciones). Para conocer todos los detalles sobre cómo escribir y enviar mensajes en SQL a MySQL, consulte la Parte II de este libro.

PHP, un moditizador de datos PHP, un lenguaje de programación diseñado específicamente para ser usado en la Web, es su herramienta para crear páginas web dinámicas. Como es rico en características que facilitan el diseño y la programación web, PHP se usa en más de 13 millones de dominios (según la encuesta de Netcraft en www. php .net/usage.php). Su popularidad continúa creciendo, lo cual signi­ fica que debe estar cumpliendo muy bien con su función. PHP significa PHP: HyperText Preprocessor/Preprocesador de Hipertexto. Cuando Rasmus Lerdorf empezó a desarrollarlo, se llamaba Personal Home Page tools/Herramientas para una Página de Inicio Personal. Cuando se desa­ rrolló a un lenguaje completo, el nombre se le cambió para que estuviera más a tono con su funcionalidad expandida.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL La sintaxis del lenguaje PHP es parecida a la sintaxis de C, así que si tiene ex­ periencia con C, se sentirá cóm odo usando PHP. PHP es incluso más simple que C porque no usa algunos de los conceptos más difíciles de C. PHP tampo­ co incluye las capacidades de programación de bajo nivel de C porque PHP está diseñado para programar sitios web y no necesita esas capacidades. La habilidad de PHP para interactuar con bases de datos es particularmente fuer­ te. PHP puede trabajar con prácticamente todas las bases de datos de las cuales haya escuchado hablar (y algunas de las que nunca ha oído nada). PHP maneja la conexión con la base de datos y la comunicación con ella. Usted no necesita cono­ cer los detalles técnicos para conectarse a una base de datos o para intercambiar mensajes con ella. Sólo debe decirle a PHP el nombre de la base de datos y dónde está, y PHP se encarga de los detalles. Se conecta a la base de datos, pasa sus ins­ trucciones a la base de datos y le trae de vuelta la respuesta de la base de datos. Hay soporte técnico disponible para PHP. Puede unirse a una de varias listas de dis­ cusión electrónicas que se ofrecen en el sitio web de PHP (www .php.net), incluyen­ do una lista de bases de datos y PHP. Además, hay una interfaz hacia las listas de discusión en news.php.net, desde donde puede navegar o buscar en los mensajes.

Ventajas de PHP La popularidad de PHP está aumentando rápidamente debido a sus múltiples ventajas: v * Es rápido. Como está empotrado en código HTML, el tiempo de respues­ ta es muy corto. v * Es barato — gratis, de hecho. PHP es prueba de que los almuerzos gra­ tis sí existen y de que es posible recibir más de lo que se ha pagado.

I

u * Es fácil de usar. PHP contiene muchas características y funciones espe­ ciales necesarias para crear páginas web dinámicas. El lenguaje PHP es­ tá diseñado para incluirse con facilidad en archivos en HTML.

v* Funciona en muchos sistemas operativos. Funciona en una gran varie­ dad de sistemas operativos: Windows, Linux, Mac OS y la mayoría de las variedades de Unix. 1 u * Amplio soporte técnico. Una gran base de usuarios brinda soporte gra­ tuito por medio de las listas de discusión electrónicas. |

Es seguro. El usuario no ve el código PHP. v * Está diseñado para mantener bases de datos. La funcionalidad de PHP fue diseñada para interactuar con bases de datos específicas. Le libera de la necesidad de conocer los detalles técnicos requeridos para comu­ nicarse con una base de datos.

I

»> Se puede personalizar. La licencia de código abierto les permite a los programadores modificar el software PHP y agregarle o modificar carac­ terísticas necesarias para adaptarse a sus ambientes específicos.

Capítulo 1: Introducción a PHP y MySQL

Cómo funciona PHP PHP es un lenguaje de programación empotrado cuando se usa en páginas web. Esto quiere decir que el código PHP está empotrado en código HTML. Usted usa etiquetas de HTML para encapsular el lenguaje PHP que empotra en su archivo HTML, del mismo modo en que usaría otras etiquetas de HTML. Puede crear y editar páginas web que contengan PHP del mismo mo­ do en que se crean y editan las páginas HTML comunes. El software PHP funciona en conjunto con el servidor web. El servidor web es el software que entrega las páginas web al mundo. Cuando digita un URL en su ex­ plorador web, está enviando un mensaje al servidor web en ese URL en el cual le pide que le envíe un archivo en HTML. El servidor web responde enviando el ar­ chivo solicitado. Su explorador lee el archivo HTML y muestra la página web. También le pide a un servidor web que le envíe un archivo cada vez que hace clic en un vínculo en una página web. Además, el servidor web procesa un archivo cuando usted hace clic en el botón para enviar un formulario en una página web. Cuando está instalado PHP, el servidor web se configura para esperar ciertas extensiones de archivo que contienen instrucciones en lenguaje PHP. A menu­ do la extensión es.php o . phtml, pero se puede usar cualquier extensión. Cuando el servidor web recibe una solicitud de un archivo con la extensión designada, envía las instrucciones HTML sin modificación, pero las instruc­ ciones PHP las procesa el software PHP antes de enviarlas al solicitante. Cuando se procesan las instrucciones PHP, el servidor web sólo envía el resul­ tado al explorador Web. Las instrucciones en el lenguaje PHP no se incluyen en el resultado que se envía al explorador, así que el código PHP es seguro y trans­ parente para el usuario. Por ejemplo, en esta simple instrucción en PHP: es la etiqueta de cierre, echo es una instrucción en PHP que le dice a PHP que muestre el texto seguido a con­ tinuación. El software PHP procesa la instrucción PHP y el resultado es este: Hola Mundo que es un instrucción común en HTML. Esta instrucción en HTML se entrega al ex­ plorador del usuario. El explorador interpreta la oración como código HTML y muestra una página web con un párrafo: Hola Mundo. La instrucción PHP no se en­ trega al explorador, de modo que el usuario nunca ve ninguna instrucción en PHP. PHP y el servidor web deben trabajar muy unidos. PHP no está integrado a todos los servidores web, pero trabaja con muchos de los servidores web más populares. PHP fue desarrollado como un proyecto de la Fundación de Software Apache; en consecuencia, trabaja mejor con Apache. PHP también funciona con Microsoft 1IS/PWS, iPlanet (anteriormente conocido como Netscape Enterprise Server) y otros.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL Aunque PHP funciona con varios servidores web, funciona mejor con Apache. Si puede seleccionar o influir en la selección del servidor web usado en su organiza­ ción, elija Apache. Por sí mismo, Apache es una buena elección. Es gratis, de código abierto, estable y popular. Actualmente sustenta a más del 60 por ciento de todos los sitios web, según la encuesta de servidores web e n w w w .n etcraft.c om. Funciona con Windows, Linux, Mac OS y la mayoría de las variedades de Unix.

MySQL y PHP, (a pareja perfecta MySQL y PHP frecuentemente se usan juntos. A menudo se les llama el dúo dinámico. MySQL brinda la parte de la base de datos y PHP brinda la parte de la aplicación en su aplicación con bases de datos para la Web.

Ventajas de esta relación Como pareja, MySQL y PHP tienen varias ventajas: lf

Son gratis. En cuanto a lo rentable, es difícil ganarle a gratis. í>

Están diseñados para la Web. Ambos fueron diseñados específicamente para usarse en sitios web. Ambos tienen un conjunto de características dedicadas a crear sitios web dinámicos.

v * Son fáciles de usar. Ambos fueron diseñados para montar sitios web rá­ pidamente. v * Son rápidos. Ambos fueron diseñados pensando en la velocidad como meta principal. Juntos brindan una de las maneras más rápidas de entre­ gar páginas web dinámicas a los usuarios. u * Se comunican bien entre si. PHP incluye características específicas pa­ ra comunicarse con MySQL. No necesita conocer los detalles técnicos; déjele ese trabajo a PHP. i Ambos cuentan con una amplia base de soporte. Ambos tienen bases de usuarios amplias. Como generalmente se usan como pareja, a menu­ do tienen la misma base de usuarios. Hay muchas personas dispuestas a ayudarle, incluyendo a los miembros de las listas de discusión electróni­ cas con experiencia en el uso de MySQL y PHP juntos. v * Se pueden personalizar. Ambos son de código abierto, lo cual le permi­ te a los programadores modificar el software de PHP y MySQL para í adaptarlos a sus ambientes particulares.

Capítulo 1: Introducción a PHP y MySQL

Cómo funcionan juntos MySOL y PHP PHP brinda la parte de la aplicación, y MySQL proporciona la parte de la base de datos de una aplicación con base de datos para la Web. Se usa el lenguaje PHP para escribir los programas que realizan las tareas de la aplicación. PHP es lo su­ ficientemente flexible para realizar todas las tareas que requiera su aplicación. Se puede usar para tareas simples (como mostrar una página web) o para tareas complicadas (tales como aceptar y verificar datos digitados por un usuario en un formulario en HTML). Una de las tareas que su aplicación debe realizar es in­ troducir información en la base de datos, y extraerla; y PHP incluye característi­ cas específicas para usar al escribir programas que deban mover información hacia dentro y hacia afuera de una base de datos de MySQL. Las instrucciones PHP se empotran en sus archivos HTML con etiquetas de PHP. Cuando las tareas que debe realizar la aplicación requieren almacenar o recupe­ rar datos, usted usa instrucciones PHP específicamente diseñadas para interactuar con la base de datos MySQL. Se usa una instrucción PHP para conectarse a la base de datos correcta, diciéndole a PHP dónde está localizada la base de da­ tos, su nombre y la contraseña necesaria para conectarse a ella. La base de datos no necesita estar en la misma máquina que su sitio web; PHP puede comunicarse con una base de datos a través de una red. Se usa otra instrucción PHP para en­ viar indicaciones a MySQL. Se envía un mensaje en SQL a través de la conexión dándole instrucciones a MySQL sobre la tarea que usted desea que se realice. MySQL devuelve un mensaje de estado que muestra si ha realizado la tarea exito­ samente. Si hubo un problema, devuelve un mensaje de error. Si su mensaje en SQL pidió recuperar algunos datos, MySQL envía los datos que solicitó y PHP los almacena en una ubicación temporal donde estarán a su disposición. Luego usted debe usar una o más instrucciones PHP para completar la tarea de la aplicación. Por ejemplo, puede usar instrucciones PHP para mostrar los datos que recuperó. 0 puede usar instrucciones PHP para mostrar un mensaje de estado en el explorador, informándole al usuario, por ejemplo, que los datos fueron guardados. Dado que es un SABD relacional, MySQL puede guardar información muy com­ pleja. Como lenguaje de programación, PHP puede realizar manipulaciones de datos muy complejas, ya sean datos que deben modificarse antes de ser guar­ dados en la base de datos, o datos recuperados de una base de datos que de­ ben modificarse antes de ser mostrados o usados para otra tarea. Juntos, PHP y MySQL pueden usarse para crear una aplicación con base de datos para la Web con un propósito muy complejo y sofisticado.

Mantenerse al día con tos cambios en PHP y MySQL PHP y MySQL son software de fuente abierta. Si usted solo ha usado software de los mayores desarrolladores de software — tales como Microsoft, Macromedia o Adobe

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL — se dará cuenta de que el software de código abierto es una especie totalmente di­ ferente. Es desarrollado por grupos de programadores que escriben el código en su tiempo libre, por diversión y sin costo alguno. No hay oficinas corporativas. El software de código abierto cambia con frecuencia, en lugar de una o dos veces al año, como hace el software comercial. Cambia cuando sus desabolladores sien­ ten que está listo para hacerlo. También cambia rápidamente como respuesta a problemas. Cuando se encuentra un problema serio — por ejemplo, una grieta en la seguridad — en unos cuantos días aparece una versión nueva que resuelve el problema. Eso sí, no recibirá panfletos llamativos ni verá coloridos anuncios en re­ vistas durante un año antes del lanzamiento de una nueva versión. Por eso, si 110 hace un esfuerzo por mantenerse informado, podría perderse el lanzamiento de una versión nueva o desconocer un problema serio con su versión actual. Visite regularmente los sitios web de PHP y MySQL. Debe conocer la informa­ ción que se publica ahí. Únase a las listas de correo, que a menudo tienen mu­ cho tráfico. Mientras empieza a conocer PHP y MySQL, la gran cantidad de mensajes electrónicos en las listas de discusión le traerán información valiosa a su casillero de correo electrónico; puede aprender mucho leyendo esos men­ sajes. Muy pronto estará en capacidad de ayudar a otros con base en su propia experiencia. Por lo menos suscríbase a lista de correo de avisos, que solo en­ vía mensajes electrónicos ocasionalmente. Allí se anuncian los problemas im­ portantes y las versiones nuevas. El mensaje electrónico que recibe de la lista de avisos contiene información que debe saber. Ahora mismo, antes de que se le olvide, entre en los sitios web de PHP y MySQL e inscríbase en una lista o d o s e n www.php.net/mailing-lists.php y lists.mysql.com. Debe estar al tanto de algunos cambios significativos respecto de versiones anteriores de PHP, pues aplicaciones que funcionan bien en versiones ante­ riores podrían tener problemas al correr en una versión más nueva, y vice­ versa. Los siguientes son algunos cambios que debe conocer: | v0 Versión 5.0.0: Añadió soporte para MySQL 4.1. No incluye automática­ mente soporte para MySQL 4.0; debe incluirse por medio de una opción cuando se instala PHP. Cambió el nombre del archivo del intérprete de PHP usado con un servidor web de.php a .php cgi . | u * Versión 4.3.1: Arregló un problema de seguridad en la versión 4.3.0. No es aconsejable continuar corriendo sitios web con la versión 4.3.0 o anteriores. I 1 Versión 4.2.0: Cambió la configuración predeterminada de regi ster_gl obal s a Of f. Es posible que aplicaciones que corran con versiones anteriores dependan de que regi ster_gl obal s esté configu­ rado en On y podrían dejar de funcionar con la nueva configuración. Lo mejor es cambiar el código de la aplicación para que corra con regi s ter_gl obal s configurado en Off. Versión 4.1.0: Introdujo las matrices superglobales. Las aplicaciones escritas con las superglobales (com o lo describo en el Capítulo 6) no funcionarán en versiones anteriores. Antes de 4.1.0, debe usar las matri­ ces al estilo antiguo, por ejemplo $HTTP_POST_VARS.

Capítulo 2

Preparar su ambiente de trabajo En este capítulo * Tener acceso a PHP y MySQL mediante los sitios web de su compañía y de empresas de hospedaje de sitios web i Construir su propio sitio web empezando desde cero Poner a prueba a PHP y MySQL

u primera tarea, tras haberse decidido a usar PHP y MySQL, es tener ac­ ceso a ellos. Quizá a usted le está esperando, listo con todas las herra­ mientas que necesita, un ambiente de trabajo ya montado para el desarrollo de aplicaciones para la web. En caso contrario, será parte de su trabajo que usted mismo prepare este ambiente de trabajo. Tal vez su trabajo sea crear un sitio web completamente nuevo. En este capítulo describo las herramien­ tas que necesita y cómo tener acceso a ellas.

S

Las herramientas necesarias Para montar su sitio web dinámico, necesita tener acceso a las tres herra­ mientas de software siguientes:

i v * Un s ervid or web: El software que lleva sus páginas web al mundo | | |

MySQL: El SABD relaciona! (Sistema Administrador de Base de Datos Relacional/Relational DataBase Management System) que almacenará la información de su aplicación con base de datos para la Web

( v* PHP: El lenguaje de programación que usará para escribir los programas I que brindan la funcionalidad dinámica a su sitio web Describo estas tres herramientas detalladamente en el Capítulo 1.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL

Encontrar un tugar para trabajar Para crear sus páginas web dinámicas, necesita tener acceso a un sitio web que proporcione sus tres herramientas de software (vea la sección anteror). Todos los sitios web incluyen un servidor web, pero no todos los sitios web proporcionan MySQL y PHP. Estos son los ambientes más comunes en los cuales puede desarrollar su sitio web:

|

,V

Un sitio web montado por una compañía en su propio PC: La compa­ ñía — generalmente el departamento de TI (Tecnología de información) de la compañía — instala y administra el software del sitio web. Su tra­ bajo, para los propósitos de este libro, es programar el sitio web, ya sea como empleado de la compañía o como contratista. i* Un sitio web hospedado por una compañía de hospedaje web: El sitio web se localiza en el PC de la compañía de hospedaje web. La compañía de hospedaje instala y mantiene el software del sitio web y proporciona espacio de su PC para que usted instale los archivos de HTML (HyperText Markup Language/Lenguaje de Marcado de Hipertexto) de un sitio web. Un sitio web que aún no existe: Usted planea instalar y mantener el software del sitio web por sí mismo. Podría ser un sitio web de su pro­ piedad que está construyendo en su propio PC, o podría ser un sitio web que está instalando para un cliente en el PC del cliente.

Cuánto necesita entender sobre la administración y operación del software del sitio web depende del tipo de acceso al sitio que usted tenga. En las pró­ ximas secciones, describo estos ambientes con mayor detalle y explico cómo tener acceso a PHP y MySQL.

Un sitio u/eb de la compañía Cuando la compañía se encarga de manejar el sitio web, usted no necesita en­ tender la instalación y la administración del software del sitio. La compañía es responsable de la operación del sitio web. En la mayoría de los casos, el si­ tio web ya existe y su trabajo es agregar algo, modificar o rediseñar ese sitio web ya existente. En unos cuantos casos, la compañía podría estar instalando su primer sitio web, y su trabajo es diseñar el sitio. Cualquiera sea su caso, su responsabilidad es escribir e instalar los archivos de HTML para el sitio web. Usted no es responsable de la operación del sitio. Usted tiene acceso al software del sitio web mediante el departamento de TI de la compañía. El nombre de este departamento puede variar en diferentes empresas, pero su función es la misma: mantiene los PCs de la empresa funcionando y al día. Si PHP y/o MySQL no están disponibles en el sitio web de la compañía, TI ne­ cesita instalarlos y ponerlos a su disposición. PHP y MySQL tienen muchas

Capítulo 2: Preparar su ambiente de trabajo opciones, pero TI tal vez no entienda cuál es la mejor opción, e incluso po­ dría configurar algunas opciones de un modo inapropiado para sus propósi­ tos. Si necesita cambiar las opciones de PHP o MySQL, debe solicitar a TI que haga el cambio; usted no podrá hacer el cambio por sí mismo. Por ejemplo, PHP debe estar instalado de modo que soporte MySQL, así que si PHP no se está comunicando correctamente con MySQL, TI probablemente tendrá que reinstalar PHP con el soporte para MySQL habilitado. Para que el mundo pueda ver las páginas web de la compañía, los archivos de HTML deben estar en un lugar específico del PC. El servidor web que lleva las páginas web al mundo espera encontrar los archivos de HTML en un directorio específico. El departamento de TI debe darle acceso al directorio donde deben instalarse los archivos de HTML. En la mayoría de los casos, usted desarrolla­ rá y probará sus páginas web en una ubicación de prueba y luego transferirá los archivos completos a su hogar permanente. Dependiendo del acceso que le dé TI, usted podrá copiar los archivos desde el lugar de prueba hasta el lugar permanente, o bien tendrá que transferirlos por medio de FTP (Protocolo de Transferencia de Archivos/File Transfer Protocol), que es un método para co­ piar un archivo desde un PC a otro en una red). En algunos casos, por razones de seguridad, los encargados de TI no le darán acceso a la ubicación perma­ nente y preferirán instalar los archivos en esa ubicación ellos mismos. Para poder usar las herramientas de software para la Web y crear su sitio web dinámico, usted necesita que TI le dé la siguiente información: ¡ v* La ubicación de las páginas web: Debe saber dónde poner los archivos de | las páginas web. TI debe darle el nombre y la ubicación del directorio donde l¡, se deben instalar los archivos. Además, debe saber cómo instalar los archi­ vos: copiarlos, enviarlos por FTP, o usando otros métodos. Tai vez necesite una identificación de usuario y una contraseña para instalar los archivos. ? v0 El nombre predeterminado del archivo: Cuando los usuarios apuntan sus exploradores hacia un URL, un archivo será enviado hacia ellos. El servidor web está configurado para enviar un archivo con un nombre específico cuanI do el URL señala un directorio. El archivo que se envía automáticamente es el k archivo predeterminado. A menudo el archivo predeterminado se llama index.htm o index.html, pero a veces se usan otros nombres como i defaul t .htm. Pregunte a TI cómo debe nombrar el archivo predeterminado. v* Una cuenta MySQL: El acceso a las bases de datos MySQL se controla por medio de un sistema de nombres de cuentas y contraseñas. TI confi­ gurará una cuenta MySQL para usted con los permisos apropiados y también le dará el nombre de la cuenta MySQL y su contraseña. (En el '■ Capítulo 5 explico con detalle las cuentas MySQL.) í i* La ubicación de las bases de datos MySQL: Las bases de datos f: MySQL no tienen que estar ubicadas en el mismo PC que el .sitio web. | Si las bases de datos MySQL se ubican en un PC diferente al del sitio I web, usted necesita saber el nombre del anfitrión (por ejemplo, I t h o r . companyname. com) donde se encuentran las bases de datos.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL u * La extensión del archivo PHP: Cuando se instala PHP, al servidor web se le indica que debe esperar instrucciones de PHP en archivos con ex­ tensiones específicas. Con frecuencia, las extensiones usadas son .php o. phtml, pero se pueden usar otras extensiones. Las instrucciones PHP en los archivos que no tienen la extensión correcta no serán procesadas. Pregunte a TI cuál extensión debe usar para sus programas PHP. Frecuentemente tendrá que interactuar con los encargados de TI, conforme surjan nuevas necesidades. Por ejemplo, tal vez necesite cambiar opciones, tal vez nece­ site información que le ayude a interpretar un mensaje de error, o tal vez necesite reportar un problema con el software del sitio web. Por eso tener una buena rela­ ción con ellos hará su vida más fácil. Acostumbre llevarles galletitas y donas.

Una compañía de hospedaje de sitios uleh Una compañía de hospedaje de sitios web le brinda todo lo que necesita para montar un sitio web, incluyendo espacio en sus PCs y todo el software del si­ tio. Solo debe crear los archivos para sus páginas web y pasarlos a la ubica­ ción especificada por la compañía de hospedaje. Millones y millones de compañías ofrecen servicios de hospedaje en la Web. La mayoría cobra una tarifa mensual (generalmente muy pequeña), e incluso hay algunas gratuitas. (La mayoría, pero no todas, de las gratuitas tienen co­ mo requisito que usted publique anuncios). Generalmente, la tarifa mensual varía dependiendo de los recursos brindados para su sitio web. Por ejemplo, un sitio web con 2MB de espacio en disco para los archivos de su página web costaría menos que un sitio con 10MB de espacio en disco. Cuando busque un lugar para hospedar su sitio web, asegúrese de que la compañía de hospedaje ofrezca lo siguiente: I v * PHP y MySQL: No todas las compañías brindan estas herramientas, 'ral vez tenga que pagar más por un sitio con acceso a PHP y MySQL; algunas veces | tendrá que pagar una cuota adicional por usar bases de datos MySQL. p | Una versión reciente de PHP: A veces no se ofrecen las versiones más recientes de PHP. Ni siquiera debe considerar un sitio web que sólo ten­ ga acceso a PHP 3. Necesita PHP 4 por lo menos. Preferiblemente debeI ría tener acceso a PHP 5. Al elegir una compañía de hospedaje debe tomar en cuenta estas otras consi­ deraciones: | | | 8

Confiabilidad: Necesita una compañía de hospedaje en la cual pueda confiar: una que no vaya a quebrar repentinamente y desaparecer mañana, y una que no use PCs antiguos sostenidos con chicle y alambre para embalar, de esos que pasan más tiempo caídos que en servicio.

Capítulo 2: Preparar su ambiente de trabajo

fc

i

Velocidad: Las páginas web que se descargan lentamente son un problema, porque los usuarios se ponen impacientes y se van a otra parte. Las páginas lentas pueden ser el resultado de una compañía de hospedaje que empezó su negocio con escasos recursos y que carece de equipo de buena calidad — o quizá la compañía de hospedaje sea tan exitosa que su equipo está sobrecar­ gado por clientes nuevos. De cualquier modo, las compañías de hospedaje que despliegan las páginas web muy lentamente son inaceptables. Soporte técnico: Algunas compañías de hospedaje no tienen a nadie dispo­ nible para responder preguntas o resolver problemas. El soporte técnico a menudo se brinda sólo por correo electrónico, lo cual puede ser aceptable si el tiempo de respuesta es corto. A veces es aconsejable probar la calidad del soporte técnico de la compañía llamando al número de soporte o pro­ bando su tiempo de respuesta enviándoles un correo electrónico.

i> El nombre del dominio: Cada sitio web tiene un nombre de dominio que los exploradores web usan para encontrar el sitio en la Web, Cada nombre de do­ minio se registra con el pago de una pequeña tarifa anual, de modo que solo un sitio pueda usarlo. Algunas compañías de hospedaje le permiten usar un nom­ bre de dominio que usted ha registrado independientemente de la compañía de hospedaje; algunas le ayudan a registrar y usar un nombre de dominio nue| vo; y algunas requieren que usted use un nombre de dominio definido por I ellas. Por ejemplo, suponga que su nombre es Lola Diseñadora y desea que su sitio web se llame LolaDiseñadora. Algunas compañías de hospedaje le permi­ te tirán llamar a su sitio web Lo 1amaestra . com, pero algunas requerirán que su | sitiosellame Lol amuestra. empresa . com, o empresa.com/~Lolamuestra | o algo parecido. En general, su sitio web se verá más profesional si usted usa su | propio nombre de dominio. | v* Respaldos: Los respaldos son copias de los archivos de sus páginas web y de su base de datos que están almacenados en caso de que sus archivos o base i' de datos se pierdan o se dañen. Debe asegurarse de que la compañía haga co~ | pias de respaldo de su aplicación con frecuencia y rutinariamente. También g debe averiguar cuánto tardarán en colocar los respaldos en su lugar para res| taurar el funcionamiento normal de su sitio web después de un problema. | | 1 I

Características: Seleccione las características con base en el propósito de su sitio web. Generalmente las compañía de hospedaje agrupan las características en planes, y más características = costos mayores. Alguñas características que debe tomar en cuenta son:

| |

g

• Espacio en disco: ¿Cuántos MB/GB de espacio en disco requerirá su sitio web? Los archivos de medios, tales como gráficos o archivos de música pueden ser bastante grandes.

| | |

• Transferencia de datos: Algunas compañías de hospedaje cobran por enviar páginas web a los usuarios. Si espera tener mucho tráfico en su sitio, será importante considerar este costo.

I I

• Direcciones electrónicas: Muchas compañías de hospedaje le brindan una cantidad de direcciones electrónicas para su sitio web. Por ejemplo,

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL si su sitio es Lol a mu es t ra. com, usted podría permitirles a los usuarios que le envíen mensajes electrónicos a y o@Lol amuest ra .com. Software: Las compañías de hospedaje ofrecen una buena varie­ dad de software para el desarrollo de aplicaciones para la Web. PHP y MySQL son el software que comento en este libro. Algunas compañías de hospedaje podrían ofrecer otras bases de datos y al­ gunas podrían ofrecer otras herramientas de desarrollo tales como extensiones de FrontPage, software para carritos de compras y va­ lidación de tarjetas de crédito. Estadísticas: A menudo es posible obtener estadísticas relaciona­ das con el tráfico en su sitio web, por ejemplo el número de usua­ rios, la hora de acceso, el acceso por página web, etcétera.

Nombres de dominio Cada sitio w e b n ecesita una dirección única en la W e b . Esa d irec ció n única que usan los PCs para lo ca lizar un sitio w e b es la d irección IP, la cual es un arreglo de cuatro núm eros entre 0 y 255, s e p a ra d o s por puntos; por ejem p lo,

172.17.204.2 o 192.163.2.33. Como las direcciones 1P constan de núm eros y puntos, no son fáciles de recordar. A fortu nada­ m ente, la mayoría de las direcciones IP tienen un nombre asociado que es mucho m ásfácil de recor­ dar, tal como amazon.com, www.irs.gov o mi empresa.com. Un nombre que sea la direc­ ción de un sitio w eb es un nombre de dominio. Un dom inio puede ser un PC o muchos PCs interconectados. Cuando un dominio se refiere a varios PCs, cada PC en el dominio puede ten er su propio nom bre. Un nom bre que incluya el nom bre de un PC individual,tal como thor .mi empresa.com, identifica un subdominio. C ada nom bre de dom inio debe se r único para que pueda servir como dirección. Por lo tanto, un sistem a de registro de nom bres de dominio ga­ rantiza que no haya dos ubicaciones que usen el mismo nom bre de dominio. Cualquiera puede re­ gistrar un nom bre de dominio siem pre y cuando el nom bre esté libre. Usted puede reg istrar un

nombre de dominio en la W eb. Primero, pruebe su nombre de dominio potencial para averiguar si está disponible. Si lo está, regístrelo bajo su nombre o el nom bre de su com pañía, pagando la tarifa correspondiente. El nom bre será suyo y lo podrá usar; nadie más podrá usarlo. La tarifa es­ tánd ar para registrar un nom bre de dominio es $35 por año. No se debe p ag a r nunca más, pero a menudo hay gangas. M uchos sitios w e b ofrecen la capacidad de re­ gistrar un nom bre de dominio, incluyendo los si­ tios w e b de m uchas com pañías de hospedaje. Una búsqueda en Google (www.google.com) de registro de nombre de dominio da como resul­ tado más de 3 millones de aciertos. Busque para asegurarse de encontrar el precio más bajo. A de­ más, m uchos sitios w e b le perm iten digitar un nombre de dominio para saber quién lo registró. Estos sitios w e b hacen una búsqueda de bases de datos de nom bres de dominio usando una he­ rramienta llam ada w hois (quién es). Una búsque­ da en Google de nom bre de dominio w hois resulta en 770,000 aciertos. Un par de lugares donde puede ir para h acer una búsqueda whois son A llwhois.com (www. a 11 who is .com) y BetterW hois.com (www.betterwhoi s icom).

Capítulo 2: Preparar su ambiente de trabajo Una desventaja de hospedar su sitio en una compañía de hospedaje comer­ cial es que usted no tendrá control sobre el ambiente de desarrollo. La com­ pañía de hospedaje de sitios web brinda el ambiente que funciona mejor para ella, probablemente un ambiente configurado para que el mantenimiento sea sencillo, de bajo costo y con un mínimo de retiro de clientes. La mayor parte de su ambiente lo configura la compañía y usted no lo puede cambiar. Solo puede rogarle a la compañía que lo cambie. La compañía no estará anuente a cambiar la configuración por temor a que un cambio pueda causar proble­ mas en el sistema de la compañía o a otros clientes. El acceso a las bases de datos MySQL se controla por medio de un sistema de cuentas y contraseñas que debe mantenerse manualmente, lo cual causa tra­ bajo adicional para la compañía de hospedaje. Por esta razón, muchas compa­ ñías de hospedaje no ofrecen MySQL o cobran extra por él. Además, PHP tiene un millón de opciones que puede configurarse, desconfigurarse o recibir múl­ tiples valores. La compañía de hospedaje decide las opciones de configuración con base en sus necesidades, lo cual puede ser o no ideal para sus propósitos. Es bastante difícil investigar las compañías de hospedaje de sitios web par­ tiendo desde un único punto — una búsqueda en Google.com de hospedaje de sitios web resulta en más de 6 millones de aciertos. La mejor manera de investigar compañías de hospedaje es pidiéndole recomendaciones a las per­ sonas que han tenido experiencia con esas compañías. Las personas que han usado una compañía de hospedaje pueden advertirle si el servicio es lento o si los PCs se caen a menudo. Después de recopilar unos cuantos nombres de compañías de hospedaje de clientes satisfechos, puede delimitar la lista a la que mejor se adapte a sus propósitos y sea más rentable.

Montar y manejar su propio sitio vOeb Si está iniciando un sitio web desde cero, necesitará comprender muy bien el software del sitio. Tiene que tomar varias decisiones relacionadas con el hardware y el software. Tiene que instalar un servidor web, PHP y MySQL, así com o mantener, administrar y actualizar el sistema usted mismo. Tomar esta ruta requiere de más trabajo y más conocimiento. La ventaja es que tiene el control total sobre su ambiente de desarrollo de aplicaciones web. Estos son los pasos generales que le conducirán a su sitio web dinámico (en las secciones siguientes explico estos pasos con más detalle): 1. Prepare el PC. 2. Instale el servidor web. 3. Instale MySQL. 4. Instale PHP.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL Si está empezando desde cero, con nada más que un espacio vacío donde co­ locará el PC, empiece en el Paso 1. Si ya tiene un PC en funcionamiento, pero no tiene software de desarrollo web, empiece en el Paso 2. O si ya tiene un si­ tio web pero no tiene PHP ni MySQL instalados, empiece en el Paso 3.

Preparar et PC Su primera decisión es escoger cuál plataforma de hardware y cuál sistema operativo usará. En la mayoría de los casos, escogerá un PC con Linux o Win­ dows como sistema operativo. Estas son algunas ventajas y desventajas de estos sistemas operativos: | u0 Linux: Linux es de fuente abierta, así que es gratis. También tiene ventajas para ser usado como servidor web: corre por largos períodos de tiempo sin necesidad de ser reiniciado; y Apache, el servidor web más popular, funciona mejor con Linux que con Windows. Correr Linux en un PC es la opción de me­ nor costo. La desventaja es que para muchas personas Linux es más difícil de instalar, configurar, administrar e instalarle software que Windows. 1 v* Windows: A diferencia de Linux, Windows no es gratis. Sin embargo, las ventajas son que la mayoría de personas cree que Windows es más fácil de usar y, com o es ampliamente utilizado, muchas personas le pueden I ayudar si tiene problemas. Asumiré que comprará un PC con el sistema operativo y el software instala­ dos, listos para usar. Es más fácil encontrar un PC que venga con Windows instalado, pero sí se consiguen PCs con Linux instalado. Por ejemplo, actual­ mente Dell, IBM y Hewlett-Packard ofrecen PCs con Linux instalado. Si está construyendo su propio hardware, necesita más información de la que le puedo brindar en el breve espacio de este libro. Si tiene el hardware y planea insta­ lar el sistema operativo, Windows es más fácil de instalar, pero Linux se está hacien­ do cada día más fácil. Puede instalar Linux desde un CD, como Windows, pero a menudo debe proporcionar información o tomar decisiones que requieren de un co­ nocimiento más profundo de su sistema. Si usted ya sabe cómo realizar las tareas de administración del sistema en Windows o en Linux (tal como instalar software y ha­ cer respaldos), la solución más rápida es usar el sistema operativo que ya conoce. Si va a usar PHP y MySQL debe considerar seriamente usar Linux. PHP es un proyecto de la Apache Software Foundation, así que corre mejor con el servi­ dor de Apache. Y Apache corre mejor en Linux que en Windows. Por lo tanto, si el PC será usado principalmente para correr un sitio web con aplicaciones con bases de datos, Linux es perfectamente adecuado para sus propósitos. Hay otras soluciones además de un PC con Windows o Linux, pero son menos populares:

Í

u0 Con base en Unix: Hay otros sistemas operativos gratuitos basados en Unix disponibles para PCs, tales como FreeBSD (algunos personas lo prefieren a Linux) o una versión de Solaris que Sun permite descargar gratuitamente.

Capítulo 2: Preparar su ambiente de trabajo I I

Mac: Los equipos Mac pueden usarse como servidores web. Los Mac más nuevos vienen con PHP instalado. Instalar PHP y MySQL en Mac OS X es bastante simple. Sin embargo, hay menos usuarios de Mac, así que será difí­ cil encontrar ayuda cuando la necesite. Un buen sitio es www .phpmac.com.

Cómo instalar el seróidor Web Después de configurar el PC debe decidir cuál servidor web instalar. La res­ puesta casi siempre es Apache. Apache ofrece las siguientes ventajas: | v0 Es gratis. ¿Hace falta decir algo más? u * Corre en una gran variedad de sistemas operativos. Apache corre en Windows, Linux, Mac OS, FreeBSD y la mayoría de las variedades de Unix. | /> Es popular. Aproximadamente el 60 por ciento de los sitios web en Internet usan Apache, según encuestas en www.netcraft.com/survey y www.securi tyspace. com/s_survey/data/. Esto no sería así si no funciona­ ra bien. Además, esto significa que un gran número de usuarios podrá ayudarlo. | I A I

Es confiable. Una vez que Apache esté instalado y funcionando, funcio­ nará el tiempo que lo haga su PC. Es muy raro tener problemas de emergencia con Apache. Se puede personalizar. La licencia de fuente abierta permite a los pro­ gramadores modificar el software de Apache, agregando o modificando módulos para adaptarlo a los ambientes específicos.

; W Es seguro. Existe software gratuito disponible que convierte a Apache en un servidor SSL (Capa de “Sockets”/Terminal segura). La seguridad es 1 esencial si va a usar el sitio para comercio electrónico. Apache se instala automáticamente al instalar la mayoría de las versiones de Li­ nux. Los Macs más recientes traen Apache instalado. Para la mayoría de las va­ riedades de Unix, hay que descargar el código fuente de Apache y compilarlo uno mismo, aunque hay disponibles algunos binarios (programas ya compila­ dos para sistemas operativos específicos). Para Windows, usted necesita insta­ lar un archivo binario, preferiblemente en Windows NT/2000/XP, aunque Apache también corre en Windows 95/98/Me. Al momento de escribir esto, Apache 1.3.28 y 2.0.47 son actualmente las versiones estables. (Más información sobre las versiones de Apache está disponible en el Apéndice C.) Consulte el sitio web de Apache (httpd.apache.org) para mayor información, descargar software, documentación e instrucciones de instalación para diversos sistemas operati­ vos. El sitio brinda amplia documentación, constantemente mejorada. Hay otros servidores web disponibles. Microsoft ofrece US (Internet Informa­ tion Server / Servidor de información de Internet), el cual es el segundo servi­ dor web más popular en Internet, usado en aproximadamente el 27 por ciento de los sitios web. Sun ofrece iPlanet (anteriormente Netscape Enterpri­ se Server) que sirve a menos de un 5 por ciento de Internet. Hay otros servi­ dores web disponibles, pero sus bases de usuarios son aún más pequeñas.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL Cómo instalar MySQL Después de configurar el PC e instalar el servidor web, está listo para instalar MySQL. Debe instalar MySQL antes de instalar PHP, pues debe brindar la ruta al software de MySQL al instalar PHP. Pero antes de instalar MySQL, asegúrese de que realmente necesita instalar­ lo. Quizá ya esté corriendo en su PC, o quizá esté instalado pero no esté co­ rriendo. Muchas versiones de Linux, por ejemplo, instalan automáticamente MySQL. Esta es la manera de verificar si MySQL ya está corriendo en su PC: v * Linux/Unix/Mac: En la línea de comandos, digite lo siguiente: ■

ps -ax El resultado será una lista de programas. Algunos sistemas operativos (generalmente variedades de Unix) tienen opciones diferentes para el comando ps. Si el comando anterior no produce una lista de programas que estén corriendo, digite man ps para ver cuáles opciones debe usar. En la lista de programas que aparece, busque uno llamado mysql d . u * Windows: Si MySQL está corriendo, deberá verlo en su bandeja de siste­ ma en la parte inferior de su pantalla, posiblemente como un semáforo con una luz verde. Si no puede encontrar este icono lo más probable es que no esté corriendo.

Pero MySQL puede estar instalado aunque no esté corriendo, quizá no ha ac­ tivado. Esta es la manera de revisar si MySQL está instalado en su PC:

í •f

Linux/Unix/Mac: Digite lo siguiente fi nd /

ñame "mysql*"

Si aparece un directorio llamado mysql, MySQL ya ha sido instalado. Windows: Busque el programa llamado WinMySQLadmin que, entre otras funciones, inicia y detiene a MySQL. Probablemente lo encontrará en el menú Inicio (escoja StartOPrograms). Si no, búsquelo en un direc­ torio MySQL, que probablemente será c:\mysql\bin. Si MySQL está instalado pero no se ha activado, esto es lo que debe hacer pa­ ra activarlo: v 0 Linux/Unix/Mac:

I

1. Cámbiese al directorio mysql /bin. Este es el directorio que habrá encontrado al verificar si MySQL es­ taba instalado. 2. Digite safe_mysqld &. Cuando este comando termina, aparece el prompt.

Capítulo 2: Preparar su ambiente de trabajo 3.

Verifique que el servidor MySQL se haya activado digitando ps -ax. En la lista de programas que aparece, busque uno llamado mysql d.

ij

u * Windows: 1. Inicie el programa Wi nMySQLadmi n.

I

%

Si no lo puede encontrar en el menú, navegue hacia el programa, que probablemente estará en c : \mysql \bi n\wi nmysql admin. e xe y haga doble clic en él. 2 . Haga clic derecho en la ventana WinMySQLadmin. Aparecerá un submenú. 3. Seleccione el elemento del menú para su sistema operativo: Win 9x o Win NT (que incluye Win 2000 y XP).

ir

4. Haga clic en Start the Server.

Si MySQLno está instalado en su PC, debe descargarlo de w w w .mysql . com e instalarlo. El sitio web brinda toda la información y el software que necesita. (Econtrará instrucciones de instalación detalladas en el Apéndice A.)

Cómo instalar PHP Después de instalar MySQL, está listo para instalar PHP. Como mencioné ante­ riormente, debe instalar MySQL antes de instalar PHP porque necesita brindar la ruta al software de MySQL cuando instala PHP. PHP no podrá comunicarse con MySQL si al instalarse no se compila con soporte para MySQL. Antes de instalar PHP, verifique si ya está instalado. Algunas versiones de Li­ nux y Mac, por ejemplo, instalan automáticamente PHP. Para ver si PHP está instalado, busque en su disco cualquier archivo de PHP: f í> Linux/Unix/Mac: Digite lo siguiente: f i n d / -ñame "php*" ( I

Windows: Use la opción Find (escoja StarK>Find) para buscar php*.

Si encuentra archivos de PHP, PHP ya está instalado, y quizá no necesite reins­ talarlo. Es posible que incluso si instaló MySQL usted mismo después de insta­ lar PHP, lo haya instalado en el lugar donde PHP espera que esté. Pero mejor prevenir que lamentar: lleve a cabo la prueba que describo en la sección si­ guiente para ver si MySQL y PHP están funcionando juntos correctamente. Si no encuentra ningún archivo PHP, PHP no está instalado. Para instalar PHP, de­ be tener acceso al servidor web de su sitio. Por ejemplo, cuando instala PHP con Apache, debe editar el archivo de configuración de Apache. Toda la información y el software que necesita los encontrará en el sitio web de PHP (www .php.net). En el Apéndice B encontrará instrucciones detalladas para su instalación.

Parte I: Desarrollar una aplicación Web con Base de Datos usando PHP y MySQL

Probando, probando, 1, 2, 3 Suponga que cree que PHP y MySQL están disponibles para ser usados, por alguna de las razones siguientes: ' í> El departamento de TI de su compañía o de la compañía de su cliente le dio toda la información que usted solicitó y le dijeron que todo está listo para continuar. ¿ is* La compañía de hospedaje de sitios web le dio toda la información que usted necesita y le dijo que todo está listo para continuar. S

Siguió todas las instrucciones e instaló PHP y MySQL usted mismo.

Ahora debe hacer algunas pruebas para asegurarse de que PHP y MySQL es­ tén funcionando correctamente.

Someter PHP a prueba Para comprobar si PHP está instalado y funcionando, siga estos pasos: 1. Encuentre el directorio en el cual deben guardarse sus programas de PHP. Este directorio y los subdirectorios dentro de él son su espacio web. Apa­ che llama a este directorio el Documento Raíz. El espacio web predetermi­ nado de Apache es htdocs en el directorio donde Apache está instalado. En HS es I netpub\wwwroot. En Linux podría ser / va r/www/html. El es­ pacio web se puede determinar en un directorio diferente configurando el servidor web (consulte el Apéndice C). Si está usando una compañía de hospedaje de sitios, el personal le suministrará el nombre del directorio. 2. Cree el siguiente archivo en alguna parte de su espacio web con el nombre t e s t . php.

¿sea«

Prueba PHP Esto es una linea HTML
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF