Aprender a construir con php: un curso intensivo

Tabla de contenido

§1. Introducción

§ 2-Hello World!

§ 3.-Forms

§ 4.-Bases de datos

§ 5.-Obtención de contenido de la base de

§6-inicios de sesión y autenticación

§ 7 -?? Conclusión y lectura adicional

1. Introducción

¿Cuál era tu materia favorita en la escuela?

Si eres como yo, apuesto a que amabas las artes. La humanidad. Ya sabes, los sujetos ridiculizados por algunos como vacua y nebuloso en la naturaleza, pero sin tener en cuenta que los amaba estudiar porque querido ser creativo.

Apuesto a que nunca pensó en sus clases de TI de la misma manera que pensó de Idioma Inglés o arte- como un esfuerzo puramente creativo.

Eso es una lástima. Aprender a programar es un poco como hacer una clase de lenguaje creativo. Usted tiene una idea, y se puede ejecutar de que usted quiera. Es pura creatividad, pero en lugar de desnudar su alma en el papel que están al mando de una computadora para hacer su hacer una oferta. Si lo puedes soñar, y si se puede describir de una manera entiende su ordenador, a continuación, puede hacerlo.

La forma en que hablamos de ordenadores es a través de abstracciones llamados lenguajes de programación. Hay un montón de ellos por ahí, cada uno con sus propias ventajas, desventajas e idiosincrasias verdaderamente extrañas. Son imperfecta por naturaleza, pero la gente los usa para crear cosas increíbles y maravillosas.

Uno de estos idiomas se llama PHP.

Es posible que haya oído hablar de él antes. Este es el lenguaje que Facebook, WordPress y Wikipedia utilizan para servir a mil millones de solicitudes, todos los días. Es el lenguaje de facto utilizado para enseñar a la gente a programar para la web. Es muy simple, pero poderosa manera brillante.

Y en esta guía, voy a enseñar cómo se puede usar para construir sus propios sitios web.

¿Tiene una idea de arranque asesino que no sé muy bien cómo ejecutar? ¿Quieres aprender el idioma utilizado para extender WordPress? ¿Está sólo curiosidad acerca de la programación web? ¿Usted sólo quiere aprender las habilidades necesarias para mantener su relevancia en la economía del conocimiento moderno y orientado tecnología-?

Sea cual sea su motivación, este libro tiene el objetivo de enseñar a los conceptos básicos del lenguaje de programación PHP. Pero primero, vamos a tener un poco de una lección de historia.

1.1 La historia de PHP

En la infancia de Internet, las cosas eran un poco ... Bueno? Plano.

Los sitios no fueron particularmente interactiva, y los que visitaron estos sitios se enfrentan a una experiencia relativamente unidireccional. Añadiendo incluso los aspectos más simples de la participación de los usuarios era increíblemente difícil, que queda en el dominio de los científicos de la computación y los programadores expertos.

Y luego Rasmus Lerdorf dio la vuelta. Este codificador-canadiense Groenlandia creó el lenguaje de programación PHP, lo que permitió a la gente a añadir fácilmente las facetas más simples de interacción para sus páginas web. Era nuevo, era valiente, y se despegó casi de inmediato.

Rasmus Lerdorf no habría podido predecir el impacto que su idea tendría sobre el mundo.

Una comunidad comenzó a formar, con los programadores y empresas proveedoras de buena gana tiempo y dinero para alimentar el desarrollo del lenguaje. Poco a poco, comenzó a PHP que representa un serio desafío para Sun (ahora Oracle) y Microsoft, que estaban esperando para ganar tracción en el mercado de desarrollo web con sus plataformas Java y ASP. La subida del lenguaje de programación PHP sólo puede ser descrito como sorprendentemente rápida.

Eso fue hace 20 años. Una edad, en el mundo de la informática. Desde entonces, el lenguaje de programación PHP se ha convertido en la forma preferida para millones de programadores, que utilizan PHP en sus puestos de trabajo, para involucrarse en el código abierto y para llevar sus ideas a la vida. Es un elemento básico del mundo digital.

Usted puede ser uno de esos millones. Este libro te mostrará cómo.

1.2 ¿Qué vamos para cubrir?

Este es un libro bastante corto, pero vamos a cubrir una gran cantidad. Pocos páginas, vamos a crear un simple clon de Twitter.

Mientras que no va a tener el conjunto de características y pulido del sitio de micro-blogging popular, pero vamos a ser capaces de enviar mensajes de 140 caracteres con una cuenta vamos a iniciar sesión en misma.

1.3 Toda información sobre la lámpara

Por ahora, debemos saber que PHP es un lenguaje increíble para la creación de páginas web interactivas. Pero no hemos hablado de cómo nos volvemos ese código en un producto de la vida real. Por lo tanto, vamos a hacer eso.

En su mayor parte, el código PHP se ejecuta dentro de una web servidor. Un servidor web es responsable de enviar páginas web a cualquier persona que se desplaza a un nombre de dominio o dirección IP específica.

La opción más común de servidor web es la ridículamente populares servidor web Apache. Este código abierto, multiplataforma poderes de proyectos de software a la mayoría de la Internet, con el 45% de todos los sitios web que sirven páginas del servidor web Apache. Sin embargo, es útil tener en cuenta que hay otros servidores web disponibles, incluyendo LightTTPD e IIS de Microsoft.

Esto forma la segunda letra en el acrónimo LAMP, que está parado para Linux, Apache, MySQL y PHP. Sabemos lo que es PHP. Acabo de explicar a usted lo que es Apache. Es posible que haya oído hablar de Linux en algún momento. Pero, ¿qué es la ‘M` en la lámpara? MySQL.

Hablemos de MySQL. Me gustaría poner dinero en su sitio web que tenga para almacenar información que su aplicación web ha reunido. Lo que es más, apuesto a que te gustaría almacenar esa información en algún lugar que está estructurado, seguro y organizado. Sí, vas a tener que usar una base de datos, y para la mayoría de los propósitos de MySQL es una opción bastante sólido. Vamos a hablar de esto más adelante.

Por último, vamos a tocar brevemente en Linux. La mayoría de los sitios web PHP se sirven de sistemas que ejecutan, de código abierto popular sistema operativo Linux. Sin embargo, usted no tiene que utilizar Linux como entorno de desarrollo si no se desea. Todo en este libro puede ser utilizado en OS X, Windows y Android

Un sistema operativo, Apache, MySQL y una instalación del lenguaje de programación PHP son las cuatro partes constituyentes de las configuraciones de PHP más comunes. Pero ¿cómo conseguir nuestras manos sobre ellos?

1.4 Configuración del entorno de desarrollo

A diferencia de algunos lenguajes de programación, la creación de un entorno de desarrollo de PHP es fácil. De hecho, hay una serie de paquetes que hacen todo el trabajo duro para usted, y le ahorra el tiempo de instalación de cada componente (PHP, MySQL y Apache) de forma individual.

ventanas

La forma más fácil de configurar un entorno de desarrollo de PHP en Windows es con XAMPP Apache Friends. Este paquete incluye MySQL, una copia del lenguaje de programación PHP y Apache web servidor, así como un panel de control administrativo, y los plugins para SSL (el protocolo utilizado para cifrar el tráfico en una red), así como el envío de correo electrónico.

XAMPP es gratuita, y se puede encontrar en el sitio de Apache amigos. Es importante destacar que hay dos versiones de XAMPP disponibles. Uno tiene un número de versión 1.8.2 y ejecuta una versión ligeramente más antigua del lenguaje de programación PHP, y el otro tiene un número de versión 1.8.3 y ejecuta una versión actual de PHP. Mientras que recomendaría encarecidamente que descargue la versión más reciente, el contenido de esta guía deben trabajar con ambos.

Linux

Linux es un poco complicado. Hay una serie de sistemas operativos que existe bajo el paraguas de la ‘Linux`, a pesar de que cada manejan la instalación de paquetes de software de diferentes maneras.

Si estás usando Ubuntu y cualquier distribución que usa los repositorios de Ubuntu, puede ejecutar:

sudo apt-get install lámpara-servidor ^

Esto instalará un servidor LAMP, con todos los componentes necesarios para el seguimiento de este artículo. Este proceso se explica con mayor profundidad en este artículo, donde os muestro cómo instalar un servidor LAMP como parte de la instalación de la plataforma de blogs WordPress.Se inscribieron para Alojamiento Web SSH-solamente? No se preocupe - Instalar fácilmente cualquier software WebSe inscribieron para Alojamiento Web SSH-solamente? No se preocupe - Instalar fácilmente cualquier software WebNo sabe nada acerca operativo Linux a través de su poderosa línea de comandos? No se preocupe más.Lee mas

Estas instrucciones no funcionarán en las distribuciones que utilizan yum o RPM para su gestión de paquetes, con las instrucciones para configurar un servidor LAMP difieren significativamente. Yo le recomendaría a echar un vistazo a la documentación que viene con su sistema operativo.

Sin embargo, hay otra opción. Recuerde XAMPP? Bueno, da la casualidad de que viene con soporte para Linux, y se puede descargar aquí. Sin embargo, en lo posible, no te recomiendo que instale el servidor LAMP través de su gestor de paquetes.

Hay algunas razones para esto. En primer lugar, sería un poco mejor integrado con el sistema operativo y se puede actualizar fácilmente. Por otra parte, la instalación de PHP a través de la línea de comandos es una buena práctica si alguna vez desplegar su aplicación a un servidor VPS.¿Por qué debería utilizar un SPV En lugar de alojamiento compartido para WordPress¿Por qué debería utilizar un SPV En lugar de alojamiento compartido para WordPressLee mas

OS X

Yo uso OS X como mi principal plataforma de desarrollo. Me gusta la flexibilidad que me proporciona, y la creación de un entorno de desarrollo de PHP en OS X es increíblemente fácil.

Estoy bastante parcial a MAMP. Esto viene en dos productos, uno de los cuales libre y el otro cuesta $ 59 USD (o € 39). Sin embargo, la versión gratuita es más que suficiente para los propósitos de este libro guía.

Conseguir MAMP es una cuestión de agarrar un archivo ZIP de la página web, hacer doble clic en un archivo de paquete y pulsando ‘continuar` con la frecuencia necesaria.

Al igual que antes, es completamente posible para usted para crear un entorno de desarrollo PHP usando XAMPP, que también está portado a OS X. Es totalmente de usted.

Androide

¿Androide? Es decir, Android es ideal para el envío de tweets y matar el tiempo en Angry Birds. Pero el desarrollo de software? Nah. ¿derecho?

Incorrecto. Si usted ha comprado un teléfono celular Android en el último año o así, las probabilidades son bastante buenas que se está ejecutando una CPU que es tan poderoso como cualquier VPS que obtendrá por menos de $ 10. Y eso significa que es lo suficientemente bueno para ejecutar PHP, Apache y MySQL.

Hay una gran cantidad de servidores de LAMP Android en el mercado, pero me gusta mucho Palapa servidor. Corre muy bien en una tableta Nexus 7 de envejecimiento, y aun las he arreglado para meter con calzador Android en él sin ningún tipo de dificultades reales. No es el entorno de desarrollo ideal, pero es posible.

1.5 Elegir el Editor de texto a la derecha

Probablemente usted está familiarizado con lo que los procesadores de texto son. Más probable es que usted ha utilizado Microsoft Word, Open Office o Google Docs para escribir cartas, tareas escolares o documentos de la empresa.

Pero usted puede no saber que no es posible utilizar un procesador de palabra normal para desarrollar software y sitios web. ¿Porqué es eso? Principalmente porque cuando se escribe un documento, de salir todo tipo de formato sobrantes y el formato en el archivo. El producto final es no sólo las palabras que escribe, sino también la alineación de cada palabra y su estilo.

Como resultado, cuando se escribe código, utilizamos editores de texto. ¿Qué son? En pocas palabras, éstas le permiten escribir archivos que se guardan en texto puro. Sin formato. Sólo caracteres.

Al escribir código, que tienden a utilizar Sublime Text 2. Viene con una prueba gratuita por tiempo indefinido (aunque, ocasionalmente darle la lata a actualizar), y un montón de características, lo que hace que la escritura de software con una alegría.

En particular, se viene integrado con resaltado de sintaxis para PHP, javascript y HTML, lo que hace que sea muy fácil de leer el código que produce. Puede descargar Sublime Text 2 aquí, y está disponible para Linux, Windows y OS X. Si no está convencido, puede leer más acerca Sublime Text 2.Pruebe Sublime Text 2 para sus necesidades multi-plataforma para edición de códigoPruebe Sublime Text 2 para sus necesidades multi-plataforma para edición de códigoSublime Text 2 es un editor de código multiplataforma que hace poco oí hablar, y tengo que decir que estoy realmente impresionado a pesar de la etiqueta beta. Puede descargar la aplicación completa sin tener que pagar un centavo ...Lee mas

Si estás en Android, encontrará que sus opciones son bastante limitadas. Soy aficionado en VimTouch, que está disponible de forma gratuita en la tienda de Google Play. Vim tiene una curva de aprendizaje muy empinada, pero merece la pena intentarlo. Leer más acerca de por qué es vale la pena dar editor de texto Vim una oportunidad.

1.6 Requisitos previos

Vamos a saltar directamente al aprendizaje de PHP. Mientras que planeo que introducir suavemente a este lenguaje de programación increíble, hay algunas cosas que estoy esperando a entender de antemano.

En concreto, voy a esperar que usted entiende cómo un sitio web está estructurado con HTML. Si no sabe cuál es su

etiquetas de su etiquetas, eso no es un problema. MakeUseOf tiene una libro XHTML que le llevará hasta la velocidad. Leer a través de eso y una vez que se siente seguro, sigue leyendo.

Un aventurero? ¿Por qué no aprender acerca de la última versión de HTML con nuestra HTML5 e-libro? Aunque no es esencial, que podría ayudarle más adelante.

2. Hello World!

Tiempo para una gira relámpago de PHP. Y qué mejor lugar para empezar que el tradicional ‘Hello World!` programa.

Pero primero, vamos a tener que saber dónde almacenar nuestros archivos PHP. Nosotros los almacenamos en un lugar llamado el ‘Documento Raíz`, que suena complicado, pero en realidad no lo es. Todo lo que esto significa es todo lo que se almacena en esta carpeta estará disponible para cualquier persona que visite la dirección IP del ordenador con su navegador web.

La ubicación de la raíz del documento varía en cómo su entorno PHP está configurado. Si está utilizando MAMP en OS X, puede encontrarlo en / Aplicaciones / MAMP / htdocs. Si ha instalado el servidor LAMP en Linux usando el gestor de paquetes de su distribución, su directorio raíz de documentos será muy probablemente / var / En XAMPP, el directorio raíz se encuentra en C: / xampp / htdocs /.

Una vez que ha navegado a la carpeta raíz de documentos, crear un archivo llamado ‘index.php` y añadir las siguientes líneas.

lt;html lang="en"gt;lt;cabezagt;lt;meta charset="UTF-8"gt;lt;títulogt;microblogging sitiotítulogt;cabezagt;lt;cuerpogt;cuerpogt;htmlgt;


Nada está pasando aquí, pero sí tenemos el esqueleto de una página web. Esta página se puede encontrar en ‘localhost`. A veces se siguió con un número de puerto, que por lo general es `80`, ‘8888` o‘8080` . Aunque, según el paquete de desarrollo de PHP que utilice, puede variar. Si no está seguro, consulte la documentación.

Ahora, vamos a escribir las primeras líneas de PHP! Entre y , escribir

lt;? php eco("Hola Mundo!)- ?gt;

Por lo tanto, vamos a descomponerlo.

Todo el código PHP tiene que ser entre un ‘lt;? Php` y‘gt;?`. Si no es así, entonces el web servidor no lo ejecutará. Entonces, tenemos ‘eco`. Como estoy seguro de que has adivinado, esta función imprime el contenido al navegador. Por último, tenemos el contenido que desea imprimir. Esto está rodeado paréntesis y comillas. Vale la pena señalar que los paréntesis son (en su mayor parte) opcional, cuando se trata de llamar a una función.

Como ya hemos terminado la declaración ‘eco`, que termine con un punto y coma. Si esto no se encuentra, su código no funcionará.

Si funciona, debería ver ‘Hola mundo` en su navegador.

2.1 ¿El PHP tiene que ser rodeado por HTML?

No.

Si estamos realizando una acción que se debe mostrar inmediatamente en el navegador web, podemos tenerlo anidado dentro del documento HTML. Esto se llama PHP en línea, y eso es lo que usamos para imprimir ‘Hola mundo` en la pantalla.

Sin embargo, para cualquier cosa más compleja, debemos aspirar siempre a ponerlo en su propio documento de PHP. Al igual que en el ejemplo anterior, el archivo debe terminar con una extensión ‘.php` y todo el código debe empezar y terminar con‘lt;? Php` y ‘gt;?`.

2.3 Conceptos básicos de idioma

Antes de continuar, vamos a ver algunos conceptos del lenguaje en PHP. Si bien esto no es una lista exhaustiva, sí incluye los elementos esenciales necesarios para ser productivos como programador PHP. Una vez que hemos pasado por estos, vamos a buscar en el uso algunos de estos conceptos en el contexto de formas.

Variables

Las variables son un concepto que se encuentra en prácticamente todos los lenguajes de programación. Se utilizan para almacenar un valor, que puede ser recuperada, de utilizar y cambió más adelante.

Usted podría estar familiarizado con un lenguaje que requiere que se especifique el valor de una variable. Estos incluyen C #, C, C ++ y Java, y por lo general se ven un poco como esto.

int x = 10-

Usted también puede estar familiarizado con javascript, donde las variables se declaran con la palabra clave ‘var`.

var x = 10-

En PHP, sin embargo, las variables se declaran con un símbolo del dólar.

$ X = 10-

las variables de PHP no pueden comenzar con un número o un carácter especial que no sea un guión bajo. Por otra parte, no pueden ser llamados ‘esto, ya que esta es una palabra clave reservada.

Si declaraciones

Si las declaraciones son útiles. Ellos le permiten ejecutar código de condición estar cumpla una condición específica. Considere el siguiente código.

$ x = 5-Si ($ x == 4) {eco("Hola Mundo")-} elseif ($ x == 3) {eco(“Hola Dave”)-} más {eco(“Hola Brian”)-}

Por lo tanto, la primera condición que se examina es si $ x es igual a cuatro (nótese el doble es igual a símbolos). Dado que no es, el intérprete de PHP se verá en la siguiente sentencia condicional, que es si $ x es igual a 3. Si no lo hace, se moverá en la declaración final, que será función echo `Hola Brian` si ninguno de las condiciones se han cumplido.

Puede comprobar si una variable está vacía (también conocido como ‘nulo`, o un‘valor nulo`) por lo precede con una! en la sentencia ‘if`. Por ejemplo:

Si (!$ x){eco(“X está vacía”)-}

while

Si bien las declaraciones ejecutar código en varias ocasiones, mientras que una condición se está cumpliendo. Considere el siguiente código.

$ x = 10-mientras ($ x gt; 1) {eco($ x)-$ x = $ x - 1-}

Este código se ve en el valor de $ x, y si es mayor que uno, se hacen eco el valor de $ x y retire uno de ella. Esto se hará, hasta que la condición de ‘$ x gt; 1` ya no se cumple. Es decir, que es igual a 1 o menos.

para Loops

Para bucles son, como concepto en la programación, a menudo bastante intimidante para los principiantes. No deben ser, sin embargo. Mientras que son aparentemente bastante complejo, son muy fáciles de entender cuando se descomponen. Vamos a escribir un simple bucle for que cuenta del uno al diez.

para($ i = 0- $ i lt; 10- $ i++){eco($ i)-}

¿Que esta pasando aqui? Bueno, primero creamos una variable con un valor de 0 ($ i = 0-). A continuación, establecemos la condición de ‘si $ i es menor que 10, continuar`($ i lt; 10). A continuación, añadir una a I ($ i ++) y ejecutar el contenido de las llaves, de enlace de vuelta en el código original.

funciones

Las funciones son una herramienta útil cuando se trata de la programación. Ellos le permiten escribir código que es más consistente, y dedicar menos tiempo a escribir las mismas cosas una y otra vez por compartimentar código en un único fragmento que se puede llamar cuando sea necesario.

También son muy fáciles de crear. Esta es la forma en que hacemos una función que hace eco a cabo ‘Hola mundo` cuando se le llama. Esta función se llama ‘sayHello ()`.

función di hola(){eco("Hola Mundo")-}

También puede pasar valores de funciones. Estos son conocidos como parámetros, y se ponen dentro de los dos paréntesis en la primera línea de la declaración. Por ejemplo:

función di hola($ hola){eco($ hola)-}

Y se puede llamar de la siguiente manera:

di hola("Hola Mundo")-

Por último, podemos obtener funciones para devolver valores.

Vídeo: Curso de Albañilería - Parte 1, 2, 3 y 4 - Canal Encuentro

función returnHello(){regreso "Hola Mundo"-}

Y puede ser utilizado de la siguiente manera.

x = returnHello()-eco(returnHello())-

2.4 Moving On

Hemos aprendido los conceptos básicos de control de flujo en el lenguaje PHP, así como la forma en que podemos utilizar variables y funciones para almacenar valores y fragmentos de código para su uso futuro. En el siguiente capítulo, vamos a ampliar nuestra comprensión del lenguaje de programación PHP mirando cómo podemos capturar datos mediante formularios, formando así la primera pieza de nuestro clon de Twitter.

3. Formas

3.1 ¿Cómo obra forma en HTML

Los formularios están en todas partes.

No en serio. Son. Al salir de un comentario en MakeUseOf- cuando comprar algo fuera del Amazonas y tienen que escribir su dirección y tarjeta de crédito Números al redactar y enviar un Tweet, se está llenando un formulario.

Yo sé que suena como un disco rayado, pero si usted no ha leído la guía MakeUseOf HTML5, debería hacerlo. Usted no lo necesita para este capítulo, pero te mostraré algunos trucos interesantes que puedes hacer con las formas de la última versión del lenguaje de marcado HTML.

3.2 Creación de Nuestra Primera Forma

Usted probablemente ha visto Twitter antes.

El núcleo de un Tweet es un cuadro de texto de varias líneas, y un botón que lo envía a los servidores de Twitter. Así que, ¿cómo podemos crear una versión rudimentaria de que en HTML? Bueno, parece algo como esto:

lt;cuerpogt;lt;formar acción="postForm.php" método="enviar"gt;


Por lo tanto, vamos a descomponerlo.

Una forma está encerrado dentro de etiquetas de formulario. Forma toma dos argumentos, siendo el primero un enlace a un archivo PHP que contiene el código que se encarga de nuestro formulario. El segundo es un método, y esto se refiere a la forma de enviar los datos a la web servidor. Estos pueden ser o bien ‘post` o‘conseguir`.

En el interior, tenemos un elemento TextArea. ¿Sabe usted cuál es la diferencia entre un elemento TextArea y la entrada es?

Es una diferencia muy sutil. Ellos hacen más o menos lo mismo, aunque un elemento TextArea le permite introducir múltiples líneas de contenido, mientras que una entrada (cuando no se utiliza para enviar un formulario) sólo puede aceptar una línea de contenido.

Ya que estamos creando un clon de Twitter, vamos a utilizar un elemento TextArea para captar el mensaje. Este elemento tiene algunos argumentos. Los dos primeros son ‘nombre` y‘id`, lo que le hemos dado el valor de ‘microBlog`. El segundo dos son ‘cols` y‘filas, que hemos dado los valores de `30` y `10`, respectivamente. Estos pueden ser ajustados, como mejor le parezca.

Por último, tenemos un elemento de entrada. Esto tiene un tipo de ‘enviar`, y se representa en el navegador como un botón. Una vez seleccionado, se pasará el contenido a ‘postForm.php`.

Debemos tener algo que se parece a esto. No es la cosa más agradable en el mundo, pero nos preocuparemos de eso más tarde.

3.3 Manipulación de esta entrada con PHP

En consonancia con el ritmo suave de este libro, vamos a simplemente mirar cómo podemos capturar la entrada y, a continuación, imprimir a la pantalla. Pronto nos ocuparemos de persistencia y almacenarla en la base de datos más adelante.

Así, recuerda que el archivo postForm.php hemos mencionado anteriormente? Cree que en la raíz del documento.

Ahora, agregue las siguientes líneas.

lt;? php$ microBlog = $ _POST[`MicroBlog`]-eco $ microBlog-?gt;

Entonces, ¿qué es esa cosa $ _POST entonces?

Bueno, eso es lo que llamamos una variable super global. Suena complicado, pero no lo es. En su forma más simple, esto significa que cada vez que tenemos que hacer referencia a un formulario de entrada, tenemos que usar eso. Al final de $ _POST, se escribe el ID de la entrada de un formulario que estamos haciendo referencia. Esto tiene que ser colocada entre corchetes y comillas.

Asignamos el contenido de la ‘microBlog` a una variable, y luego eco a la pantalla. Sencillo, en realidad.

Pero, ¿funciona? Hagamos un intento.

Navegamos a nuestra página web y escribir algo en el formulario. Luego, pulse ‘Enviar`.

Como se puede ver, nuestra entrada vuelve de nuevo a nosotros. He aquí una pregunta sin embargo. ¿Qué pasa si cerramos nuestra pestaña del navegador y volver a abrir localhost / postForm.php?

No hay nada allí. Niet. Nada.

Eso es porque no se almacena en ninguna parte, excepto en la memoria a corto plazo de nuestro navegador web. Una vez que se ha ido, se ha ido.

Sin embargo, hay una manera fácil de asegurarse de que nuestros datos se retiene para siempre. Tenemos que ponerlo en una base de datos. Mientras que en un principio no son el tema más emocionante de la historia, son bastante fáciles de conseguir la caída de.

Y en el siguiente capítulo, voy a mostrar cómo se puede almacenar sus tweets en una base de datos.

4. Bases de datos

Tengo una confesión que hacer. Me gusta mucho las bases de datos.

Desde que se inventaron las computadoras, que hemos necesitado para almacenar contenido. Todo, desde la contraseña que utiliza para iniciar sesión en Facebook, a la configuración de su ordenador, a su cuenta bancaria, se almacena en una base de datos. Las versiones anteriores de las bases de datos eran fundamentalmente primitiva y limitada. Desde entonces, han evolucionado y avanzado, la mejora de la velocidad y la fiabilidad de su funcionamiento. Esto es en gran parte un resultado de 50 o más años de desarrollo.

Una forma de almacenamiento de datos es una base de datos relacional. Este paradigma de los datos de almacenamiento se introdujo en los años 80 y se apoya en una malla de mesas interconectadas, con los datos organizados en filas y columnas.

Hay un gran número de sistemas de gestión de bases de datos que utilizan este paradigma (conocido como RDBMS `), incluyendo Oracle, MSSQL y MariaDB. Pero sólo vamos a mirar uno. MySQL.

MySQL es un sistema moderno de gestión de base de datos. El número de sitios web que dependen de él es vertiginosamente grande. Es la base de datos detrás de WordPress y Facebook, y se basa en el paradigma de base de datos relacional fiable.

Ventajas de la base de datos de MySQL son demasiado numerosos para mencionarlos.

En primer lugar, es de libre tanto en coste como en términos de la concesión de licencias. Se puede encontrar que se ejecuta en todas las plataformas, después de haber sido portado a algunos de los sistemas operativos más oscuros en el mundo.

Por otra parte, es un paquete de software razonablemente ligero, y puede funcionar con bastante comodidad en la mayoría de los sistemas VPS de baja potencia.

También es muy fácil de empezar a trabajar con MySQL, y hay una enorme cantidad de información que hay para las personas que desean conseguir sus pies mojados con él, incluyendo algunas de usuario increíblemente detallada y precisa documentación generada.

Con el fin de interactuar con MySQL, tenemos que utilizar el lenguaje de programación SQL (Structured Query Language). Esto nos permite realizar consultas complejas en contra de una base de datos, mientras Inglés fuertemente pareciéndose por escrito. Como resultado, es muy fácil para los principiantes a empezar con.

Pero antes de llegar a eso, vamos a hablar de los tipos de datos de MySQL.

4.1 Tipos de datos MySQL

MySQL requiere que cada columna de una tabla puede categorizar con un tipo de datos específico. Por ejemplo, la edad de una persona, se clasificaría como un número, mientras que el nombre de alguien consistiría en un número variable de caracteres alfabéticos.

Se especifica los tipos de datos para asegurar la consistencia de los datos almacenados en la tabla.

Si bien esto suena complicado, les aseguro que no lo es. Lo que estamos hablando es de conocer los datos que estamos planeando para retener, y saber cómo clasificarlo.

Hay un gran número de tipos de datos en MySQL. Sólo vamos a hablar de dos, que son más que adecuadas para los propósitos de este libro.

VARCHAR (x)

Cuando se está introduciendo el contenido que puede contener una variación de números, caracteres especiales y letras, que estés recomienda el uso de un campo varchar. Estos pueden ser de longitud variable. Un tamaño de campo con una longitud máxima de treinta caracteres se puede representar con varchar (30).

Entero

Al almacenar los números, se utiliza un valor entero. Estos pueden variar desde -2147483648 a 2147483647, aunque hay más tipos de datos disponibles si usted necesita para representar números grandes. En ese caso, consulte el manual de MySQL.

Otros tipos de datos MySQL

Hay un gran número de tipos de datos disponibles, que se pueden utilizar para representar y conservar todo tipo de datos. Estos incluyen grandes piezas de texto, valores verdadero o falso y archivos binarios. Si tienes curiosidad por aprender más, echar un vistazo a la documentación de MySQL.

4.2 Creación de Nuestra Base de Datos

Bien, ahora es el momento de empezar a trabajar en una base de datos para nuestro clon de Twitter.

En primer lugar, necesitamos conectar a MySQL. Si estás usando Linux y que ha instalado MySQL a través de su gestor de paquetes, se puede conectar a través del terminal con el siguiente comando.

mysql -u root -p

Sobre la cual, se le pedirá su contraseña.

Los usuarios de XAMPP y MAMP pueden utilizar phpMyAdmin, que se suministra y le permite editar su base de datos con una interfaz web bonita.

Por lo tanto, primero tenemos que crear la base de datos de nuestra página web y crear una tabla para guardar nuestros los microblogs.

Ya sea a través de phpMyAdmin o por medio de la consola de MySQL, ejecutar las siguientes líneas.

CREAR BASE DE DATOS MicroBlog-

USO MicroBlog-

CREATE TABLE mikroblog (auto_increment Identificación del número entero, poste varchar (255), la clave principal (id)) -

A menos que vea un mensaje de error, su mesa se ha creado sin ningún problema.

Por lo tanto, algunas cosas que usted puede haber notado allí. En primer lugar, estamos terminando cada declaración con un punto y coma, al igual que hicimos cuando estábamos escribiendo PHP.

En segundo lugar, las cosas son bastante explica por sí mismo, ¿verdad? SQL se lee como Inglés escrito, y es bastante fácil de entender lo que está pasando.

Dicho esto, hay algunas cosas en la instrucción CREATE TABLE, que es posible que no estén familiarizados con. La primera es ‘AUTO_INCREMENT`. ¿Qué hace esto?

Bueno, ID es un campo que identifica de forma única cada puesto. Cuando creamos, nos dimos un atributo de ‘AUTO_INCREMENT`, y cada vez que se añade una nueva fila a la base de datos, esa fila se le asigna un número único. Este número cuenta hacia arriba por uno, para cada fila que se agrega.

Por último, lo que es ‘clave primaria (id) `? Bueno, queremos ‘id` para ser completamente único. También queremos Identificación de ser un campo que puede identificar una fila. Haciendo ‘id` una clave primaria asegura que estas condiciones se pueden cumplir.

Vídeo: Curso de PHP/MySQL

4.3 El camino equivocado para consultar la base de datos

Así que, ¿cómo podemos insertar un anuncio en nuestra base de datos? Muy buena pregunta.

La forma tradicional de hacer esto en PHP parecía un poco a esto:

$ Conn = mysqli_connect ($ DBServer, dbuser $, $ dbpass, $ DBName) -

Para ello se crea una conexión con el servidor utilizando el nombre de host, las credenciales de base de datos y base de datos de nombre, y asignar que a un objeto. En este caso, lo hemos llamado $ conn (para la conexión).

A continuación, definiremos la consulta de base de datos que queremos hacer.

$ Consulta = mysqli_query ($ conn, “INSERT INTO VALORES microblog (‘$ post `)”) -

Y entonces podríamos cerrar la conexión con la base de datos.

mysqli_close ($ conn) -

Entonces, ¿qué de malo en esto? Bueno, se basa en una clave Asunción- que cualquier entrada enviada a la base de datos se puede confiar.

Eso no es siempre el caso. Si no está muy cuidado, es totalmente posible para colarse en algún código SQL arbitrario, que puede dar lugar a fugas de datos o la desfiguración de los registros almacenados en su base de datos.

LinkedIn aprendió acerca de la manera más difícil. Una entrada de plomo mal desinfectados a la liberación no intencional (y autorizado) de miles de registros de usuario en una debacle que fue referido como LeakedIn. Fue un incidente que les costó muy caro, tanto en relación con el costo financiero de hacer buena, así como la buena voluntad perdida por la pérdida de millones de filas de datos personales.

Así que, ¿cómo podemos utilizar con seguridad una base de datos con PHP?

4.4 Conoce MeekroDB

MeekroDB es una biblioteca que hace que sea fácil de interactuar con una base de datos sin estar abierta a una amenaza externa. Ha sido diseñado desde el principio para ser impermeable a SQL ataques de inyección. Es gratis para uso sin fines de lucro, pero si va a utilizar en un proyecto comercial, tiene que pagar por una licencia.

Descargar una copia de MeekroDB desde la página oficial. Una vez que lo tienes, descomprimirlo y colocarlo en el directorio raíz de documentos.¿Qué es una inyección de SQL? [Explica MakeUseOf]¿Qué es una inyección de SQL? [Explica MakeUseOf]El mundo de la seguridad en Internet está plagada de puertos abiertos, puertas traseras, los agujeros de seguridad, troyanos, gusanos, las vulnerabilidades de firewall y una serie de otros temas que nos mantienen a todos en nuestros dedos de los pies todos los días. Para los usuarios privados, ...Lee mas

Ahora, vamos a volver a su editor de texto. PostForm.php abrir y añadir las siguientes líneas.

requerir una vez `Meekrodb.2.2.class.php`-DB::$ usuario = `usuario`-DB::$ contraseña = `contraseña`-DB::$ dbName = `base de datos`-

Cambio ‘usuario`,‘password` y ‘base de datos` con su nombre de usuario de base de datos real, contraseña y nombre de la base de datos.

Ahora, es el momento de insertar su lugar de destino en su base de datos. Añadir las siguientes líneas de código.

DB :: DebugMode () - $ microBlog = $ _POST [ `microBlog`] - DB :: insertar ( `mikroblog`, array ( `post` = gt; $ microBlog)) -

Por lo tanto, vamos a descomponerlo.

DB :: DebugMode () - lanza mensajes de error si hacemos algo mal. Como resultado de ello, es realmente muy útil para dejar esta en nuestro código, ya que hace que el proceso de desarrollo que poco más fácil.

DB :: insert se llama cuando hay que insertar uno o más elementos en la base de datos. ‘Mikroblog` se refiere a la tabla de base de datos, mientras que‘post` contiene el mensaje que acaba en el sitio web.

Podemos ver si nuestros mensajes han llegado a la base de datos mediante la apertura de phpMyAdmin y echar un vistazo.

Si estás usando MySQL en Linux, y que ha instalado desde el gestor de paquetes, se puede abrir MySQL desde la terminal y ejecute los siguientes comandos.

uso MicroBlog-

Seleccionar * de MicroBlog-

Simple, ¿verdad? Dan que un ir y el próximo, vamos a ver donde se presentan nuestros mensajes en la página principal. Prometo, no es demasiado difícil.

5. Conseguir contenido de la base de

Hemos introducido ya MeekroDB. Esta es la biblioteca de base de datos que nos permite interactuar de forma segura con una base de datos MySQL en el contexto de una aplicación PHP.

Vídeo: Curso PHP intensivo # 1 Variables,Constantes 2014

Si ha completado el capítulo anterior, usted debe tener algunos puestos en la base de datos. Sin embargo, sólo están sentados en una base de datos no se utiliza. ¡Qué pena! Por lo tanto, vamos a ver lo que les permitió en el navegador.

Sabemos que podemos utilizar SQL es el lenguaje usado por MySQL con el fin de consultar la base de datos. Mientras MeekroDB permite insertar contenidos en su base de datos sin necesidad de utilizar SQL, usted tiene que utilizar un poco de SQL con el fin de recuperar los registros.

5.1 Selección y presentación de resultados

Un tal afirmación es la ‘instrucción Select`. Hemos utilizado anteriormente esto para ver si nuestros archivos habían propagado a la base de datos. Vamos a usarlo de nuevo aquí.

Por debajo de la forma etiqueta de cierre, añadir lt;? php y gt?; y en el medio escribir las siguientes líneas de código.

lt;? phprequerir una vez `Meekrodb.2.2.class.php`-DB::$ usuario = `raíz`-DB::$ contraseña = `raíz`-DB::$ dbName = `Mikroblog`-$ resultados = DB::consulta("poste SELECT FROM mikroblog")-para cada ($ resultados como $ fila){eco "
"
. $ fila[`enviar`] . ""-}?gt;

Veamos esto un poco más de cerca. Sabemos lo que las primeras cinco líneas hacen. Nosotros las usamos anteriormente como parte de la inserción de nuestros mensajes en la base de datos.

$ resultados = DB :: query ( “post SELECT mikroblog”) -

Esta línea se seleccionan todos los mensajes de la tabla ‘mikroblog`, y luego las copia en una variable llamada $ resultados.

Y luego se pone interesante. Por lo tanto, los resultados $ pasa a consistir en una serie de artículos. Esto significa que podemos iterar sobre ellos utilizando algo que recuerda mucho a los ‘ `para los bucles que antes nos parecía.

para cada ($ resultados como $ fila){eco "
"
. $ fila[`enviar`] . ""-}

Así pues, aquí vamos sobre cada resultado, y asignarla a una variable. entonces lo imprimimos en entre algunas etiquetas div’`. Esto nos permite encapsular cada puesto, y lo aplicamos a estilos de cada uno de ellos.

No parece mucho ahora, ¿verdad? Vamos a cambiar eso.

5.2 Styling

Crear un nuevo archivo llamado ‘style.css` y añadir la siguiente línea de código HTML en el medio etiquetas de la‘cabeza`.

Ahora, es el momento de hacer cada puesto mirar un poco más distintivo y notable. En ‘style.css`, añada las siguientes líneas.

cuerpo {color de fondo: # 99CCFF -}formar {texto alineado: centrar-margin-left: 300px-margin-right: 300px-}.microBlog {texto alineado: centrar-margin-left: 300px-margin-right: 300px-margin-bottom: 10px-estilo de borde:sólido-ancho del borde:5px-}

No voy a insultar su inteligencia explicando línea a línea lo que hace esto. Es probable que pueda trabajar hacia fuera, con sólo leerlo. Hemos dado a cada poste un poco de relleno, por lo que es relativamente centrada en la pantalla. Nosotros también hemos dado un borde, y se alinea la forma en el centro de la pantalla.

Esto produce algo que se parece un poco a esto.

Fresco, ¿verdad?

Ahora, en nuestro penúltimo capítulo, vamos a reunir a todo lo que hemos aprendido hasta ahora, y ver cómo podemos manejar los inicios de sesión.

6. inicios de sesión y autenticación

Imaginemos que sólo queremos una persona sea capaz de enviar actualizaciones en nuestro sitio web. Es casi como si estamos creando un Twitter muy personal.

6.1 La Tabla de usuarios

En primer lugar, vamos a crear una tabla para manejar nuestra información de acceso. Esto tendrá dos campos. El primero es para el nombre de usuario y la segunda es para la contraseña. Esto se puede representar en SQL de la siguiente manera:

Vídeo: Curso intensivo C# .Net de menos de 3 horas. Aprende a programar aplicaciones Web

CREAR TABLA credenciales (nombre de usuario varchar (255), varchar contraseña (255), PRIMARY KEY (nombre de usuario)) -

Al igual que antes, ejecutar esto en contra de su base de datos, ya sea a través del terminal oa través de phpMyAdmin.

6.2 Sesiones PHP

Ahora, tenemos que manejar nombres de usuarios y registros. Lo hacemos con las sesiones de PHP. La forma en que estos trabajos es razonablemente simple. Usted tiene un número de variables que están presentes a lo largo de una aplicación web, y estos pueden estar en un estado de presencia o no, dependiendo de si el usuario está conectado o no.

Antes de poder manejar las sesiones, lo que tiene que inicializar primero la sesión. Añadir esta línea a la parte superior de index.php.

? Lt; php session_start () - gt?;

Esta línea tiene que aparecer en todos los archivos que accede a la sesión.

Ahora, tenemos que asegurarnos de que la forma de presentación blog es sólo visible para los que se ha identificado. Sustituir la forma que hemos creado antes con las siguientes líneas de código.

lt;? php Si
Artículos Relacionados