SlideShare une entreprise Scribd logo
1  sur  53
Symfony Parte 7 Rodrigo Miranda [email_address] [email_address] http://www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Formularios
Rodrigo Miranda Blog: www.rodrigomiranda.cl Tipos de Formularios: 1.-  Los formularios que no dependen del modelo de  datos. 2.-  Los formularios Propel. ./symfony propel:build-forms
Rodrigo Miranda Blog: www.rodrigomiranda.cl Los formularios NO propel
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Pasos: 1.- Crear un archivo php para clase del Formulario. 2.- Configurar el formulario (añadir widget y validadores) 3.- Crear un módulo para ver nuestro ejemplo
Rodrigo Miranda Blog: www.rodrigomiranda.cl Paso 1 y 2
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],Paso 3
Rodrigo Miranda Blog: www.rodrigomiranda.cl Paso 3 #./symfony generate:module administrador contacto
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],Paso 3
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],Paso 3
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],Paso 3
Rodrigo Miranda Blog: www.rodrigomiranda.cl Paso 3
Rodrigo Miranda Blog: www.rodrigomiranda.cl Revisar el código HTML de la página.
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],[object Object],[object Object],[object Object],[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl Configurando un arreglo de Labels :
Rodrigo Miranda Blog: www.rodrigomiranda.cl Configurando sólo un label :
Rodrigo Miranda Blog: www.rodrigomiranda.cl Cambiar nombre de los campos :
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl Agregar un campo select.
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Acción que recibe.
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Modificación action Formulario
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Acción Gracias
Rodrigo Miranda Blog: www.rodrigomiranda.cl template graciasSuccess.php
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl Atajos de la plantilla :
Rodrigo Miranda Blog: www.rodrigomiranda.cl Validación
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],[object Object],[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Los formularios Propel
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],[object Object],[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl Revisemos el formulario de Encuesta
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl Controlar el diseño del formulario
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl
Rodrigo Miranda Blog: www.rodrigomiranda.cl Mostrando errores en el formulario
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],[object Object],[object Object],[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl ……………… . …………………… … .
Rodrigo Miranda Blog: www.rodrigomiranda.cl ……………… . …………………… … .
Rodrigo Miranda Blog: www.rodrigomiranda.cl ,[object Object],[object Object],[object Object]
Rodrigo Miranda Blog: www.rodrigomiranda.cl Preguntas?

Contenu connexe

En vedette

Presentacion aprendizaje colaborativo
Presentacion aprendizaje colaborativoPresentacion aprendizaje colaborativo
Presentacion aprendizaje colaborativo
santy77
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informatica
daicy96
 
«солдатськими стежками»
«солдатськими стежками»«солдатськими стежками»
«солдатськими стежками»
jekah
 
веснянка 2015 краматорськ
веснянка 2015 краматорськвеснянка 2015 краматорськ
веснянка 2015 краматорськ
jekah
 
семінар в зош №18
семінар в зош №18семінар в зош №18
семінар в зош №18
jekah
 
«приєднуйтесь до формування превентивної культури охорони праці»
«приєднуйтесь до формування превентивної культури охорони праці»«приєднуйтесь до формування превентивної культури охорони праці»
«приєднуйтесь до формування превентивної культури охорони праці»
jekah
 
6нукннаказ по конкурсу сайтів
6нукннаказ по конкурсу сайтів6нукннаказ по конкурсу сайтів
6нукннаказ по конкурсу сайтів
jekah
 
черга у днз №4 ластівка
черга у днз №4 ластівкачерга у днз №4 ластівка
черга у днз №4 ластівка
jekah
 

En vedette (17)

Presentacion aprendizaje colaborativo
Presentacion aprendizaje colaborativoPresentacion aprendizaje colaborativo
Presentacion aprendizaje colaborativo
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informatica
 
Las drogaas
Las drogaasLas drogaas
Las drogaas
 
Symfony parte 15 Consultas y Migración
Symfony parte 15 Consultas y MigraciónSymfony parte 15 Consultas y Migración
Symfony parte 15 Consultas y Migración
 
Local Marketing
Local MarketingLocal Marketing
Local Marketing
 
«солдатськими стежками»
«солдатськими стежками»«солдатськими стежками»
«солдатськими стежками»
 
веснянка 2015 краматорськ
веснянка 2015 краматорськвеснянка 2015 краматорськ
веснянка 2015 краматорськ
 
Salt Paris meetup - décembre 2015 - La supervision pilotée par Salt avec carb...
Salt Paris meetup - décembre 2015 - La supervision pilotée par Salt avec carb...Salt Paris meetup - décembre 2015 - La supervision pilotée par Salt avec carb...
Salt Paris meetup - décembre 2015 - La supervision pilotée par Salt avec carb...
 
семінар в зош №18
семінар в зош №18семінар в зош №18
семінар в зош №18
 
«приєднуйтесь до формування превентивної культури охорони праці»
«приєднуйтесь до формування превентивної культури охорони праці»«приєднуйтесь до формування превентивної культури охорони праці»
«приєднуйтесь до формування превентивної культури охорони праці»
 
Global Entertainment and Media Outlook 2011- 2015 (PwC) - OCT11
Global Entertainment and Media Outlook 2011- 2015  (PwC) - OCT11Global Entertainment and Media Outlook 2011- 2015  (PwC) - OCT11
Global Entertainment and Media Outlook 2011- 2015 (PwC) - OCT11
 
Devancer l'inattendu
Devancer l'inattenduDevancer l'inattendu
Devancer l'inattendu
 
6нукннаказ по конкурсу сайтів
6нукннаказ по конкурсу сайтів6нукннаказ по конкурсу сайтів
6нукннаказ по конкурсу сайтів
 
черга у днз №4 ластівка
черга у днз №4 ластівкачерга у днз №4 ластівка
черга у днз №4 ластівка
 
Es posible la revolución educativa sin la integración
Es posible la revolución educativa sin la integraciónEs posible la revolución educativa sin la integración
Es posible la revolución educativa sin la integración
 
Delivering Happiness, The New Secret Ingredient by Sunny Grosso
Delivering Happiness, The New Secret Ingredient by Sunny GrossoDelivering Happiness, The New Secret Ingredient by Sunny Grosso
Delivering Happiness, The New Secret Ingredient by Sunny Grosso
 
Folleto alejandro-acevedo-jhonatan-forero
Folleto alejandro-acevedo-jhonatan-foreroFolleto alejandro-acevedo-jhonatan-forero
Folleto alejandro-acevedo-jhonatan-forero
 

Similaire à Symfony parte 7

Manual de Desarrollo Formularios Web de Maestros y Operaciones en eFactory S...
Manual de Desarrollo Formularios Web de Maestros  y Operaciones en eFactory S...Manual de Desarrollo Formularios Web de Maestros  y Operaciones en eFactory S...
Manual de Desarrollo Formularios Web de Maestros y Operaciones en eFactory S...
Factory Soft - Software ERP para la Nube Latinoamericano
 
A toda máquina con herencia visual
A toda máquina con herencia visualA toda máquina con herencia visual
A toda máquina con herencia visual
Ignacio Monllor
 

Similaire à Symfony parte 7 (20)

Symfony parte 6
Symfony parte 6Symfony parte 6
Symfony parte 6
 
Symfony parte 8
Symfony parte 8Symfony parte 8
Symfony parte 8
 
Symfony parte 6
Symfony parte 6Symfony parte 6
Symfony parte 6
 
Symfony Parte 5
Symfony Parte 5Symfony Parte 5
Symfony Parte 5
 
Symfony parte 11 Formularios
Symfony parte 11 FormulariosSymfony parte 11 Formularios
Symfony parte 11 Formularios
 
6. windows forms
6.  windows forms6.  windows forms
6. windows forms
 
Symfony parte 10
Symfony parte 10Symfony parte 10
Symfony parte 10
 
Symfony parte 4
Symfony parte 4Symfony parte 4
Symfony parte 4
 
Symfony Parte 2
Symfony Parte 2Symfony Parte 2
Symfony Parte 2
 
Uniidad 2 margara
Uniidad 2 margaraUniidad 2 margara
Uniidad 2 margara
 
Tema2 ado net
Tema2 ado netTema2 ado net
Tema2 ado net
 
Symfony parte 16
Symfony parte 16Symfony parte 16
Symfony parte 16
 
Guia unidad ii programacion
Guia unidad ii programacionGuia unidad ii programacion
Guia unidad ii programacion
 
Symfony parte 12
Symfony parte 12Symfony parte 12
Symfony parte 12
 
Noray Fiscal - Generación modelo 180
Noray Fiscal - Generación modelo 180Noray Fiscal - Generación modelo 180
Noray Fiscal - Generación modelo 180
 
6.- DynaForms Avanzados v3.pptx
6.- DynaForms Avanzados v3.pptx6.- DynaForms Avanzados v3.pptx
6.- DynaForms Avanzados v3.pptx
 
introduccion al desarrollo de aplicaciones en c#
introduccion al desarrollo de aplicaciones en c#introduccion al desarrollo de aplicaciones en c#
introduccion al desarrollo de aplicaciones en c#
 
Manual de Desarrollo Formularios Web de Maestros y Operaciones en eFactory S...
Manual de Desarrollo Formularios Web de Maestros  y Operaciones en eFactory S...Manual de Desarrollo Formularios Web de Maestros  y Operaciones en eFactory S...
Manual de Desarrollo Formularios Web de Maestros y Operaciones en eFactory S...
 
A toda máquina con herencia visual
A toda máquina con herencia visualA toda máquina con herencia visual
A toda máquina con herencia visual
 
Formularios y REST (deSymfony2013)
Formularios y REST (deSymfony2013)Formularios y REST (deSymfony2013)
Formularios y REST (deSymfony2013)
 

Plus de Rodrigo Miranda (9)

Symfony Pruebas Unitarias
Symfony Pruebas UnitariasSymfony Pruebas Unitarias
Symfony Pruebas Unitarias
 
Symfony parte 14 Consultas SQL - Páginador
Symfony parte 14 Consultas SQL - PáginadorSymfony parte 14 Consultas SQL - Páginador
Symfony parte 14 Consultas SQL - Páginador
 
Symfony Parte 3
Symfony Parte 3Symfony Parte 3
Symfony Parte 3
 
Adentrándonos al Framework Symfony
Adentrándonos al  Framework SymfonyAdentrándonos al  Framework Symfony
Adentrándonos al Framework Symfony
 
Adentrándonos a PHP 5
Adentrándonos a PHP 5Adentrándonos a PHP 5
Adentrándonos a PHP 5
 
Introducción Nivelación PHP
Introducción Nivelación PHPIntroducción Nivelación PHP
Introducción Nivelación PHP
 
Ticnet Capacita en la Plataforma de Aprendizaje Moodle
Ticnet Capacita en la Plataforma de Aprendizaje MoodleTicnet Capacita en la Plataforma de Aprendizaje Moodle
Ticnet Capacita en la Plataforma de Aprendizaje Moodle
 
Ticnet capacita en Plataforma de Aprendizaje Moodle
Ticnet capacita en Plataforma de Aprendizaje MoodleTicnet capacita en Plataforma de Aprendizaje Moodle
Ticnet capacita en Plataforma de Aprendizaje Moodle
 
Ticnet Capacita en la Plataforma de Aprendizaje Moodle
Ticnet Capacita en la Plataforma de Aprendizaje Moodle Ticnet Capacita en la Plataforma de Aprendizaje Moodle
Ticnet Capacita en la Plataforma de Aprendizaje Moodle
 

Dernier

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 

Dernier (15)

presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 

Symfony parte 7

Notes de l'éditeur

  1. setWidgets recibe como parametro un arreglo asociativo. sfWdigetFormInput = campo texto input sfWidgetFormTextarea() = textarea.
  2. Cuando se muestra un objeto usando <?php echo $formulario?> el intérprete de PHP muestra la representación en texto del objeto $formulario. Para convertir el objeto en una cadena de texto, PHP intenta ejecutar el método mágico __toString(). Todos los widgets implementan este método para convertir el objeto en código HTML
  3. No utilizamos propel ni agregamos el tercer argumento porque estamos creando un módulo que no pertenece al modelo. Se acuerda que yo les comentaba que el 90 % de las veces un módulo está relacionado a una tabla, pero no siempre debe ser así. O La otra alternativa es que cree el módulo a mano dentro del directorio modules de la aplicación.
  4. Al crear un formulario mediante new ContactoForm(), se invoca inmediatamente el método configure definido anteriormente.
  5. Al crear un formulario mediante new ContactoForm(), se invoca inmediatamente el método configure definido anteriormente.
  6. Cuando se muestra un objeto usando <?php echo $formulario?> el intérprete de PHP muestra la representación en texto del objeto $formulario. Para convertir el objeto en una cadena de texto, PHP intenta ejecutar el método mágico __toString(). Todos los widgets implementan este método para convertir el objeto en código HTML
  7. Cuando se muestra un objeto usando <?php echo $formulario?> el intérprete de PHP muestra la representación en texto del objeto $formulario. Para convertir el objeto en una cadena de texto, PHP intenta ejecutar el método mágico __toString(). Todos los widgets implementan este método para convertir el objeto en código HTML
  8. Acá como estamos haciendo un redirect debemos pasar las variables de la forma get para la otra acción. Si hubiesemos utilizado un forward, la otra acción hubiese tenido disponible la petición sin enviar esa información. http_build_query es una función propia de PHP que genera una cadena de texto de tipo query string a partir de los parámetros pasados a través de un array y con sus valores correctamente codificados para incluirlos en una URL.
  9. En este momento, el formulario con el método BIND asocia el formulario con los datos introducidos por el usuario y ejecuta el mecanismo de validación. En este caso, el formulario se encuentra en el estado asociado. Y en el método que recibo ejecuto el BIND que asocia y ejecuta el método validación. Si el método isValid() es true se rederige todo el contenido hacia la otra acción gracias. getValues, nos entrega los datos validador y limpios porque eso hace el método de validación.
  10. 1: foreach ($formulario->getGlobalErrors() as $nombre => $error):?> echo $nombre.’ : .$error?>‘ 2 : foreach($formulario[‘email’]->getError() as $error):?>