página con PHP

Embed Size (px)

Citation preview

Su primera pgina con PHPComienze por crear un archivo llamado hola.php y pngalo en el "directorio raz" (DOCUMENT_ROOT) con el siguiente contenido: Ejemplo #1 Nuestro primer script PHP: hola.php Ejemplo PHP Utilice su navegador web para acceder al archivo en su servidor, con la URL terminando en /hola.php. Si est programando localmente este URL ser algo como http://localhost/hola.php o http://127.0.0.1/hola.php pero esto depende de la configuracin de su servidor web. Si todo est configurado correctamente, el fichero ser analizado por PHP y el siguiente contenido aparecer en su navegador: Ejemplo PHP Hola mundo Este script es extremadamente simple y no es necesario usar PHP para crear una pgina como esta. Lo nico que muestra es: Hola mundo usando la funcin de PHP echo(). El fichero no debe ser ejecutable o especial de ninguna forma. El servidor reconoce que este fichero debe ser interpretado por PHP porque estamos usando la extensin ".php", el cul est configurado para enviarlo a PHP. Piensa como si fuera un fichero HTML normal el cual tiene una serie de etiquetas especiales disponibles con las que puedes hacer muchas cosas interesantes. Si ha intentado usar este ejemplo y no produjo ningn resultado, preguntando si deseaba descargar el archivo, o mostr todo el archivo como texto, lo ms seguro es que PHP no se encuentra habilitado en su servidor. Pdale a su administrador que active esta funcin usando el captulo titulado Instalacin en el manual. Si est trabajando localmente, lea tambin el captulo dedicado a la instalacin para asegurarse de que todo est configurado apropiadamente. Asegrese que est accediendo al fichero va http a travs del servidor para mostrar el resultado. Si est abriendo el archivo desde el sistema de archivos, entonces probablemente no estar siendo analizado por PHP. Si el problema persiste no dude en usar alguna de las mltiples opciones de Soporte de PHP. El objetivo de este ejemplo es demostrar cmo puede usar el formato especial de las etiquetas PHP. En este ejemplo usamos . Puede salir

de PHP y regresar cuantas veces lo desee usando este mtodo. Para ms informacin, puede leer la seccin en el manual titulada Sintaxis bsica de PHP. Nota: sobre los avances de lnea Los avances de lnia tienen poco sentido en HTML, igualmente sigue siendo buena idea hacer que el cdigo HTML se vea limpio y bien, poniendo avances de lnea. PHP automticamente eliminar los avances de lnea puestos inmediatamente despus de cerrar ?>. Esto puede ser muy til si pone muchos bloques de PHP o incluye ficheros que contienen PHP que no se supone que deban mostarar nada. Al mismo tiempo, puede resultar un poco confuso. Se puede poner un espacio despus de cerrar ?> para forzar el mostrar un espacio y un avance de lnea , o se puede poner un avance de lnea explcitamente en el ltimo echo o print dentro de tu bloque en PHP. Nota: acerca de editores de texto Hay muchos editores de texto y Entornos Integrados de Desarrollo (IDE por sus siglas en Ingls) que puede usar para crear, editar, y organizar archivos PHP. Puede encontrar una lista parcial de stos en Lista de editores de PHP. Si desea recomendar un editor, por favor visite la pgina mencionada anteriormente, y comunique su recomendacin a las personas encargadas del mantenimiento para que lo incluyan en la lista. Contar con un editor que resalte la sintaxis de PHP puede ser de mucha ayuda. Nota: acerca de los procesadores de texto Los procesadores de texto como StarOffice Writer, Microsoft word y Abiword no son buenas opciones para editar archivos de PHP. Si desea usar uno de stos programas para probar sus scripts, primero debe asegurarse de guardar el documento en texto sin formato o PHP no ser capaz de leer y ejecutar el script. Nota: acerca del "Bloc de Notas de Windows" Si escribe sus archivos PHP usando el "Bloc de Notas de Windows", debe asegurarse de que sus archivos sean guardados con la extensin .php (El Bloc de Notas automticamente aade la extensin .txt a los archivos a menos que tome los siguientes pasos para prevenirlo). Cuando guarde sus archivos y el programa le pregunte qu nombre le desea dar al archivo, use comillas para indicar el nombre (es decir, "hola.php"). Una alternativa es, en la lista de opciones "Archivos de Texto *.txt", seleccionar la opcin "Todos los archivos *.*". Aqu puede escribir el nombre del archivo sin las comillas. Ahora que ha creado un pequeo script de PHP que funciona correctamente, es hora de trabajar con el script de PHP ms famoso; vamos a hacer una llamada a la funcin phpinfo() para obtener informacin acerca de su sistema y configuracin como las variables predefinidas disponibles, los mdulos utilizados por PHP, y las diferentes opciones de configuracin. Tomemos algo de tiempo para revisar esta informacin. Ejemplo #2 Obtener la informacin del sistema desde PHP

Algo til

Hagamos ahora algo que puede ser ms til. Vamos a comprobar qu clase de navegador est utilizando el usuario. Para hacerlo, vamos a consultar la informacin que el navegador nos enva como parte de su peticin HTTP. Esta informacin es guardada en una variable. Las variables siempre comienzan con un signo de dlar ("$") en PHP. La variable que vamos a utilizar en esta situacin es $_SERVER['HTTP_USER_AGENT']. Nota: $_SERVER es una variable especial reservada por PHP que contiene toda la informacin del servidor web. Es conocida como Superglobal. Consulte el manual en su seccin titulada Superglobales para ms informacin. stas variables especiales fueron introducidas en la versin 4.1.0 de PHP. Antes podamos usar las arrays $HTTP_*_VARS, tales como $HTTP_SERVER_VARS. Aunque stas han sido marcadas como obsoletas, tales arrays todava existen. (Tambin puede echar un vistazo a las notas relacionadas con el cdigo antiguo.) Para mostrar esta variable, se puede simplemente hacer: Ejemplo #1 Imprimir una variable (Elemento array) Un ejemplo del resultado de esta secuencia de comandos sera: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Hay muchos tipos de variables en PHP. En el ejemplo anterior imprimimos un array. Los arrays pueden ser muy tiles. $_SERVER es simplemente una variable que se encuentra disponible automticamente en PHP. Puede encontrar una lista en la seccin titulada Variables Reservadas del manual, o puede generar una lista completa creando un archivo como el ejemplo de la seccin anterior. Puede usar ms de un declaracin PHP dentro de una etiqueta PHP, y crear pequeos segmentos de cdigo que pueden hacer ms que un nico echo. Por ejemplo, si quisiramos detectar el uso de Internet Explorer, haramos algo as: Ejemplo #2 Ejemplo usando estructuras de control y functiones Un ejemplo del resultado de esta secuencia de comandos sera: Est usando Internet Explorer.

A continuacin introduciremos un par de conceptos nuevos. Tenemos una declaracin if. Si est familiarizado con la sintaxis bsica del lenguaje C, esto se vera lgico, Pero si no entiende C, u otros lenguajes de programacin donde encuentra la sintaxis usada anteriormente, probablemente debera conseguir un libro que le introduzca mejor a PHP, y lea los primeros captulos, o tambin puede ver la parte del manual titulada Referencia del lenguaje parte del manual. El segundo concepto que introducimos fue la funcin llamada strstr(). strstr() es una funcin integrada de PHP que busca un cadena dentro de otra cadena. En este caso anterior estamos buscando 'MSIE' (llamado aguja) dentro de $_SERVER['HTTP_USER_AGENT'] (llamado pajar). Si la cadena fue encontrada, la funcin devolver la posicin de la aguja relativa al inicio del pajar. De lo contrario devolver FALSE. Si no devuelve FALSE, la declaracin if se evala a TRUE y el cdigo adentro de las llaves {} es ejecutado. De lo contrario, el cdigo no ser ejecutado. Tmese la libertad de crear ejemplos similares usando if, else, y otras funciones como strtoupper() y strlen(). Cada pgina del manual contiene ejemplos que puede usar. Si no est seguro sobre el modo de uso stas funciones, es recomendable que lea las pginas del manual tituladas Cmo leer una definicin de funcin y la seccin relacionada a Funciones en PHP. Podemos continuar y demostrar cmo puede saltar adentro y afuera del modo PHP en el medio de un bloque de cdigo: Ejemplo #3 Mezcla de los modos HTML y PHP strpos() debe haber devuelto no falso Est usando Internet Explorer strpos() debi devolver algo diferente de falso No est usando Internet Explorer Un ejemplo del resultado de la secuencia de comandos podra ser: strpos() debe haber devuelto falso Est usando Internet Explorer En vez de usar una sentencia PHP echo para demostrar algo, saltamos fuera del cdigo PHP y escribimos solamente HTML. Este es un punto muy importante y potente que debemos observar aqu, y es que la fluidez lgica de la secuencia de comandos permanece intacta. Slamente las partes donde hay bloques HTML sern enviadas al visor dependiendo del resultado que strstr() devuelva. En otras palabras, si la cadena MSIE fue encontrada o no.

Uso de Formularios

Otra de las caractersticas ms importantes de PHP es que gestiona formularios HTML. El concepto bsico que es importante entender es que cualquier elemento de los formularios estar disponible automticamente en su cdigo PHP. Por favor lea la seccin del manual titulada Variables fuera de PHP para ms informacin y ejemplos sobre cmo usar formularios HTML con PHP. Observemos un ejemplo: Ejemplo #1 Un formulario HTML simple Su nombre: Su edad: No hay nada especial en este formularo, es solamente HTML sin ninguna clase de etiquetas especiales de ningn tipo. Cuando el usuario rellena ste formulario y oprime el botn Submit, una pgina titulada accion.php es llamada. En este archivo encontrar algo as: Ejemplo #2 Imprimir informacin desde nuestro formulario Hola . Usted tiene aos de edad. Un ejemplo del resultado de esta secuencia de comandos puede ser: Hola Jos. Usted tiene 22 aos de edad. Aparte de las funciones htmlspecialchars() y (int), debera ser obvio lo que hace el cdigo. htmlspecialchars() se asegura que todos los caracteres que son especiales en html sean codificados adecuadamente de manera que nadie pueda inyectar etiquetas HTML o Javascript en tu pgina web. El campo edad, como sabemos que es un nmero, podemos convertirlo en un integer que automticamente se deshar de cualquier carcter no numrico. Tambin puede hacer lo mismo con PHP con la extensin filter Las variables $_POST['nombre'] y $_POST['edad'] son establecidas automticamente por PHP. Anteriormente hemos usado la superglobal $_SERVER y ahora estamos apunto de introducirte la superglobal $_POST que contiene todos los datos del POST. Dese cuenta que el mtodo de nuestro formulario es POST. Si usa el mtodo fuera GET entoces los datos del formulario estaran en la superglobal $_GET. en lugar de POST. En su lugar tambin puedes usar la superglobal $_REQUEST, si no le importa el tipo de datos enviados desde el formulario. Contiene toda la informacin de GET, POST y COOKIE. Vea tambin la funcin import_request_variables(). En PHP, tambin puede tratar entradas desde formularios XForms; aunque probablemente en un comienzo se sienta a gusto con los formularios de HTML, que estn ampliamente respaldados. A pesar de que los XForms no son trabajo de principiantes, es posible que tenga inters en ellos. Si es el caso, en la seccin caractersticas de la documentacin puede encontrarse una pequea introduccin a la manipulacin de datos recibidos desde XForms.

Otro curso

CURSO PHP MYSQL Buenos das amigos de la comunidad Tupale, hoy he decidido crear un tutorial muy sencillo que explique una forma eficiente de crear sitios web con el lenguaje de programacin PHP y el sistema de bases de datos MySQL pero empezando desde cero, veremos paso a paso como utilizar las herramientas y crear las secciones de una manera sencilla para que una vez termines con el tutorial puedas salir a crear sitios web dinmicos de una manera eficiente y sencilla. Lo primero que tendremos que hacer sera empaparnos un poco del tema, y de eso se trata este capitulo, conocer que es un sitio web dinmico, esttico, saber que es php, que es una base de datos, etc, y aunque muchos dirn que es contenido superfluo considero que si vamos a hacer un tutorial o curso para todo el mundo debemos partir por lo mas bsico para asegurarnos que todos los que toman este tutorial estn en un mismo nivel o similar de conocimiento.

proceso de sitio estticos y dinmicos Cual es la diferencia entre un sitio web esttico y uno dinmico? Es muy sencillo, los sitios web estticos son aquellos que no cambian ni manejan informacin con respecto al usuario o al administrador, siempre que los visitas son exactamente iguales y su nica funcin es mostrar una informacin que no se va a actualizar, por otra parte, los sitios dinmicos son aquellos que toman informacin del usuarios o de otra fuente para generar cambios en el funcionamiento y contenido del sitio. Por ejemplo el sitio web de tupale es un ejemplo de un sitio dinmico, ya que los post o noticias o contenidos son agregados dinamicamente a travez de un panel de administracion echo en PHP que guarda la informacin en una base de datos MYSQL (si muchos diran que es un simple wordpress pero solo intento dar una idea), ademas de ellos los usuarios pueden agregar contenido a travez de los comentarios y realizar un registro. Una de las principales diferencias entre los sitios estticos y dinmicos es el lenguaje de programacin con los que estn echos, ya que para lograr el dinamismo del que hablamos se necesita que el lenguaje en el que se trabaja pueda procesar datos. Voy a intentar explicarlo mejor:

Los sitios en HTML plano son sitios estaticos pues HTML por si solo no puede procesar informacion del usuario o del servidor o de alguna otra aplicacion, HTML es un lenguaje que simplemente sirve para crear documentos y mostrarlos en el navegador, pero es muy importante saber HTML ademas no es muy complicado. HTML es un lenguaje que se interpreta en cliente, quiere decir que simplemente es traducido por tu navegador o browser. Los sitios web dinmicos por lo general echos en PHP ofrecen la interactividad de informacin de la que estamos hablando, donde el sitio puede leer informacin de diferentes fuentes y transformarlas en eventos. Ojo PHP no es una alternativa a HTML, ya que PHP no es un lenguaje de marcas sino de scripting, quiere decir que lo que haces con PHP no se visualiza sino que se interpreta, y el resultado no es un documento sino un comportamiento, una funcin o un evento que produce algo con la informacin que se le suministra, pero no te asustes aun con tantos tecnicismos solo es una explicacin mas adelante explicaremos mejor todo esto. PHP es un lenguaje activo en servidor, quiere decir que se procesa en el servidor de Internet en el que alojas tus archivos y no necesariamente enva datos al cliente (navegador o browser). Que es una base de datos MySQL? MySQL por otra parte no es un lenguaje de programacin sino un gestor de bases de datos, su funcin es simplemente guardar informacin de una manera organizada y con una estructura que facilite el acceso a dicha informacin, por ejemplo un sitio como este tiene una base de datos con varias tablas, una de ellas seria por ejemplo contenidos y dentro de la tabla de contenidos tendramos campos con la informacin de los contenidos (ej. titulo, fecha, autor, etc), de manera que todos los contenidos los puedo almacenar en una tabla y poder utilizarlos en el momento que sea necesario. Para que te sea mas claro imaginate una tabla de MySQL como una hoja de excel, donde los campos son las columnas (vertical) y los registros son las filas (horizontal).

Tabla MySQL Como pueden ver en el ejemplo hay una columna para cada dato y una fila para cada registro, en este ejemplo se ve una tabla llamada usuarios donde tenemos listados los usuarios de un sitio web con su nombre de usuario, password, correo electrnico y nivel de acceso ademas de otros datos.

Noten que cada registro (fila) tiene un idusuario este es un identificador, nos sirve para diferenciar un usuario de otro asi que si decido ver la informacion del usuario 8 tendre el nombre Luis Henao, correo [email protected] y as sucesivamente. MySQL no funciona solo, debe ser llamado por un lenguaje activo en servidor (en este caso PHP) para poder trabajar. Mas informacin sobre HTML, PHP y MYSQL Que es un servidor web? Un servidor web o servidor de hosting es una maquina que alojara los archivos de tus sitios web, cuando tecleas Google.com o cualquier otra direccin estas viendo los archivos almacenados en un servidor web, algunas herramientas indispensables para el desarrollo de sitios web como PHP y MySQL solo funcionan en servidores web. De ay la exprecion de lenguaje activo en cliente o en servidor, depende de donde se ejecuta el codigo (ej. Javascript es un lenguaje activo en cliente pero PHP es un lenguaje activo en servidor). Que software necesito para crear sitio web estticos y dinmicos? Bueno esta parte es muy importante ya que los programas que aqu mencionamos son fundamentales para continuar tomando el curso te creacin de sitios web dinmicos con PHP y MySQL. Aunque existen muchas alternativas a los programas que aqu voy a mencionar, recomiendo que usen especficamente estos ya que el resto del curso hablara de estas herramientas en especial.

Adobe Creative Suite mejor conocida como Adobe CS3, Adobe CS4 o Adobe CS5. Aunque finalmente este tutorial o curso se basara solamente en dos herramientas bsicas del Adobe Creative Suite: Adobe Dream Weaver y Adobe Fireworks. Descargar Adobe CS4 Master Collection XAMPP Xampp es una herramienta que crea un servidor local en tu equipo ya que el cdigo PHP solo puede ser ejecutado en servidor, esto lo hacemos para poder probar los sitios que hagamos de manera local antes de subirlos a Internet. (Incluye: APACHE, PHP, MySQL, PHPmyAdmin). Descargar Xampp server NicoFTP3 Este es un simple cliente de FTP que utilizaremos cuando vallamos a publicar nuestro sitio en Internet, es muy fcil de usar y de fcil configuracin. Descargar NicoFTP3

Creo que ya tienes suficiente tarea que hacer, lee sobre servidores web, sobre hosting, sobre HTML y PHP, instala el software del que hablamos y pasa al siguiente capitulo. CAPITULO 2

Antes de comenzar este nuevo capitulo del curso tengo que dar gracias por la acogida que tubo el capitulo 1, recib muchos comentarios y correos sobre el post que hacen valer el trabajo de sentarme aqu a darles el conocimiento que tengo. Esperando que ya hallan estudiado un poco sobre los temas del capitulo 1 (Crear sitio web con PHP y MySQL paso a paso capitulo 1) vamos a entrar en materia, y aunque se que estn animados para empezar a programar sus sitios con PHP y MySQL este capitulo lo dedicare a explicar una cosa que me hubiera sido muy til cuando empece en esto. La planificacin del sitio web. Ya que considero que el 80% del tiempo de un desarrollo y la mayora de inconvenientes y errores que se presentan se deben a una mala planificacin del proyecto. Marco lgico o terico del proyecto Primero abarquemos el marco terico lgico, que es simplemente analizar el tipo de sitio que vamos a desarrollar, el objetivo, quien es nuestro publico, que pretendemos hacer con el, etc. Pero como este es un curso paso a paso, no me limitare a decirlo sino que pondr un ejemplo con un proyecto real en el cual ahora me encuentro trabajando. Mi proyecto es un sitio web sobre el Visual Rock 2010 (Festival Colombiano de rock), de manera que buscare hacer uso de la multi-media, audio y vdeos ya que hay que promocionar bandas, entonces quiero las siguientes secciones de contenido:

Seccin de vdeos y cada vdeo tendr la siguiente informacin: Nombre del vdeo, descripcin del vdeo, artista, archivo de vdeo, genero, imagen miniatura, fecha de publicacin y puntuacin. Seccin de Fotos y cada foto tendr: Nombre de la foto, archivo de imagen, miniatura, fecha de publicacin y puntuacin. Seccin de noticias y cada noticia tendr: Titulo de la noticia, contenido de la noticia, imagen de la noticia, fecha de publicacin y puntuacin. Seccin de eventos y cada evento tendr: Nombre del evento, fecha de realizacin, lugar del evento, descripcin del evento y puntuacin.

No se si lo han notado pero este simple proceso automticamente nos dice cual es la estructura de la base de datos, que mas adelante explicare como crear. La importancia de este proceso radica en saber por anticipado todo lo que vamos a necesitar y hacer cada modulo pensando en el siguiente. Imaginemos que creamos el sitio y a la mitad del desarrollo decidimos agregar una imagen miniatura en los vdeos, si no lo planeamos con anticipacin podra generar varios problemas. Ahora sobre el comportamiento del usuario en el sitio y los servicios que este debera ofrecerle.

Es un sitio joven y pretende mantener informado al publico as que los enganchare con un sistema de registro de usuarios, y como estarn registrados me proporcionaran sus datos para crear un sistema que envi un boletn publicitario constantemente. Por el mismo punto anterior se que la mayora usa redes sociales as que agregare herramientas para compartir los contenidos (Noticias, fotos, vdeos y eventos) a travs de las principales redes sociales.

Maqueta bsica (borrador)Tambin considero muy importante esta parte, y es igualmente importante que se haga en una hoja de papel y preferiblemente con lpiz en lugar de bolgrafo. Aqu es donde definirn como estar organizado el sitio y como van a distribuir los bloques dentro de la pagina. La importancia de hacerlo a lpiz radica en que cuando hacemos la parte creativa detrs de un ordenador nos sometemos a las herramientas que nos brinda y no exploramos mas posibilidades, en pocas palabras terminamos haciendo lo que el ordenador nos entrega y no lo que nosotros queremos (Cranme a mi me pasa todo el tiempo).

Maqueta basica Des esta manera podemos hacernos una idea clara de como va a estar construido nuestro proyecto y nuestra labor sera mas sencilla, ya no volveremos a preocuparnos por decisiones de objetos o sobre el que colocar y que no, y nos dedicaremos solamente a conseguir el sitio tal cual lo ideamos en la planificacin.

Recoleccin de contenidoOjo, en la mayora de los sitios debes considerar la diagramacin del sitio a partir del contenido, por ejemplo en mi caso, ya que mi sitio sera de msica y bandas de rock, necesito los vdeos y debo crear el plano bsico del sitio web basado en esa necesidad, ademas de determinar la cantidad de material a mostrar para definir como se organizara.

Si tu sitio va a tener un solo vdeo, puedes incluirlo en alguna parte del diseo o si va a tener solo algunos (5 o 10 vdeos) puedes crear un bloque en el diseo donde los listes, pero si esperas tener muchos vdeos probablemente tendrs que idear una estructura con buscador y separacin por categoras o algn tipo de filtro para que los usuarios puedan acceder fcilmente a cualquier vdeo. Por lo tanto recuerda el diseo del sitio web o la maqueta bsica debe trabajar en funcin del contenido del sitio.

Mira a tu competencia, directa o platnica.Una de las maneras mas sencillas de ver que seria lo mas util para nuestro proyecto es ver la competencia o los sitios que manejan el mismo tema o la misma corriente, para mi caso personal (Visual Rock) miro muy bien sitios como http://www.rockalparque.gov.co/ o http://www.bogotaciudadrock.com/cmsbcr/ y aqui veo que es lo que mas le conviene a mi sitio web. Los buenos artistas copian, los grandes artistas roban. Pablo R. Picasso Tambin consulta galeras de sitios web donde puede copiar muy buenas ideas para tu proyecto, como botones, estructuras, diseos, herramientas, modos de navegacin, etc. Mi recomendado para esto es http://www.cssmania.com/ pero existen muchas alternativas. Y eso fue todo por hoy, aunque algunos les parezca que este curso va mas lento que una carrera de caracoles paralticos, pues esa es la idea, paso a paso, analizar cada aspecto posible del desarrollo del sitio de una manera masticable para cualquier usuario. Hasta la prxima. CAPITULO 4 Bienvenidos a la 4 entrega del tutorial que se convirtio en curso Crear sitio web con PHP y MySQL paso a paso. Como es costumbre comenzare agradeciendo a las personas que siguen el curso y disculpndome por la demora en la publicacin de este nuevo capitulo del mismo. Tambin como es normal les dejo los anteriores captulos para aquellos usuarios que no los han visto. 1. Crear sitio web con PHP y MySQL paso a paso capitulo 1 2. Crear sitio web con PHP y MySQL paso a paso capitulo 2 3. Crear sitio web con PHP y MySQL paso a paso capitulo 3 Ahora si entremos en materia, este capitulo lo dedicaremos a estructurar la base de datos, y aunque suena muy tcnico realmente es algo que no necesita muchos conocimientos, sin embargo se requerir de mucha lgica y sentido comn. De la correcta construccin de nuestra base de datos depender en gran parte el tiempo que tardemos desarrollando el sitio.

Lo primero que debemos hacer (teniendo en cuenta que ya tenemos instalado Xampp y todo el software del que hable en el capitulo anterior) es abrir nuestro PHPMyAdmin, que es el gestor de bases de datos, es simplemente una interfaz que nos permite manipular las bases de datos de nuestro servidor. Para acceder a nuestro PHPMyAdmin solo debemos ir al sitio http://localhost/phpmyadmin y nos debe aparecer una pagina muy similar a esta.

Estructurar base de datos mysql Bueno entonces lo primero que vamos a hacer es crear nuestra base de datos en el campo del centro. Es importante tener mucho cuidado con la ortografa en estos casos ya que un fallo en una letra puede significar el fallo total de nuestro sistema, tambin te recomiendo que uses solo caracteres alfabticos (letras a-z) en minscula y si necesitas separar palabras usa guiones bajos _, porfavor no utilices espacios en blanco o acentos, tildes, ees o cualquier otro carcter extrao. En mi caso mi base de datos se llama visualrock, y ahora procedemos a crear las tablas, pero primer una explicacin de trminos importantes sobre bases de datos:

Base de datos: es un conjunto de tablas, como el sitio donde almacenaras toda la informacin de un sitio o proyecto. Tablas: Es como una hoja de excel, con filas y columnas. Campos: Son las columnas en las tablas y seran las variables donde se almacenan los datos. Registros: Son las filas, cada insercin de informacin en la base de datos. Datos: Esta es la informacin que finalmente guardas y que manipulas en el sitio, cada dato se almacena en el cruce de un campo (columna) con un registro (fila).

Estructurar base de datos mysql Bueno, ahora si procederemos a crear nuestras tablas basados en lo que hicimos en captulos pasados de idear el contenido del sitio y su organizacin. Comenzare con la tabla de administradores, ya que tendr varios usuarios con niveles de administrador para que puedan agregar contenido al sitio. As que creo una nueva tabla en mi base de datos llamada administradores y en numero de campos colocaremos la cantidad de campos que usaremos, pero un momento como se cuantos campos voy a necesitar?. Primero antes de crear cada tabla haz un esquema con lpiz y papel para saber la cantidad exacta de campos que vas a utilizar y el tipo de campos que deben ser. Los campos almacenan informacion dependiendo del tipo de campo que sean (NO TODOS LOS CAMPOS SON IGUALES) hay varios valores pero aqui te nombrare los mas importantes.

INT: Quiere decir entero y solo almacena nmeros enteros. Se usa para almacenar edades, valores, cantidades, todo lo que dependa solo de nmeros, como un contador de visitas por ejemplo, solo almacenar un numero. VARCHAR: Este almacena cadenas de texto de mximo 256 caracteres. Ideal para almacenar nombres de usuario, o contraseas, o comentarios, palabras o frases, nada que requiera mas de 256 caracteres. TEXT: Es igual que varchar pero para textos grandes, es decir almacena cualquier tipo de texto con un limite muy amplio, aqu por ejemplo se almacenara el contenido de las noticias o artculos de tu sitio que podran tener muchas paginas de texto. DATE: Almacena fechas con un formato especial de fecha AAAA-MM-DD DATETIME: Almacena datos con fecha y hora, similar al anterior pero agrega la hora: AAAA-MM-DD hh:mm:ss

Existen otras tipos de campos pero no profundizare en ellos porque los que acabo de nombrar son todos los que usaremos dentro del curso. Entonces dibujemos el esquema de nuestra primera tabla para saber cuando campos debe tener: Tabla: administradores idadministrador (INT, PRIMARY, AI) usuario (VARCHAR, 255) password (VARCHAR, 255) nivel (INT) Esta echo!, son solo 4 campos pero ahora explicare cada uno de ellos:

idadministrador: Es un campo de identificacin, todas las tablas deben tener un id que identifica cada registro, recomiendo que este campo lo definas igual en todas las tablas de tu base de datos. Es un campo INT (entero) solo recibe numero, y en la parte de propiedades le asigne el valor PRIMARY (Primario) que me indica que el campo es el identificador de los registros y por ultimo AI (auto incrementar) lo que har es que cada vez que agreguemos un registro le asignara un valor consecutivo. Los campos INT no requieren que se defina el largo de caracteres. usuario: Este sera el nombre del usuario y es un campo VARCHAR (cadena de texto), a estos campos varchar si debemos definir el largo de caracteres por lo que tiene asignado 255 (no coloco 256 porque el cero tambien cuenta como carcter). password: Este campo es igual al anterior. nivel: pensando en que habr diferentes niveles de acceso al panel de administracin coloque este campo, tambin como INT (Entero), de manera que si un administrador tiene nivel digamos 1 tendr un mayor o menor acceso que un administrador con nivel 2.

Estructurar bases de datos mysql Esto generara un codigo SQL como asi: `idadministrador` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `usuario` VARCHAR( 255 ) NOT NULL , `password` VARCHAR( 255 ) NOT NULL , `nivel` INT NOT NULL No se preocupen por este codigo, es solo la parte trasera de lo que esta sucediendo en mysql, solo es importante si quieren aprender SQL a fondo pero lo iremos estudiando paso a paso.

Estructurar base de datos mysql Listo !!! ya tenemos creada nuestra primera tabla, esta es nuestra primera hoja de excel para administrar informacin, en el men superior de la tabla encontraras algunas herramientas como:

Examinar: Aqu puedes navegar entre los registros que has insertado, al principio no te dejara acceder pues aun no hay ningn registro en la base de datos. Estructura: Te mostrara los campos de la tabla con sus propiedades, desde esta pestaa podrs hacer cambios en la estructura, pero entre menos cambios tengas que hacer mejor. SQL: es para ejecutar el lenguaje de programacin de bases de datos SQL. Insertar: desde aqu puedes insertar algunos registros en tu base de datos, til como para que hagas pruebas ya que la base de datos la manejaremos dinamicamente desde nuestro sitio web una vez terminado.

Ahora repite el proceso con las dems tablas siguiendo los pasos anteriores, aqu te dejare un ejemplo de las tablas que tiene mi sitio para que veas como se puede hacer.

tabla mysql estructura

tabla mysql estructura Eso es todo por este capitulo, en el prximo capitulo empezaremos con el montaje en fireworks del diseo y como pasarlo a dreamweaver. Por ahora los dejo con algunas recomendaciones finales.

Recuerda siempre agregar el campo de ID (identificacin) en cada tabla con valor entero, primario y auto incrementar, si olvidaste hacerlo con alguna tabla es mejor borrar la tabla y crearla de nuevo. Usar siempre caracteres alfabticos (a-z) en minscula y sin espacios. Asignar el tipo de campo dependiendo de la informacin que vas a agregar en el, si es un numero debe ser INT, si es fecha que NO sea varchar, etc.

He habilitado el foro para que puedan hacer las preguntas que quieran con respecto a este curso.CAPITULO 5

Buen da amigos de Tupale, comenzamos aqu otro capitulo mas de curso para Crear sitios web con PHP y MySQL paso a paso y como es habitual debo comenzar agradeciendo a todos los que retwitearon y compartieron el capitulo anterior en redes sociales, ademas de dar un especial agradecimiento a los usuarios que dejaron sus comentarios a travs del sitio. Y como es costumbre tambien aqui les dejo los enlaces a los otros capitulos del curso: 1. 2. 3. 4. Crear sitio web con PHP y MySQL paso a paso capitulo 1 Crear sitio web con PHP y MySQL paso a paso capitulo 2 Crear sitio web con PHP y MySQL paso a paso capitulo 3 Crear sitio web con PHP y MySQL paso a paso capitulo 4

Este capitulo lo dedicaremos a la parte del diseo, la cual tambin va a ser paso a paso y en la que enseare algunas costumbre que no pondrn muy felices a los diseadores pero todo en pro de ser eficiente y lograr un producto web de alta calidad en poco tiempo. Si eres diseador hardcore y solo te interesa este curso por la parte de PHP y MySQL puedes saltarte este capitulo, el cual solo va orientado a disear la plantilla. Bueno para comenzar debo remontarme a otro capitulo de este curso donde publique la maqueta que esta a continuacin y les deca que es muy importante disear primero en papel el sitio que queremos tener, aunque nunca va a llegar igual a la pantalla pero es bueno hacerse a la idea de que se quiere.

Maqueta basica Una vez que tenemos esto dibujado en papel abrimos nuestro Fireworks y comenzamos a trabajar. Si nunca en tu vida has usado Fireworks, pues no croe que haya un buen curso de como hacerlo, es mas bien un juego de experimentacin. debes jugar mucho con las herramientas y aprender a utilizarlas, no es muy dificil, algunos dicen que Fireworks es como un power point con esteroides. Bueno ahora comencemos con las malas costumbres de las que yo hablaba que no son muy bien vistas desde el campo del diseo pero de seguro ahorraran mucho trabajo. La primera de ella se basa en una frase de Pablo Piccaso: Los buenos artistas copian, los grandes artistas roban. Es por eso que a la hora de disear siempre acostumbro buscar material interesante para usar algunos elementos, aqu les dejo un listado de sitios de donde pueden sacar muy buenas ideas, aunque la recomendacin principal es navegar mucho para conocer muchos sitios web con muchos estilos diferentes.

CSS Mania Template Monster Web Digiti Ceeces Vecindad Grafica

Una forma fcil de utilizar estos sitios es con la tecla imprimir pantalla, lo que normalmente hago es buscar un diseo con una arquitectura acorde a la que necesito y luego imprimir pantalla, llevo la imagen a Fireworks y comienzo a trabajar sobre la imagen de pantalla que acabo de sacar.

Como copiar plantillas fireworks Espero que esta imagen ejemplifique mas cual es el proceso para copiar el estilo de un sitio con Fireworks. xD

Iconos gratis para web De echo ahora que lo pienso bien la mayor parte del diseo y desarrollo de sitios consiste en la bsqueda de herramientas y recursos que nos sean tiles. Otro ejemplo de esto son los iconos, que le dan mucha vida a nuestro sitio web, y tambien hay muchos sitios que ofrecen sets de iconos gratis para que uses como este (Free Web icons). es importante mantener la unidad grfica en los iconos para que la pagina sea fcil de navegar, si los iconos no coinciden van a tener muchos problemas de navegacin. De la misma manera pueden hacer con las fotografas, para ahorrar tiempo y dinero pueden usar bancos de imgenes y buscar el material necesario para su proyecto web, una de las paginas que mas recomiendo es SXC que es un banco de imgenes muy grande con la ventaja de ser gratuito. Bueno para ayudar a los son novatos en Fireworks (yo tambin lo fui) aqu les dejo un vdeo tutorial que ensea lo mas bsico y til.

Aclaracin, estos vdeo tutoriales tambin hablan de un modo de exportacin de imgenes que no es recomendado, sin embargo pueden utilizarlo, finalmente cada persona termina diseando y exportando pero no recomiendo el mtodo que se emplea en este vdeo tutorial, solo los publico para que conozcan mas de Fireworks. Consejos importantes antes de continuar: 1. El ancho mximo de tu rea de contenido no debe pasar los 1000 pixeles pues asumiremos que el sitio esta echo para usuarios estndar con pantallas de 1024*768px de resolucin. 2. Mantn separadas las secciones como el header (cabecera), el sidebar (menu lateral), el body (cuerpo de pagina) y el footer (pie de pagina) para evitar problemas a la hora de pasarlo a Dreamweaver. 3. Si eres nuevo en maquetacin de sitio procura usar reas cuadradas para ahorrar trabajo y dolores de cabeza en el montaje. 4. Trabaja con una resolucin superior a 100 pero inferior a 200 as mantendrs tus archivos con buena calidad pero con un peso optimo. 5. Para exportar las imgenes te recomiendo hacerlo en PNG 32 o JPG con calidad de 75, es optimo para web. 6. Cualquier pregunta que tengas puedes hacerla en el foro de webmasters. Otra forma fcil de ahorrar tiempo en este paso del desarrollo del sitio y que es muy buena cuando te interesa mas la programacin que la apariencia o no tienes el tiempo para disear un buen template es usar un template gratis. En free web templates puedes encontrar

muchos que te pueden interesar, de esta manera solo debes cambiar las imgenes y retocar algunos detalles para tener lista la apariencia de tu sitio. Ahora pasar el contenido de Fireworks a Dreamweaver. Imaginemos que ya tenemos listo el diseo en Fireworks, como consejo personal tambin recomiendo que guarden los PNGs de Fireworks en una carpeta para cuando necesiten hacer modificaciones sobre el diseo, pueden hacerlo dentro de la misma carpeta del sitio que ya hemos creado previamente en el capitulo 3 de este curso.

Archivo PNG Visual Rock Consejos para hacer mas fcil la exportacin de las imgenes: 1. Las reas que son fondos repetitivos puedes exportarlas en pequeas piezas y desde CSS las pondrs a repetir. 2. No exportes los textos, estos debes agregarlos desde dreamweaver. 3. Separa muy bien las imgenes que sern parte del contenido de las que sern parte del diseo, por ejemplo en la plantilla que estoy trabajando el fondo es parte del diseo pero la imagen que dice visual rock 09 es parte del contenido as que no las combino en una sola imagen. 4. Los nombres de los archivos que exportes gurdalos en minsculas y sin espacios o caracteres extraos para evitarte problema con las rutas. Aqui les dejo un ejemplo de todas las imgenes que componen mi template (visual rock) para que se hagan una idea de como se exportan. Descargar: imagesvisualrock Ya que este capitulo se esta tornando demasiado largo cortare aqui por hoy pero prometo que maana publicare una segunda parte explicando el proceso de construccin de la pagina en dreamweaver con las imgenes que obtuvimos a travs de este capitulo.CAPITULO 6

Bienvenido a la mas demorada entrega del curso Crear sitio web con PHP y MySQL paso a paso, lamento mucho la larga ausencia de mas de una semana pero mis obligaciones me impidieron continuar con el curso, sin embargo aqu estamos de nuevo con un capitulo mas y como es costumbre aqu publico los captulos anteriores para que aquellos que no conocen en curso. 1. 2. 3. 4. 5. Crear sitio web con PHP y MySQL paso a paso capitulo 1 Crear sitio web con PHP y MySQL paso a paso capitulo 2 Crear sitio web con PHP y MySQL paso a paso capitulo 3 Crear sitio web con PHP y MySQL paso a paso capitulo 4 Crear sitio web con PHP y MySQL paso a paso capitulo 5

Ahora si comencemos con el montaje del sitio en Dreamweaver, para esto primero deberemos estudiar dos cosas fundamentales, primero que es HTML aunque se supone que desde el capitulo 1 ya lo haban estudiado por lo tanto aqu solo les pedir que lo repacen MUCHO, HTML es el corazn de la web y aunque algunas personas piensen que no es importante yo considero que es el ncleo de todo y de ay empezamos a expandir nuestros proyectos web. Como siempre trato de apoyarlos aqu les dejo un sencillo PDF que muestra las etiquetas bsicas de HTML solo para que se familiaricen pero es muy importante conocer la mayor cantidad de etiquetas posibles. Listado de etiquetas HTML Tambin es muy importante aprender CSS ya que la diferencia entre una web optimizada, agradable, rpido, etc, y una web, lenta, desagradable, desorganizada, etc, esta en el CSS, este lenguaje se usa simplemente para maquetar los sitios y dar apoyo al HTML de manera que puedas delegar el diseo enteramente a CSS y el contenido a formatearlo con HTML. Espero que la siguiente grfica ejemplifique mejor lo que quiero decir.

Con CSS y Sin CSS Bueno ahora si debemos ir a Dreamweaver para comenzar a maquetar nuestro sitio. lo primero que debemos saber es que hay dos formas de maquetar, la salida fcil usar tablas y

las salida esttica de alta calidad aunque un tanto mas complicada usar DIV de CSS, pero para que entendamos las dos lo que voy a hacer es una especie de hbrido donde usare tanto tablas como CSS y varias cosas diferentes para que puedan conocer diferentes tcnicas y determinen cual es la que mas les gusta a ustedes. Lo primero que haremos sera crear el primer documento que sera nuestro ncleo de sistema, nuestro index.php es importante que para este paso ya tengan definido el sitio en Dreamweaver y configurado con el Xampp como servidor de prueba como se menciona en el capitulo 3 luego creamos un nuevo documento del tipo PHP.

Crear documento PHP desde DreamWeaver Ahora procederemos a definir la propiedades de la pagina dando clic derecho y luego en la opcin Propiedades de pagina, al rellenar el formulario que nos aparece en este cuadro de dialogo Dreamweaver nos generara un CSS con las propiedades bsicas de la pagina que podremos ver en la vista de cdigo El codigo CSS se colorea de rosado por defecto. Aqu definiremos cosas bsicas como el tamao de la fuente, el tipo de fuente, el color, el color de fondo y la imagen, tambin las margenes y otras generalidades. Tambin es importante abrir la opcin de vnculos en la parte izquierda y definir los colores de los enlaces y el efecto sobre (a:hover).

Definir propiedades de pagina en dreamweaver

Comenzaremos a diagramar primero con tablas para que se hagan una idea de como es este mtodo, iremos al men insertar y luego insertaremos Tabla. con lo que nos aparecer un cuadro de dialogo que nos har unas preguntas bsicas sobre la tabla que queremos insertar. Es muy importante que antes de insertar la tabla uses la lgica para definir que tipo de tablas necesitas y con que cantidad de filas y columnas. Como es normal voy a hacer un ejemplo.

Diagramacion con tablas en Dreamweaver En este ejemplo mostr como debe estar definida la tabla con 4 filas y una columna aunque la ultima fila tiene 4 columnas, para hacer esta modificacin simplemente nos situamos sobre la fila y vamos al icono de dividir celda en la barra de propiedades.

Insertar tabla Dreamweaver

Si seleccionamos la tabla, en la parte inferior podremos ver el panel de propiedades de la tabla, aqu podremos definir las propiedades como el ancho en pixeles o porcentajes y la alineacin de la tabla.

Propiedades de la tabla Dreamweaver Nuestro siguiente paso sera comenzar a agregar los contenidos o bloques de contenido dentro de nuestro diseo inicial en mi caso inserte una imagen total como cabezote (Header) as que solo debo situarme en la primera celda y luego ir a la opcin Insertar >> Imagen. De la misma manera que con las tablas, al seleccionar la imagen que has insertado puedes ver el panel de propiedades donde te recomiendo poner border = 0. Advertencia, no es recomendable de echo debera ser prohibido redimencionar las imgenes desde Dreamweaver. Si necesitas cambiar el tamao de alguna imagen abre dicha imagen en Fireworks y exportala con el nuevo tamao. Ahora vamos a situarnos en la siguiente celda que sera la del men de navegacin, en este caso deberemos utilizar un poco de HTML y CSS muy simple, pero esto lo he publicado en un tutorial aparte para las personas que buscan este contenido independientemente del curso. Crear un men desplegable en CSS pero sin Javascript En la tercera celda coloque un scroll, slide o carrusel de imgenes en jquery, esto es algo as como un plugin o un cdigo que se encuentra fcilmente en Internet y se lo adherimos a nuestra pagina, esta tcnica debes usarla mucho para los widgets o mdulos que quieras incluir. De ese carrusel tambin he puesto un ejemplo en un tutorial aparte. Carrusel jQuery compatible con sexy light-box Y de la misma manera que en el capitulo anterior siento que este se esta haciendo demasiado largo as que terminare aqu por hoy prometiendo no tardar tanto para la continuacin del curso, sobretodo porque este capitulo queda incompleto ya que no termine de explicar la parte de CSS, sin embargo les recomiendo que estudien muy bien HTML y CSS para el siguiente capitulo.CAPITULO 7

Bienvenidos a una nueva entrega del curso sobre como Crear sitios web con PHP y MySQL paso a paso. Se que muchos han esperado por largo tiempo esta entrega y me disculpo por ello pero el trabajo no da mucho tiempo para las webs personales.

Quiero agradecer especialmente a los usuarios que me han enviado sus mensajes de apoyo y sus opiniones sobre el curso, tambin a los que dejan sus comentarios, muchas gracias por el apoyo, pero ahora necesito que apoyen aun mas el sitio recomendando a travs de las redes sociales (twitter y facebook), en la parte superior hay unos botones para cada red, nada cuesta twittear o facebookear este capitulo del curso y si estarn apoyando al creador. Ahora volvamos con los tradicional, el listado de los captulos anteriores de este curso: 1. 2. 3. 4. 5. 6. Crear sitio web con PHP y MySQL paso a paso capitulo 1 Crear sitio web con PHP y MySQL paso a paso capitulo 2 Crear sitio web con PHP y MySQL paso a paso capitulo 3 Crear sitio web con PHP y MySQL paso a paso capitulo 4 Crear sitio web con PHP y MySQL paso a paso capitulo 5 Crear sitio web con PHP y MySQL paso a paso capitulo 6

En el capitulo anterior estbamos viendo como maquetar un sitio, bueno creo que hay mucho y poco que decir sobre este tema, cada quien tiene una forma de maquetar y siempre existir la dualidad entre maquetar con tablas o con divs CSS, yo personalmente recomiendo hacer un hbrido de los dos ya que aunque usar divs mejorara su posicionamiento y un poco el rendimiento de su sitio, usar tablas les ahorrara mucho trabajo y dolores de cabeza acomodando objetos y sern mucho mas eficientes a la hora de trabajar. Ahora quiero ensearles como quedo finalmente el sitio que inspiro este curso Visual Rock 2010. aunque sinceramente termino un poco desordenada debido a una serie de cosas que no se plantearon antes de comenzar el desarrollo. Ahora vamos a comenzar con la parte interesante que es el administrador de contenido y la creacin de los comportamientos dinmicos, en resumen lo que nos permitir administrar nuestro sitio web desde un panel de control sin tener que abrir dreamweaver cada vez que queramos hacer un cambio. es aqui donde nace la magia de usar PHP y MySQL. Debido a que este es un curso enfocado solo en la creacin del sitio, no voy a profundizar en las funciones PHP o en las consultas MySQL solo en las herramientas que nos da Dreamweaver para crear un sitio de este alcance. Entonces manos a la obra, vamos a construir nuestro sistema o panel de administracin, de manera que crearemos una carpeta nueva dentro de nuestro sitio llamada admin o administrador o como quieran llamarle, en esta carpeta guardaran todos los archivos de su panel de administracin. Te recomiendo que por anticipado coloques estas cosas bsicas en tu carpeta de administracin. 1. Un set de iconos, te puede ser muy util puedes conseguir varios en http://www.freeiconsweb.com/ procura tener mucho iconos para cualquier accin que realices y que tenga una linea grfica similar para que se vean bien.

2. Un editor Wisyng, es un simple script para colocar editores HTML a tus reas de texto asi cuando vallas a agregar contenido desde tu administrador podras usar, negrillas, prrafos y en fin muchos elementos que facilitaran el trabajo de quien agrega el contenido. Existen dos editores Widyng que yo recomiendo, uno es el CKeditor que es que mas uso en mis proyectos por su robustez y su soporte, aunque debo reconocer que TinyMCE suele ser mucho mas eficientes en muchas ocasiones. CKEditor: http://ckeditor.com/demo TinyMCE: http://tinymce.moxiecode.com/examples/full.php 3. Scripts que puedas necesitar, que te puedan ser tiles, libreras de PHP, aunque no es obligatorio y tal vez no entiendas que son las libreras pero bueno son pequeos scripts que en determinado momento nos pueden ahorrar trabajo, por ejemplo si voy a enviar muchos correo electrnicos desde mi sitio podra usar la librera o clase PHPmailer. Sin embargo no te preocupes mucho por esto, durante el curso voy a publicar los cdigos que utilizo frecuentemente para que te faciliten la vida. 4. Extensiones de Dreamweaver para ahorrar trabajo, hay muchas extensiones de Dreamweaver que nos pueden ayudar a la hora de realizar ciertos procesos que podran ser un poco tediosos o complicados. Por ejemplo para paginar registros yo recomiendo el FX Record set, que es una herramienta excelente ademas que sera muy utilizada durante este curso as que deberan instalarla. Bien una vez que estamos preparados comenzaremos creando el sistema de login o sistema de usuarios, de manera que crearemos un archivo llamado login.php y lo colocaremos dentro de nuestra carpeta administrador, en este archivo obviamente deberemos hacer el formulario de login para acceder al sitio de administracin. Recuerda usar el panel de propiedades para asignar el nombre al campo dle formulario y procura llamarlo igual que el campo en la base de datos, eso te ahorrara tiempo. tambin es buena idea definir el nombre del formulario y generalidades, es muy importante que este formulario se envi mediante POST y tambin recuerda colocar la propiedad de password al campo de contrasea como aparece en la siguiente imagen.

Propiedades de campos password Es simple un formulario con un campo de usuario y uno de contrasea. este formulario enviara los datos que sern comparados con los existentes en la tabla de usuario o administradores en la base de datos. Tabla que creamos en el capitulo 4 de nuestro curso.

Como crear un login form Una vez creado el formulario vamos a crear el comportamiento de logueo, es aqu cuando el PHP entra en juego pero nos vamos a apoyar en Dreamwaver para hacer este proceso mucho mas sencillo. Vamos a ir al men ventana y seleccionamos Bases de datos, recuerden que a este punto es importante que ya hallan creado el sitio de su proyecto y que actualmente se encuentren trabajando sobre el como explicamos en el capitulo 3. Continuemos, una vez abierto el panel de Bases de datos usaremos el icono + para agregar una nueva base de datos a nuestro proyecto.

Ventana Databases Dreamweaver Desde el cuadro de dialogo que nos aparece crearemos nuestro archivo de configuracin y conexin a la base de datos, para comenzar el nombre de la conexin se la das tu, puede ser el nombre que escojas, recuerda no agregar, caracteres extraos ni espacios. Ya que estamos usando Xampp el servidor sera localhost el usuario sera root y no usara contrasea, esta es una configuracin por defecto en XAMPP y en la mayora de servicios de host local. Luego de colocar estos datos selecciona la base de datos dando clic en el botn Seleccionar, ay te aparecer un listado de las bases de datos que tienes en MySQL, selecciona la de tu proyecto y dale aceptar.

Crear base de datos dreamweaver Bien una vez que hayamos echo lo anterior podremos confirmar que la conexin ha sido creada porque aparece en nuestro panel de Bases de datos y podemos navegar las tablas y los procesos almacenados desde ay.

Ver base de datos en dreamweaver Bien voy a terminar aqu por falta de tiempo y seguir maana con el uso de los juegos de registros y la creacin del sistema de login (usuario y contrasea). Ahora unas aclaraciones importantes:

Recuerden que me pueden escribir para hacerme cualquier pregunta sobre el tutorial y yo con gusto les responder. Tambin pueden usar los comentarios o el Foro para realizar y solucionar sus dudas.

En la parte superior del capitulo del curso hay un contador de redes sociales, que muestra cuantas veces se ha compartido esto en facbook, en twitter y otras redes, cuando el contador llegue a 20 voy a publicar el siguiente capitulo, de manera que si quieren otro capitulo rpido, compartan esto en us facebook y en su twitter para llegar rapido a los 20 shares.

hasta la prxima amigos. xDCAPITULO 8

Saludos a todos los seguidores de este curso y del sitio, gracias por compartir el capitulo anterior en redes sociales a travs de los links que aparecen en la parte superior ese es el apoyo que necesitamos para seguir publicando mas material. Primero hago el recuento de los captulos del curso como es habitual. 1. 2. 3. 4. 5. 6. 7. Crear sitio web con PHP y MySQL paso a paso capitulo 1 Crear sitio web con PHP y MySQL paso a paso capitulo 2 Crear sitio web con PHP y MySQL paso a paso capitulo 3 Crear sitio web con PHP y MySQL paso a paso capitulo 4 Crear sitio web con PHP y MySQL paso a paso capitulo 5 Crear sitio web con PHP y MySQL paso a paso capitulo 6 Crear sitio web con PHP y MySQL paso a paso capitulo 6

Y ahora entremos en material. Ya que en el capitulo anterior vimos como realizar la conexin a la base de datos, este capitulo lo dedicaremos a crear el sistema de login de usuario y a restringir el acceso a las paginas del administrador, para que vean lo sencillo que pueden gestionar usuarios en su sitio usando tan solo las herramientas de Dreamweaver. Ahora seleccionamos nuestro formulario y vamos a la ventana de Comportamientos que esta justo al lado de la ventana de Conexiones, seleccionamos agregar comportamiento y dentro de la opcin Autenticar usuarios utilizaremos la opcin Login de Usuario.

Logueo de usuario con dreamweaver

En el cuadro de dialogo que nos aparece debemos definir algunas cosas. Primero el formulario y los campos del formulario que se utilizaran. Luego la base de datos, la tabla y los campos con los que el script buscara si la informacin coincide o no. Luego las paginas de confirmacin y de error, es decir, si el logueo es correcto a que pagina debe ir, y si el logueo no es correcto a que pagina debe ir. Y por ultimo el nivel de restriccin, ya que en algunos casos necesitaras crear usuarios de diferente nivel de acceso, entonces en este caso seleccionamos usuario, password y nivel de acceso y definimos el campo de la DB (base de datos) que nos dar el nivel de acceso de cada usuario. Al dar clic en aceptar Dreamweaver nos creara el cdigo que se ve as:

Loguear usuarios con dreamweaver codigo Este comportamiento lo que hace es comprobar si los datos introducidos en el formulario concuerdan con los de un registro en la base de datos, y si es as crea una sesin de usuario que podremos usar mas adelante para restringir el acceso a las paginas. Bueno ahora crearemos el archivo index.php o portada del administrador de contenidos, y lo primero que debemos hacer es restringir el acceso para que solo los administradores puedan acceder al dicho panel, esto lo haremos con otros comportamiento de Dreamweaver.

Restringir acceso con Dreamweaver Estando en la pagina index.php o cualquier pagina que queramos restringir solo para usuarios administradores o registrados vamos a ir al panel de comportamiento y

seleccionamos Restringir acceso a pagina, y en el cuadro de dialogo que nos aparece seleccionamos los niveles de usuario permitidos en la pagina y la pagina a la que se debe redirigir si el acceso es denegado. Despues de realizar este proceso es hora de hacer pruebas y testear que su sistema de login este funcionando bien, intenten con usuarios de prueba, generando errores, logeos falsos, etc. Pueden agregar nuevos registros a la tabla de usuarios o administradores desde PHPMyAdmin http://localhost/phpmyadmin solo tienen que seleccionar la base de datos, luego la tabla, luego dar clic en la pestaa insertar y listo.

Insertar registros desde PHPMyAdmin Bueno ya tiene su sistema de login, ahora deben comenzar a explorar las otras opciones del panel de comportamientos de servidor para poder realizar procedimientos mas complejos de muestreo de datos. nos vemos en la prxima entrega donde les enseare como crear las paginas para agregar, editar y eliminar informacin de su base de datos segn la tabla o seccin. Recuerden compartir el tutorial para que la prxima entrega sea mas pronta. xDCAPITULO 9

Saludos a todos los que leen este curso, lamento mucho la espera para el nuevo capitulo pero mis obligaciones me han tenido bastante ocupado, ademas de ello me encuentro trabajando en una plataforma de educacin virtual para brindar mas y mejores cursos para todos ustedes de manera gratuita y un poco mas profesional, esperemos que en un par de semanas ya tengas lista dicha plataforma. Primero colocare como ya es costumbre el listado de captulos anteriores para quienes estn leyendo esto por primera vez. 1. 2. 3. 4. 5. 6. Crear sitio web con PHP y MySQL paso a paso capitulo 1 Crear sitio web con PHP y MySQL paso a paso capitulo 2 Crear sitio web con PHP y MySQL paso a paso capitulo 3 Crear sitio web con PHP y MySQL paso a paso capitulo 4 Crear sitio web con PHP y MySQL paso a paso capitulo 5 Crear sitio web con PHP y MySQL paso a paso capitulo 6

7. Crear sitio web con PHP y MySQL paso a paso capitulo 7 8. Crear sitio web con PHP y MySQL paso a paso capitulo 8 Tambin cree una pagina dentro del sitio llamada CURSOS donde estar actualizando el listado de cursos disponibles dentro del sitio aunque actualmente solo tenemos dos curso y solo uno es creado por nosotros pero trabajaremos para traer mas material, y en el foro esta el post de este curso para que sigan las actualizaciones y realicen sus preguntas. Ahora si vamos a entrar en materia, ya que en el capitulo pasado aprendieron a crear sistemas de usuario con PHP y bases de datos (login, restriccin de acceso, usuario y password, nivel de acceso) ahora debemos comenzar a trabajar en nuestro administrador de contenido, el rea que sera solo accesible para el administrador del sitio y desde donde agregaremos todo el contenido como las noticias, las paginas, las imgenes, etc. Durante este capitulo del curso me centrare solamente en la funcionalidad dejando el aspecto visual y la navegabilidad de lado, el objetivo es que comprendan como funcionan los comportamientos de agregar, editar y eliminar registros para que puedan usarlos a su antojo en cualquier parte del sitio administrador. OK, vamos a comenzar por crear la pagina que va a administrar las noticias de mi sitio, de manera que voy a crear la pagina llamada noticias.php recuerden que este archivo debe estar dentro de la carpeta administradora (admin/) y tambin es importante que lo primero que hagan cuando creen la pagina es asignarle el comportamiento de restringir acceso a la pagina para que solo el o los usuarios con nivel de administrador puedan acceder a esta pagina.

Paginas Administrar noticias 1 Como pueden ver en la imagen de la izquierda he dividido la pagina en tres secciones que son las que necesitaremos en casi todas las paginas del administrador. Estas tres secciones son:

Listado: donde listaremos todos los registros de una tabla determinada en este caso tendremos un listado con todas las noticias que se han agregado, en la parte derecha agregue un par de enlaces que son el de eliminar y el de editar la noticia.

Agregar: Sera un simple formulario que agregara la informacin como registro a la base de datos aqu usaremos algunas herramientas que explicare a lo largo de la creacion del formulario. Editar: Este sera un formulario muy similar al de agregar excepto que tendr cargada la informacin de un registro para editarla y tendr un campo adicional de identificacin para poder actualizar o realizar un update de un registro especifico dentro de la tabla en nuestra base de datos.

LISTAR NOTICIASMucho cuidado a esto porque en esta parte usaremos los juegos de registros o recordset que son una de las herramientas principales a la hora de realizar sitios dinmicos con PHP y MySQL. Un juego de registros es simplemente una bsqueda entre todas las filas (registros) de una o mas tablas con algunos parmetros definidos. Por ejemplo si mi tabla noticias dentro de mi base de datos luce algo as:

Tabla noticias mysql Podremos realizar una consulta como la siguiente: Seleccione todos los campos de la tabla noticias donde la categora es igual a 1 y el autor es igual a Kalvin Manson, ademas de ello ordeneme los resultados por fecha de la mas antigua a la mas reciente. Lo anterior seria la lgica de lo que es una consulta o juego de registros, la misma idea anterior en MySQL se traduciria de la siguiente forma: SELECT * FROM noticias WHERE idcategoria = 1 AND autor = Kalvin Manson ORDER BY fecha ASC Ven que no es tan difcil jejeje, pero tranquilos si les parece complicado usar la linea de comando MySQL no se preocupen porque este curso lo estamos basando en Dreamweaver por lo cual usaremos la herramientas de este programa para crear este tipo de comportamientos y secuencias. Para crear el listado de noticias deberemos crear un juego de registros desde el panel de comportamientos como se muestra en la siguiente imagen.

Crear juego de registros DW En el cuadro de dialogo que nos aparece vamos a seleccionar nuestra conexin con la base de datos, nuestra tabla (en este caso noticias), seleccionamos todos los campos, en la opcin de filtro dejamos Ninguno y en orden seleccionamos por fecha descendiente. Luego de hacer esto debe aparecernos nuestro juego de registros en nuestro panel de vinculaciones como muestra la siguiente imagen.

Juegos de registros creado Desde este panel podremos arrastrar los campos hasta nuestro documento para insertarlos en nuestra pagina sin embargo aun no se va a ver un listado ya que lo que obtenemos de esta manera es almacenar todos los resultados de nuestra consulta MySQL en un array llamado $row_noticias, y debemos usar una funcin While para convertirlo en listado, pero de nuevo no se asusten este proceso es mas sencillo de lo que parece. Primero vamos a colocar el titulo de la noticia en la celda de nuestra tabla que esta junto a la opcin de editar eliminar. Tambin podemos colocar la fecha o algn otro dato que consideremos importante en el listado. Una vez que tenemos los datos en nuestro documento vamos a seleccionar la fila como aparece en la siguiente imagen y nos dirigimos de nuevo al panel de comportamientos donde usaremos la opcin Repetir regin.

Seleccionar fila de tabla Es importante que en la barra de estado te aparezca de ultimas la etiqueta esto indica que tienes seleccionada la fila entera. como deca, luego de seleccionar la fila nos dirigimos al panel de comportamientos y seleccionamos repetir regin en donde nos aparecer un cuadro de dialogo igual a este:

Repetir region En el primer campo seleccionamos nuestro juego de registro que en este caso es noticias y luego determinamos cuantos registros queremos mostrar. Sencillo verdad? ahora podemos ver nuestro archivo en nuestro localhost y nos debe mostrar el listado de registros que tenemos en nuestra tabla de noticias ordenados por fecha descendente y mostrando un mximo de 10 resultados.

Ejemplo listar juegos de registro Si al ver la pagina en localhost no les aparece nada es muy probable que aun no tengan registros en la tabla de noticias de manera que si quieren hacer pruebas hasta ay deben insertar los registros por medio de phpmyadmin, sin embargo vamos a pasar al formulario de agregar registros para que vean como se hace. Agregar noticias Lo primero que debemos hacer es un formulario con los campos necesarios, recomiendo que nombren los campos en el formulario de la misma manera que nombraron los campos en la base de datos, les ahorrara dolores de cabeza mas adelante.