Desarrollar una red social con PHP, Symfony3, jQuery y AJAX

Crea una red social desde cero con el backend con Symfony 3, PHP y MySQL y el frontend con HTML5, Bootstrap y jQuery
4.6 (90 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
681 students enrolled
$30
$120
75% off
Take This Course
  • Lectures 92
  • Length 13.5 hours
  • Skill Level All Levels
  • Languages Spanish
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 10/2016 Spanish

Course Description

Bienvenido al curso Desarrollar una red social con PHP, Symfony3, jQuery, AJAX y Bootstrap, vas a aprender paso a paso como desarrollar una aplicación web completa y funcional paso a paso, a nivel de backend y frontend, con los lenguajes y frameworks más punteros y utilizados actualmente.

La red social que vamos a desarrollar será muy parecida a Twitter y no es más que un caso práctico del tipo de desarrollo a medida que más suele darse en el ambiente laboral actual. 

Si quieres ser desarrollador web, o incluso si ya te dedicas al desarrollo web, es casi obligatorio aprender todas las lenguajes y frameworks con las que vamos a trabajar en el curso y sobre todo como combinarlas para crear aplicaciones completas a medida.
                
Para la creación de la red social utilizaremos muchas tecnologias, entre ellas:

  • PHP, el lenguaje del lado del servidor(backend) mas utilizado.
  • Symfony3, el mejor, más potente, más solicitado y mejor pagado framework para PHP.
  • jQuery, el framework frontend imprescindible y más conocido para JavaScript.
  • AJAX, para hacer peticiones asíncronas al servidor. 
  • Bootstrap, el framework CSS y JS más estandarizado e imprescindible actualmente para la construcción de interfaces de usuario
  • HTML5, CSS3, JavaScript, etc.

           
Al finalizar el curso serás capaz de desarrollar tus propias aplicaciones web a medida de alta complejidad, modificar otras que ya estén programadas y además crear redes sociales y webs con intereactividad completa entre usuarios.
    
Este es el único curso que te va a enseñar a desarrollar una red social a medida desde cero que existe hasta la fecha y está diseñado para que aprendas a desarrollar una red social como Twitter y además para que adquieras habilidades para el mundo real mediante casos prácticos completos, paso a paso y de forma fácil para que no te quedes con dudas.

Durante las 14 horas del curso verás como desarrollar una plataforma web tipo Twitter paso a paso.

En esta red social(webapp) las siguientes funcionalidades:

  • Registrarnos e identificarnos en la plataforma.
  • Modificar nuestros datos.
  • Subir una imagen de perfil.
  • Buscar gente mediante un buscador.
  • Seguir y dejar de seguir a cualquier usuario (follow y unfollow).
  • Hacer publicaciones con documentos e imagenes.
  • Ver las publicaciones de la gente que seguimos en el timeline.
  • Marcar publicaciones como favoritas e indicar que te gustan.
  • Ver mi perfil de usuario y el del resto de personas.
  • Recibir y enviar mensajes privados (MD).
  • Ver las notificaciones de nuestro perfil.
  • ¡Y mucho más!

        
Abordaremos el desarrollo de esta aplicación partiendo desde cero, empezando por el diseño y creación de la base de datos, creación de bundles, modelos, controladores, rutas(routing), plantillas, vistas y formularios, interacción con la base de datos con Doctrine, CRUDs, sistema de seguimiento, maquetación de la interface de la web, control de acceso, etc, etc, etc.
        
Trataremos todos los temas paso a paso y poco a poco hasta construir la aplicación web social completa, pese a esto, para aprovechar al 100% el curso te recomendaría tener conocimientos en HTML y CSS y además tener unas nociones básicas en Symfony3.
        
A parte de esto, en los cursos de Víctor Robles conseguirás soporte, apoyo y ayuda muy rápida para que puedas conseguir todos tus objetivos.

Si quieres aprender desarrollo web full-stack moderno sin dolor y crear una red social, enfocándonos al mundo real, practicando poco a poco con los mejores lenguajes y frameworks actuales, subir de nivel en el desarrollo web con PHP y JavaScript y aumentar tus oportunidades laborales ¡Este es tu curso!

Échale un vistazo al programa del curso para ver todos temas que aprenderás.

¡Únete al curso y sube de nivel!

What are the requirements?

  • Es recomendable saber HTML, CSS y PHP
  • Es recomendable tener algunos básicos conocimientos de Symfony3

What am I going to get from this course?

  • Aumentar las posibilidades laborales
  • Mejorar las habilidades de programación y planteamiento de webapps
  • Desarrollar una red social
  • Crear aplicaciones web a medida
  • Desarrollar aplicaciones web complejas con Symfony 3
  • Hacer desarrollos full-stack completos

Who is the target audience?

  • Desarrolladores web
  • Estudiantes de ingenieria y ciclos formativos
  • Estudiantes de informática
  • Programadores que quieren adquirir nuevos conocimientos y habilidades

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Introducción
14:18

Introducción al curso de como desarrollar una red social con PHP, Symfony 3, jQuery, AJAX y Bootstrap.

08:56

Veremos todo lo que vamos a desarrollar en nuestra red social, todas las funcionalidades, paso por paso.

00:11

Aprenderemos a preparar el entorno de desarrollo para crear aplicaciones en nuestro equipo local

Section 2: La base de datos
19:35

Diseñaremos la base de datos desde cero y haremos un esquema de tablas y relaciones para entender la base de datos de nuestro proyecto.

00:55

Guardaremos una imagen del esquema de tablas y relaciones.

19:57

En esta clase vamos a crear la base de datos en SQL y la importaremos a nuestro SGBD.

Section 3: Instalación de Symfony 3
09:19

Como instalar Symfony3 el mejor framework PHP desde cero para el desarrollo de la red social.

01:23

Crearemos un proyecto dentro nuestro IDE en mi caso NetBeans para programar la aplicación web.

03:31

Usaremos composer para instalar KNP Paginator Bundle en Symfony 3 (KnpPaginatorBundle Symfony3)

Section 4: Bundles, entidades y modelos
04:05

Crearemos el bundle BackendBundle donde guardaremos nuestra configuración de entidades, modelos y repositorios de Symfony3.

09:35

Crearemos la entidades necesarias dentro de un bundle para utilizarlas con Doctrine y Symfony 3 en el desarrollo de la red social desde cero.

06:26

En esta clase se harán pruebas con los modelos, repositorios y entidades que hemos creado dentro de un bundle de nuestro proyecto de la red social con Symfony 3.

Section 5: Empezando a desarrollar una red social
00:06

Descargar los ficheros y archivos que usaremos en el curso, plugins de jQuery y temas de Bootstrap.

13:00

Haremos la configuración básica de rutas y crearemos los controladores necesarios para nuestra webapp con Symfony.

05:15

Crearemos las vistas y plantillas básicas para los controladores y acciones de Symfony2

06:32

Crearemos la plantilla maestra con Twig dentro de Symfony 3 y definiremos los diferentes bloques. De este layout heredarán todas las vistas de nuestra aplicación web tipo red social (parecida a twitter)

06:21

En esta clase veremos como importar jQuery y Bootstrap dentro de un proyecto web con HTML5, CSS, PHP, MySQL, Symfony 3, etc.

10:39

Maquetaremos la cabecera y el menú de nuestra red social con CSS, Bootstrap y Symfony3.

Section 6: Autenticación y registro
02:39

Configuración de los encoders de Symfony para cifrar contraseñas con Bcrypt.

15:34

Veremos como crear el formulario de registro de usuarios con Symfony3 para que los usuarios puedan ingresar en la plataforma.

04:03

En este tutorial veremos como maquetar  y darle estilos al formulario de registro con Bootstrap y  CSS.

19:54

En esta clase finalmente aprenderemos a guardar a los usuarios que se están registrando en la base de datos y haremos funcionar el formulario de registro para que cuando introduzca sus datos en el se registre en la plataforma y posteriormente pueda identificarse en la red social con Symfony 3.

06:24

Aprenderemos a usar las sesiones flash para generar mensajes instantáneos que se muestren una sola vez en la página utilizando las librerías que nos ofrece Symfony 2.8 y 3.

16:25

Haremos una funcionalidad interesante para validar el nick o username que el usuario selecciona mientras se registra en la aplicación. Con jQuery y Ajax comprobaremos si es bueno o no y nos lo indicará por pantalla.

15:54

Aprenderemos a crear el login con Symfony3 (autenticación) para que los usuarios se puedan identificar en la plataforma.

14:35

Crearemos un menú de usuario con Bootstrap (dropdown) y crearemos la opción de cerrar sesión para los usuarios que estén registrados en la plataforma.

Section 7: Página de "Mis datos"
05:08

En esta clase veremos como crear una acción y una ruta para la página de mis datos, que le permitirá al usuario modificar su información y subir una imagen de perfil o avatar.

11:07

Crearemos el formulario de mis datos con Symfony3 y lo mostraremos en una vista Twig, además lo maquetaremos con CSS y Bootstrap desde cero.

13:38

Aprenderemos a hacer un update del usuario que está identificado en sesión y también veremos como subir ficheros con Symfony 3 para establecer una foto de perfil o imagen de avatar para el usuario que esté registrado en nuestra red social.

08:09

Veremos como mostrar la foto o imagen del usuario en la cabecera, le daremos estilos CSS3 y haremos que sea un circulo perfecto al lado del menú de usuario.

06:20

Aprenderemos a validar el formulario de registro y de mis datos con YML y Symfony 3 desde cero y paso a paso.

Section 8: Sección de "Gente"
06:04

Crearemos una página o sección donde tendremos un listado de usuarios, crearemos las rutas y acciones necesarias en nuestro proyecto de PHP y Symfony.

08:00

Aprenderemos a como configurar KNP Paginator Bundle (KnpPaginatorBundle) dentro de Symfony3 para hacer páginaciones desde cero.

11:08

En esta clase veremos como listar todas las personas que hay en nuestra red social. Modificaremos una vista Twig de Symfony3.

08:26

Imprimiremos más información de los datos de los usuarios y maquetaremos con Bootstrap y CSS el listado paginado.

04:44

Haremos mejoras en nuestras entidades y modelos y para optimizar la validación de usuarios y la subida de ficheros en Symfony 3.

13:32

Veremos como hacer un buscador de personas para nuestra plataforma. Veremos desde la creación de acciones y rutas hasta las vistas.

13:12

Aprenderemos a crear una paginación de tipo scroll infinito con jQuery IAS.

Section 9: Sistema de seguimiento (follows)
04:09

Empezaremos a desarrollar el sistema de seguimiento en nuestro proyecto de la red social con Symfony y PHP.

18:08

Haremos la funcionalidad de seguir para poder guardar los registros de seguimiento en la base de datos.

07:22

Seguimos desarrollando el sistema de seguimiento parecido al de Twitter y crearemos la funcionalidad de dejar de seguir a un usuario con PHP, Symfony3, jQuery y Bootstrap.

16:43

Haremos un toggle de botones para permitir lanzar peticiones ajax y mostrar u ocultar los botones, además veremos como crear extensiones de Twig dentro de Symfony3 etc.

Section 10: Timeline y publicaciones
01:10

Introducción a la sección principal donde se listaran las publicaciones de los usuarios a los que estamos siguiendo, podremos crear publicaciones, subir ficheros, todo con PHP, MySQL, Symfony 3, Twig, Doctrine, JavaScript, jQuery, AJAX, Bootstrap, plugins, etc.

18:25

Maquetación de estilos de la home de la aplicación web paso a paso con CSS y Bootstrap.

10:01

Crearemos y mostraremos el formulario para las publicaciones de la plataforma, crearemos la clase Type en Symfony y mostraremos el formulario con Twig.

17:17

En esta clase veremos como guardar las publicaciones en la base de datos. Recogeremos la respuesta del formulario y usaremos doctrine 2 para guardar los datos en la bbdd.

03:48

Añadiremos unas cuantas publicaciones a la red social para hacer pruebas posteriormente.

17:20

En esta clase mostraremos y paginaremos las publicaciones en el timeline. Veremos como hacer la consulta SQL correcta para que nos saque solo las publicaciones de los usuarios que estamos siguiendo y haremos la paginación con KnpPaginatorBundle de Symfony 3.

11:50

Daremos estilos al listado de publicaciones que hay en el timeline y además mostraremos más información sobre cada una de ellas.

02:44

Haremos mejoras en el timeline para optimizar la home de la red social.

09:15

En esta clase crearemos una extensión de Twig que nos permitirá pasarle una fecha y que nos diga hace cuanto fue creada una publicación.

05:24

Haremos una paginación inifinita con AJAX en la home del usuario logueado con IAS y jQuery.

11:18

Crearemos un botón para mostrar y ocultar una imagen adjuntada en una publicación con jQuery.

17:04

Añadiremos la posibilidad de borrar publicaciones, al igual que hace Twitter con los tweets que creas, podremos eliminar cualquiera de nuestras publicaciones. Crearemos una acción en el controlador de Symfony 3, una ruta y usaremos jQuery y AJAX para que todo funcione.

Section 11: Sistema de me gustas (likes)
06:27

Maquetaremos el botón de me gusta y añadiremos un tooltip atractivo con Bootstrap.

08:03

Veremos como guardar un registro like en la base de datos, utilizaremos todas las herramientas que nos brinda Symfony2 como Doctrine.

06:34

Haremos que funcione el botón de me gusta con JavaScript y AJAX y crearemos diferentes efectos visuales en nuestra red social.

10:07

Programaremos una extensión de Twig que nos permitirá comprobar si una publicación le gusta a un usuario o no.

07:50

Desarrollaremos la funcionalidad de unlike, dislike, o no me gusta para desmarcar una publicación de nuestra lista. Programaremos la parte del backend con php y symfony3 y la del front con jquery y ajax.

Section 12: Perfiles de usuario
07:10

Maquetaremos el panel de estadísticas en la home.

13:05

Programaremos un filtro de Twig con Symfony3 que nos permitirá mostrar las estadisticas y contadores del usuario. Nos mostrará el número de seguidores(followers), el número de usuarios que estamos siguiendo(follows), el número de publicaciones y el número de me gustas(likes).

13:06

Desarrollaremos la página de perfil de los usuarios. Empezaremos creando una acción, una ruta y una vista en Symfony 3 y luego seguiremos avanzando.

15:34

Maquetaremos con Twig(lenguaje de plantillas de Symfony2, 2.8 y Symfony3) CSS3 y Bootstrap los perfiles de usuario con todo lo necesario.

08:58

Haremos que los enlaces a los perfiles funcionen y que el JavaScript se lance correctamente.

13:37

Haremos una sección para mostrar el listado de usuario que un usuario está siguiendo, listado de follows.

04:44

Crearemos una nueva página donde mostraremos el listado de followers de un usuario. Será un listado paginado y funcional con Symfony3 y AJAX.

08:35

Crearemos la sección donde se listarán todas las publicaciones que le gustan a un usuario.

02:08

Haremos que todos los enlaces que apunten a un usuario funcionen, utilizaremos funciones especificas de Twig, PHP y Symfony 3 para lograr esto.

Section 13: Sistema de notificaciones
16:36

Crearemos un servicio en Symfony3 con el que haremos la mayoría de funcionalidades del sistema de notificaciones de la plataforma social.

14:53

Crearemos una sección dentro de nuestra red social donde se listarán las notificaciones que nos llegan.

06:49

Mostraremos el nombre del usuario que ha interactuado con nuestro perfil y un link a su profile de forma fácil, rápida y sencilla.

03:56

Crearemos una acción y una ruta que nos generará una URL que mostrará el número de notificaciones sin leer que tiene el usuario identificado en la plataforma web social (red social).

06:32

Mostraremos el número de notificaciones que tenemos sin leer con AJAX, haremos una petición AJAX que se irá ejecutando frecuentemente y nos mostrará un aviso con las notificaciones pendientes.

05:23

Programaremos la opción de marcar las notificaciones como leídas automáticamente.

Section 14: Mensajeria privada (Direct, MD)
07:21

Empezaremos a programar la sección de mensajes privados, crearemos un controlador, una acción, vistas, formularios, etc.

19:58

Crearemos un formulario complejo con Symfony 3 para el envio de mensajes privados.

04:37

Continuamos con los detalles finales del formulario y el repositorio de entidades relacionado con Symfony.

09:47

Veremos como guardar los mensajes privados en la base de datos y que le lleguen al receptor. Tras haber maquetado con Bootstrap el formulario, lo hacemos funcionar finalmente.

17:10

Listaremos los mensajes que hemos enviado a otros usuarios de la plataforma.

07:08

Crearemos un listado paginado de mis mensajes recibidos en la red social.

07:02

Haremos que se nos notifique en la cabecera del número de mensajes privados o directos que tenemos sin leer.

06:35

Programaremos lo necesario para marcar los mensajes como leídos en la web.

Section 15: Mejoras, seguridad y extras
09:12

Añadiremos nuevas funcionalidades en los perfiles de los usuarios.

14:55

Securizaremos la aplicación aplicando un control de acceso para cada controlador y ruta de la red social.

02:33

Haremos una pequeña modificación en el listado de mensajes enviados para ver a quien va dirigido el mensaje privado que envié.

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Víctor Robles, Desarrollador web

Soy desarrollador web en una empresa y llevo inmerso en el mundo de la programación y la informática desde los 15 años.

Me encanta programar y todo lo relacionado con Internet y las nuevas tecnologías, crear cosas y enseñar a los demás.

Soy casi completamente autodidacta, por eso voy a ofrecerte muchos de mis conocimientos para que tú puedas aprender más fácilmente y más rápido de lo que yo lo hice y hago cada día.

Puedes saber más de mí en mi blog y en mis perfiles en las diferentes redes sociales ;) .

Ready to start learning?
Take This Course