formularios en php
DESCRIPTION
Descripción del funcionamiento de formularios en PHPTRANSCRIPT
-
Desarrollo de sitios web conPHP y MySQLTema 3: FormulariosJos Mariano Gonzlez [email protected]
-
Tema 3: FormulariosAcceso a formularios HTML desde PHPEl formulario de PHPSubida de ficheros al servidorValidacin de los datos de un formulario
-
Acceso a formularios desde PHPDesde PHP se puede acceder fcilmente a los datos introducidos desde un formulario HTMLVemoslo con un ejemplo simple
-
Acceso a formularios desde PHPFichero uno.php
Edad:
Fichero dos.php
-
Acceso a formularios desde PHP
-
Acceso a formularios desde PHPA partir de PHP 4.2.0, el valor por defecto de la directiva de PHP register_globals es offEsto tiene una gran importancia sobre los formularios, ya que no es posible acceder a las variables enviadas de la manera anterior (como variables globales). En su lugar hay que utilizar la variable predefinida de PHP $_REQUEST, escribiendo $_REQUEST[edad] en lugar de $edadSe puede poner register_globals = on en el fichero de configuracin php.ini, pero no es recomendable por motivos de seguridad. Una alternativa que permite hacer mnimos cambios en el cdigo ya existente es la siguiente:$edad = $_REQUEST[edad];
-
Acceso a formularios desde PHPFichero uno.php
Edad:
Fichero dos.php
-
Acceso a formularios desde PHPEjercicio 1: formulario simpleIlustra cmo acceder a los valores introducidos desde un formulario HTML
-
Acceso a formularios desde PHPAcceso a los diferentes tipos de elementos de entrada de formularioElementos de tipo INPUTTEXTRADIOCHECKBOXBUTTONFILEHIDDENPASSWORDSUBMITElemento SELECTSimple / mltipleElemento TEXTAREA
-
Acceso a formularios desde PHPTEXTIntroduzca la cadena a buscar:
- Acceso a formularios desde PHPRADIOSexo:
-
Acceso a formularios desde PHPCHECKBOXGarajePiscinaJardn
- Acceso a formularios desde PHPBUTTON
- Acceso a formularios desde PHPFILE
-
Acceso a formularios desde PHPHIDDEN
-
Acceso a formularios desde PHPPASSWORDContrasea:
-
Acceso a formularios desde PHPSUBMIT
-
Acceso a formularios desde PHPSELECT simpleColor:Rojo Azul
-
Acceso a formularios desde PHPSELECT mltipleIdiomas:
Ingls Francs Alemn Holands
-
Acceso a formularios desde PHPTEXTAREAComentario:
Este libro me parece ...
-
Acceso a formularios desde PHPEjercicio 2: programa que muestra los datos introducidos desde un formularioIlustra cmo acceder a los valores introducidos desde todos los tipos de elementos de entrada de un formulario, con excepcin de los tipos BUTTON y FILE, que se tratan en ejercicios posteriores
-
El formulario de PHPLa forma habitual de trabajar con formularios en PHP es utilizar un nico programa que procese el formulario o lo muestre segn haya sido o no enviado, respectivamenteVentajas:Disminuye el nmero de ficherosPermite validar los datos del formulario en el propio formularioProcedimiento:
si se ha enviado el formulario: Procesar formulariosi no: Mostrar formulariofsi
-
El formulario de PHPEsquema de funcionamiento:si se ha enviado el formulario: Procesar formulario
si no: Mostrar formulariofsia)b)La 1 vez que se carga la pgina se muestra el formulario (a)La 2 vez se procesa el formulario (b)
-
El formulario de PHPPara saber si se ha enviado el formulario se acude a la variable correspondiente al botn de envo. Si este botn aparece de la siguiente forma en el formulario HTML:
-
El formulario de PHPEjercicio 3: formulario de PHPIlustra cmo crear pginas multipropsito que sirven tanto para mostrar un formulario como para procesarlo
-
Subida de ficheros al servidorPara subir un fichero al servidor se utiliza el elemento de entrada FILEHay que tener en cuenta una serie de consideraciones importantes:El elemento FORM debe tener el atributo ENCTYPE="multipart/form-dataEl fichero tiene un lmite en cuanto a su tamao. Este lmite se fija de dos formas diferentes:En el fichero de configuracin php.iniEn el propio formulario
-
Subida de ficheros al servidor;;;;;;;;;;;;;;;;; File Uploads ;;;;;;;;;;;;;;;;;; Whether to allow HTTP file uploads.file_uploads = On
; Temporary directory for HTTP uploaded files (will use; system default if not specified).;upload_tmp_dir =
; Maximum allowed size for uploaded files.upload_max_filesize = 2Mphp.iniformulario
-
Subida de ficheros al servidorConsideraciones (cont)Debe darse al fichero un nombre que evite coincidencias con ficheros ya subidos. Por ello, y como norma general, debe descartarse el nombre original del fichero y crear uno nuevo que sea nicoEl fichero subido se almacena en un directorio temporal y hemos de moverlo al directorio de destino usando la funcin move_upload_file()Procedimiento:
si se ha subido correctamente el fichero:Asignar un nombre al ficheroMover el fichero a su ubicacin definitivasi no:Mostrar un mensaje de errorfsi
-
Subida de ficheros al servidorLa variable $_FILES contiene toda la informacin del fichero subido:$_FILES['imagen']['name'] Nombre original del fichero en la mquina cliente$_FILES['imagen']['type'] Tipo mime del fichero. Por ejemplo, "image/gif"$_FILES['imagen']['size'] Tamao en bytes del fichero subido$_FILES['imagen']['tmp_name'] Nombre del fichero temporal en el que se almacena el fichero subido en el servidor$_FILES['imagen]['error']Cdigo de error asociado al fichero subidoHTML
-
Subida de ficheros al servidorPHPif (is_uploaded_file ($_FILES['imagen']['tmp_name'])){ $nombreDirectorio = "img/"; $idUnico = time(); $nombreFichero = $idUnico . "-" . $_FILES['imagen']['name'];
move_uploaded_file ($_FILES['imagen']['tmp_name'], $nombreDirectorio . $nombreFichero);}else print ("No se ha podido subir el fichero\n");
-
Subida de ficheros al servidorPHPif (is_uploaded_file ($_FILES['imagen']['tmp_name'])){ $nombreDirectorio = "img/"; $nombreFichero = $_FILES['imagen']['name'];
$nombreCompleto = $nombreDirectorio . $nombreFichero; if (is_file($nombreCompleto)) { $idUnico = time(); $nombreFichero = $idUnico . "-" . $nombreFichero; }
move_uploaded_file ($_FILES['imagen']['tmp_name'], $nombreDirectorio . $nombreFichero);}else print ("No se ha podido subir el fichero\n");
-
Subida de ficheros al servidorEjercicio 4: subida de un fichero al servidorIlustra cmo subir ficheros a un servidor, cmo controlar su tamao, cmo crear un nombre nico para el fichero y cmo almacenarlo en el lugar deseado
-
Validacin de formulariosToda la informacin proveniente de un formulario debe considerarse por norma como contaminada, y hay que validarla antes de darla por buena y procesarlaLo ms eficiente es mostrar los errores sobre el propio formulario para facilitar su correccin. Procedimiento:
si se ha enviado el formulario: si hay errores: Mostrar formulario con errores si no: Procesar formulario fsisi no: Mostrar formulariofsi
-
Validacin de formulariosEste procedimiento se puede resumir para que slo haya que mostrar una vez el formulario, bien con los valores por defecto o con los valores introducidos, y con los errores en su caso:
si se ha enviado el formulario: validar datosfsisi se ha enviado el formulario y no hay errores: Procesar formulariosi no: Mostrar formulario con valores por defecto o ya enviadosfsi
-
Validacin de formulariosEsquema de funcionamiento:si se ha enviado el formulario: validar datosfsisi se ha enviado y no hay errores: Procesar formulario
si no: Mostrar formulariofsia)b)c)La 1 vez que se carga la pgina se muestra el formulario (a)La 2 y sucesivas veces se validan los datosSi hay errores, se muestra de nuevo el formulario con los errores (b)Si no hay, se procesa el formulario (c)
-
Validacin de formulariosEjercicio 5: validacin de los datos introducidos en un formularioIlustra cmo realizar una validacin de los datos introducidos en un formulario en el propio formulario