Professional Documents
Culture Documents
PROGR
AMACI CATEDRTICO M.I.:
EDGAR GONZALEZ SANTIAGO
N Alumno
PROYECTO
El lector escribe la informacin rellenando campos o haciendo clic sobre botones, y luego presiona
un botn de envo para enviarla a una direccin URLque se suele dirigir a una direccin de correo
electrnico o a un script dinmico Web como PHP, ASP o CGI.
La etiqueta FORM
Los formularios estn delimitados con la etiqueta <FORM> ... </FORM>, que permite reunir varios
elementos de formulario, como botones y casillas de texto y que debe poseer los siguientes
atributos:
METHOD indica cmo se enviarn las respuestas
"POST" es el valor que enva los datos al agente de procesamiento almacenndolos en el
cuerpo del formulario, en tanto que "GET" enva los datos agregndolos a la direccin URL y
separndolos de la direccin con un signo de interrogacin (para aprender ms sobre los
mtodos POST y GET, consulte el artculo sobre protocolo HTTP)
ACTION indica la direccin a la que se enviar la informacin (un script CGI o direccin de
correo electrnico (mailto:direccin_de_correo_e@equipo))
Un atributo opcional de la etiqueta FORM es ENCTYPE, que especifica cmo se codifican los
datos del formulario. De cualquier forma, esto no necesita especificarse, ya que el valor
predeterminado (application/x-www-form-urlencoded) es el nico valor vlido. El atributo
opcional ACCEPT se usa para establecer tipos MIME para los datos que el formulario puede
enviar.
Esta es la sintaxis para la etiqueta FORM:
Envo de datos
Cuando se enva un formulario (haciendo clic en el botn de envo), los datos del formulario se
envan a un script CGI bajo la forma de pares nombre/valor, es decir conjuntos de datos
representados por el nombre del elemento formulario, un signo igual ("=") y luego el valor asociado.
Estos pares nombre/valor se separan unos de otros mediante el smbolo de unin ("&"). Por lo
tanto, los datos que se envan al script se vern as:
campo1=valor1&field2;=valor2&field3;=valor3
Con el mtodo GET (enviar los datos mediante una direccin URL), la URL ser una cadena como
la siguiente:
http://es.kioskea.net/cgi-bin/script.cgi?campo1=valor1&field2;=valor2
La etiqueta INPUT
La etiqueta INPUT es una etiqueta esencial para los formularios, ya que se usa para crear muchos
elementos interactivos. La sintaxis de esta etiqueta es la siguiente:
<INPUT type="Nombre de campo" value="Valor predeterminado" name="Nombre
de elemento">
El atributo name es esencial, ya que permite al script CGI reconocer qu campo est asociado con
un par nombre/valor, lo que significa que el nombre del campo estar seguido de un signo igual
("=") seguido de un valor que el usuario introdujo, o si el usuario no introdujo ningn valor, por el
valor predeterminado de la etiqueta value.
El atributo type se usa para especificar qu tipo de elemento se representa con la etiqueta INPUT.
Estos son los valores posibles:
checkbox: Las casillas de eleccin pueden adoptar uno de dos estados: checked
(seleccionado) o unchecked (no seleccionado). Cuando la casilla es seleccionada, el par
nombre/valor se enva al CGI.
hidden: Este campo, que el navegador no muestra, es para definir una configuracin nica
que se enviar al CGI como par nombre/valor.
file: Un campo que permite al usuario especificar una ruta de archivo que lleva al archivo
que se enviar con el formulario. Los tipos de archivo que pueden ser enviados deben
especificarse utilizando el atributo ACCEPT de la etiqueta FORM.
image: Un botn de envo personalizado que aparece cuando se ubica una imagen en la
ubicacin definida por el atributo SRC.
password: Una casilla de texto donde los caracteres escritos aparecen como asteriscos
para camuflar el texto de entrada.
radio: Un botn que permite al usuario elegir entre varias opciones. Cada uno de estos
botones debe tener el mismo atributo name. El par nombre/valor del botn radio seleccionado
se enviar al CGI. Al aplicar el atributo checkedpara uno de estos botones se definir como
seleccionado de forma predeterminada.
reset: Un botn de restauracin para quitar todos los elementos en el formulario y
restablecer sus valores predeterminados.
submit: Un botn de envo para enviar el formulario. El texto en el botn puede definirse
usando el atributo value.
text: Una casilla de texto para escribir una lnea de texto. El tamao de la casilla puede
definirse usando el atributo size y la extensin mxima del texto con el atributo maxlength.
La etiqueta TEXTAREA
La etiqueta TEXTAREA se usa para definir un cuadro de texto ms grande que la lnea simple
propuesta por la etiqueta INPUT. Esta etiqueta tiene los siguientes atributos:
cols: representa el nmero de caracteres que puede contener un lnea
rows: representa el nmero de lneas
name: representa el nombre asociado con el cuadro de texto, que permite su identificacin
en el par nombre/valor.
readonly: impide que el usuario modifique el texto predeterminado en el campo
value: representa el valor predeterminado que se enviar al script si el usuario no ha
escrito nada en el cuadro de texto
La etiqueta SELECT
La etiqueta SELECT sirve para crear una lista desplegable de elementos (especificados por las
etiquetas OPTION dentro de ella). Los atributos de esta etiqueta son:
name: name: representa el nombre asociado con la casilla de texto, que permite su
identificacin en el par nombre/valor.
disabled: crea un lista desactivada, que aparece atenuada
size: representa el nmero de lneas de la lista (este valor puede ser ms grande que el
nmero de elementos reales de la lista).
multiple: Permite al usuario seleccionar varios campos de la lista
Ejemplo de formulario
Los formularios pueden ubicarse en una pgina usando tablas (algo recomendable para una
presentacin profesional). Este es un ejemplo que resume los puntos precedentes, mostrndole
cmo disponer un formulario en una pgina Web mediante una tabla:
<TR>
<TD>Nombre</TD>
<TD>
<INPUT type=text name="nombre">
</TD>
</TR>
<TR>
<TD>Gnero</TD>
<TD>
Hombre:
Mujer: <INPUT type=radio name="gnero" value="M">
<br>Mujer: <INPUT type=radio name="gnero" value="F">
</TD>
</TR>
<TR>
<TD>Ocupacin</TD>
<TD>
<SELECT name="ocupacin">
<OPTION VALUE="profesor">Profesor</OPTION>
<OPTION VALUE="estudiante">Estudiante</OPTION>
<OPTION VALUE="ingeniero">Ingeniero</OPTION>
<OPTION VALUE="jubilado">Jubilado</OPTION>
<OPTION VALUE="otro">Otro</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD>Comentarios</TD>
<TD>
<TEXTAREA rows="3" name="comentarios">
Escriba aqu sus comentarios</TEXTAREA>
Enviar
</TD>
</TR>
<TR>
<TD COLSPAN=2>
<INPUT type="submit" value="Enviar">
</TD>
</TR>
</TABLE>
</FORM>
Esto es lo que aparece en la pantalla:
Registro de usuario
Apellido
Nombre
Hombre: Mujer:
Gnero
Mujer:
Ocupacin
Comentarios
Enviar
POST
METHOD
GET
Especifica el tipo
ENCTYPE
de cdigo
<FORM>
Elimina el
Reset contenido del Reset
formulario
casilla de
Checkbox
seleccin
NAME Nombre
NAME
<TEXTAREA> ...
ROWS Casilla de texto
</TEXTAREA>
COLS
<SELECT> Opcin 1
NAME
<OPTION> ...
</OPTION> Mltiples
Opcin 1
MULTIPLE selecciones
</SELECT>
posibles
Eleccin Opcin 1
<OPTION> ...
SELECTED Opcin 2
</OPTION> predeterminada Opcin 3
PALABRAS RESERVADAS EN PHP
add a note
up
down
Chris
1 year ago
<?php
$keywords =
array('__halt_compiler', 'abstract', 'and', 'array', 'as', 'break', 'c
allable', 'case','catch', 'class', 'clone', 'const', 'continue', 'decl
are', 'default', 'die', 'do', 'echo', 'else','elseif', 'empty', 'endde
clare', 'endfor', 'endforeach', 'endif', 'endswitch', 'endwhile', 'eva
l','exit', 'extends', 'final', 'for', 'foreach', 'function', 'global',
'goto', 'if', 'implements','include', 'include_once', 'instanceof', 'i
nsteadof', 'interface', 'isset', 'list', 'namespace','new', 'or', 'pri
nt', 'private', 'protected', 'public', 'require', 'require_once', 'ret
urn','static', 'switch', 'throw', 'trait', 'try', 'unset', 'use', 'var
', 'while', 'xor');
$predefined_constants =
array('__CLASS__', '__DIR__', '__FILE__', '__FUNCTION__', '__LINE__','
__METHOD__', '__NAMESPACE__', '__TRAIT__');
?>
up
down
\b(
(a(bstract|nd|rray|s))|
(c(a(llable|se|tch)|l(ass|one)|on(st|tinue)))|
(d(e(clare|fault)|ie|o))|
(e(cho|lse(if)?|mpty|nd(declare|for(each)?|if|switch|while)|val|x(it|
tends)))|
(f(inal|or(each)?|unction))|
(g(lobal|oto))|
(i(f|mplements|n(clude(_once)?|st(anceof|eadof)|terface)|sset))|
(n(amespace|ew))|
(p(r(i(nt|vate)|otected)|ublic))|
(re(quire(_once)?|turn))|
(s(tatic|witch))|
(t(hrow|r(ait|y)))|
(u(nset|se))|
(__halt_compiler|break|list|(x)?or|var|while)
)\b
up
down
Bob
4 years ago
There are some cases when you need to use a reserved keyword or
language construct as a class method name. In this instance, there is
very little chance of namespace conflicts (as the class itself acts as
a namespace). If you try to define the method the old way, you will
get an unexpected token error.
<?php
class MyClass
{
// Define MyClass::unset() with a different name, e.g. 'rm'
public function rm($arg)
{
/* code... */
}
// Define MyClass::list() with a different name, e.g. 'ls'
public function ls($arg = null)
{
/* code... */
}
// Now define a __call() method (requires PHP > 5.2.3 to take
effect)
public function __call($func, $args)
{
switch ($func)
{
case 'list':
return $this->ls((isset($args[0]))? $args[0]: null);
break;
case 'unset':
return $this->rm($args[0]);
break;
default:
trigger_error("Call to undefined method
".__CLASS__."::$func()", E_USER_ERROR);
die ();
}
}
}
?>
The only caveat is that to use the long method names, you need PHP >
5.2.3. However, a nice feature is that if you are using an older
version than 5.2.3, all of the __call() stuff is ignored and the class
will behave as expected (in other words, it degrades gracefully).
This is a nice trick, and can let you code better APIs for newer
versions of PHP. However, if this script is to be run on older PHP
installations, be very sure to use the short method names.