Tupale

Crear sitio web con PHP y MySQL paso a paso 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 disculpándome por la demora en la publicación de este nuevo capitulo del mismo. También como es normal les dejo los anteriores capítulos 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 técnico realmente es algo que no necesita muchos conocimientos, sin embargo se requerirá de mucha lógica y sentido común. De la correcta construcción 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

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 ortografía en estos casos ya que un fallo en una letra puede significar el fallo total de nuestro sistema, también te recomiendo que uses solo caracteres alfabéticos (letras a-z) en minúscula y si necesitas separar palabras usa guiones bajos “_”, porfavor no utilices espacios en blanco o acentos, tildes, eñes o cualquier otro carácter extraño.

En mi caso mi base de datos se llama “visualrock”, y ahora procedemos a crear las tablas, pero primer una explicación de términos importantes sobre bases de datos:

  • Base de datos: es un conjunto de tablas, como el sitio donde almacenaras toda la información 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 inserción de información en la base de datos.
  • Datos: Esta es la información 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

Estructurar base de datos mysql

Bueno, ahora si procederemos a crear nuestras tablas basados en lo que hicimos en capítulos pasados de idear el contenido del sitio y su organización.

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 lápiz 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 números enteros. Se usa para almacenar edades,  valores, cantidades, todo lo que dependa solo de números, como un contador de visitas por ejemplo, solo almacenar un  numero.
  • VARCHAR: Este almacena cadenas de texto de máximo 256 caracteres. Ideal para almacenar nombres de usuario, o contraseñas, 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 almacenaría el contenido de las noticias o artículos de tu sitio que podrían 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 identificación, 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 carácter).
  • password: Este campo es igual al anterior.
  • nivel: pensando en que habrá diferentes niveles de acceso al panel de administración coloque este campo, también 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

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

Estructurar base de datos mysql

Listo !!! ya tenemos creada nuestra primera tabla, esta es nuestra primera hoja de excel para administrar información, 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 ningún registro en la base de datos.
  • Estructura: Te mostrara los campos de la tabla con sus propiedades, desde esta pestaña podrás hacer cambios en la estructura, pero entre menos cambios tengas que hacer mejor.
  • SQL: es para ejecutar el lenguaje de programación 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 demás 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

tabla mysql estructura

tabla mysql estructura

Eso es todo por este capitulo, en el próximo capitulo empezaremos con el montaje en fireworks del diseño y como pasarlo a dreamweaver. Por ahora los dejo con algunas recomendaciones finales.

  • Recuerda siempre agregar el campo de ID (identificación) 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 alfabéticos (a-z) en minúscula y sin espacios.
  • Asignar el tipo de campo dependiendo de la información 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.
http://tupale.org/foro/tutoriales/

26 comments for “Crear sitio web con PHP y MySQL paso a paso capitulo 4

  1. 20 octubre, 2010 at 2:12 PM

    Me parece extraordinario tu aporte!!! lo estoy siguiendo paso a paso, los primeros 4 capitulos me los devoré!!! Hoy es 20/10/10 y veo que el 4 capitulo fue cargado el 15/10/10 estoy ansioso esperando el próximo capitulo.
    Mi sugerencia es hacer links mas accesibles para cada capitulo Gracias por el aporte!!! Te felicito!!!!

    • 20 octubre, 2010 at 2:31 PM

      Hey gracias, hago lo que puedo, y tienes razón actualmente no es muy accesible cada capitulo del curso, estoy esperando a terminarlo para crear una pagina con todos los capítulos. xD

  2. 21 octubre, 2010 at 1:34 AM

    Amigo no sabes como me ayudas!! junto con unos compañeros vamos a lanzar una revista de diseño y obviamente necesitabamos nuestro sitioweb…ya había empezado a hacerla con mi conocimiento básico de html, pero gracias a tu curso supe que tenía que hacerla dinamica…ya que va a ser una especie de blog….y claro ya después de que maneje mejor el lenguaje php podré diseñar el un tema propio para mi blog que ya tengo hace un tiempo, pero con un theme que encontre en la red.
    Esperando ancioso los siguientes capitulos, mientras termino de leerme este nº 4.

    Saludos!!!

    • 21 octubre, 2010 at 3:15 AM

      Ok amigo para mi es un honor poder ayudarlos con este curso, esa es mi paga saber que a ustedes les sirve y que les interesa lo que escribo.

      Si tienen alguna pregunta en especial con respecto al curso o con respecto a cualquier cosa pueden hacerla en el FORO y responderé con mucho gusto.
      http://tupale.org/foro/desarrollo/

  3. El profe 2000
    21 octubre, 2010 at 5:18 PM

    Ante todo quiero decirte que es un excelente tutorial y agradecerte por compartir tu conocimientos con el mundo. Y al igual que el resto de tu seguidores espero anciosamente las restantes partes del tutorial. Muchas gracias nuevamente.

  4. Jesus Ortega
    25 octubre, 2010 at 4:20 AM

    Hola humildemente te agradezco esta oportunidad de enseñarme a poder hacer mi propia pagina solo puedo agradecerte deseando que Dios te de lo que tu corazon anhela y que te llene desalud y de amor. No olvides que el te ama.

    Vas a continuar con los demás capitulos??

    Ojala q si..

    Gracias.

    • 25 octubre, 2010 at 2:30 PM

      Claro que si voy a continuar con los demás capítulos del curso, hoy mismo planeo publicar el siguiente, de manera que esten pendientes.

      Gracias por el apoyo

  5. pablo
    13 noviembre, 2010 at 7:14 PM

    hola mira yo vengo siguiendo los capitulos y no he tenido ningun problema hasta ahora pero mira cuando intento entrar a http://localhost/phpmyadmin me aparece el siguiente error: no se pudo cargar la extensi�n mysql,
    por favor revise su configuraci�n de PHP. – Documentaci�n

    que es lo que puedo hacer, me abre equibocado en la instalacion de algo o que puede ser?

  6. pablo
    14 noviembre, 2010 at 5:54 AM

    bueno muchas gracias por tu atencion…cuando instale el xampp me habia salido un pequeño error y m pensaba que no iba a afectar asi que ahora me voy a bajar otro nuevo y voy a repetir los pasos nuevamente 🙂

  7. pablo
    14 noviembre, 2010 at 6:02 AM

    siii que alegriaa lo baje de nuevo y lo instale y salio todo como esperaba :)…si alguien tiene el mismo problema yo lo baje de este link http://hotfile.com/dl/22102791/307f174/xampp_win32_1_7_3.rar.html y funciono a la perfeccion

  8. cazadorite
    19 noviembre, 2010 at 11:12 AM

    buen aporte gracias.

  9. Nata
    15 enero, 2011 at 6:28 PM

    Muy bueno el cuso, era lo que necesitava.
    Tengo un problema con el Dreamweaver y el Fireworks, y es que no me los puedo bajar gratis, y no tengo suficiente dinero para pagarlos.
    ¿hay algun software libre que me siva para continuar con el curso?

  10. Alejo L
    18 enero, 2011 at 4:32 PM

    Muy buenos días te felicito por tu esfuerzo, muy bueno el curso, muy centrados los apuntes.

    Alguien en: http://tokyoanimation.blogspot.com/2010/10/crear-sitio-web-con-php-y-mysql-paso.html , esta tratando de copiar tu esfuerzo y dedicación.

    Muchas gracias por tu aporte,

    Alejo.

    • 18 enero, 2011 at 5:03 PM

      Gracias por tu comentario amigo, pero no hay ningún problema con aquellos que publican este contenido en sus webs, por el contrario les estoy muy agradecido ya que están valorando y referenciando el contenido, lo que demuestra que ha servido al publico, lo único que pido es que no borren la fuente y veo que el sitio que nombraste no borra la fuente.

      Gracias por la notificación y gracias a la gente de Tokio animation por republicar. xD

  11. 4 abril, 2011 at 10:22 PM

    muy interesante amigo gracias quisiera aprender mucho mas

  12. 8 junio, 2011 at 6:51 PM

    Hola amigo!!, recien enganche con el curso, felicitaciones!!! es estupendo y perfecto para autodidactas. Gracias

  13. 2 septiembre, 2011 at 6:22 PM

    Me encanta el tutorial pero estoy trancado por una o dos cosas:

    la primera es: cuando estaba creando la tabla. No me aparece el campo Extra

    la segunda es: tengo que tener todos los modules del xampp iniciados.

    Desde ya mil gracias, espero la siguiente entrega si es que la hay.
    Hace mucho que estaba buscando un tuto como este. Gracias.

  14. ivan R
    11 enero, 2012 at 8:11 PM

    Este curso me a encantado y es muy facil de entender, gracias por compartir tu conocimiento con todos.

    Solo una observación personal falto explicar un poco mas donde crear la base de datos que tipo de cotejamiento recomiendas.

    Saludos!!!

  15. Matias
    13 junio, 2012 at 6:19 AM

    Hola Kalvin, antes que nada te agradezco por el tutorial porque es una gran guía, ahora tengo 2 preguntas sobre este capítulo:

    1- en la tabla noticias… por qué el campo IMAGEN es del tipo varchar? No es una imagen JPG o algo así? o se refiere a la descripción de la imagen de la noticia?

    2- qué vendría a ser la tabla POSTS?

    saludos!

  16. 20 octubre, 2012 at 8:29 AM

    excelente ….

  17. 4 noviembre, 2012 at 4:56 PM

    Hola de antemano muchas gracias por la ayuda, solo que tengo un problema talvez sea por la version :S segun yo uso una de las mas recientes me sale cuando quiero crear mi tabla> You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘PRIMARY) NOT NULL, `usuario` VARCHAR(255) NOT NULL, `password ` VARCHAR(255) NOT’ at line 1

    • 7 noviembre, 2012 at 10:06 AM

      Hola amigo, estos problemas no son por versiones de MySQL sino por problemas en la sintaxis, es algo a lo que nos iremos acostumbrando poco a poco, por ejemplo un campo varchar o texto no puede ser auto incrementar, los campos varchar deben tener un tamaño de campos y cosas así, de ser posible publica tu SQL o la información de la tabla que quieres crear para ver cual es el problema. xD

Deja un comentario

A %d blogueros les gusta esto: