ff-multiconverter, multimedia, audio, video, linux, ubuntu ubuntu kylin, china, releases, linux terminal, ubuntu, linux, comandos, shell conky, gadgets, ubuntu, linux SpeedTest-Cli, velocidad, red, consola, terminal tag foto 6 pinta, grafica, linux, ubuntu djl, juegos, yum, synaptic, paquetes ubuntu, releases, canonical psensor, ubuntu, linux, sistema, monitor

Guia HTML: formularios de etiquetas y frames.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Formulario - label
Una última etiqueta relacionada con los formularios es la label.
Hasta este momento siempre que queríamos disponer un mensaje antes o después de un control de formulario lo escribiamos sin más.
Existe en HTML un elemento que permite asociar un texto con un control de formulario. Esto será muy útil si se accede desde un navegador no gráfico o una persona ciega que utiliza un programa que lee en voz alta el contenido de la página.
Veamos como lo hacíamos hasta ahora:
Ingrese su nombre:
<input type="text" name="nombre" size="20">

Utilizando el elemento label podemos hacer una referencia entre el texto y el control de entrada de datos:

<label for="nombre">Ingrese su nombre:</label>
<input type="text" name="nombre" size="20" id="nombre">

Veamos que hemos agregado:

  • Hemos definido la propiedad id a la marca input.
  • El elemento label tiene su marca de comienzo y fin, entre medio se dispone el texto a mostrar.
  • Para vincular esta label con el elemento input debemos inicializar la propiedad for con el nombre asignado a la propiedad id del elemento input. Más adelante veremos que la propiedad id la pueden tener todos los elementos HTML y es de vital importancia para CSS (Hojas de Estilo) y JavaScript
Confeccionemos un ejemplo completo:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
<fieldset>
<legend>Formulario de comentarios.</legend>
<label for="nombre">Ingrese su nombre:</label>
<input type="text" name="nombre" size="30" id="nombre"><br>
<label for="mail">Ingrese su mail:</label>
<input type="text" name="mail" size="50" id="mail"><br>
<label for="comentarios">Comentarios:</label><br>
<textarea name="comentarios" rows="5" cols="60" 
id="comentarios"></textarea> 
<br>
<input type="submit" value="Enviar">
</fieldset>
</form>
</body>
</html>

Como podemos ver asociamos cada etiqueta con el correspondiente control de entrada de datos:
  • <label for="nombre">Ingrese su nombre:</label>
    <input type="text" name="nombre" size="30" id="nombre"><br>

  • <label for="mail">Ingrese su mail:</label>
    <input type="text" name="mail" size="50" id="mail"><br>

  • <label for="comentarios">Comentarios:</label><br>
    <textarea name="comentarios" rows="5" cols="60" 
    id="comentarios"></textarea> 
Normalmente las propiedades id y name de los controles de entrada de datos (input, textarea etc.) se les asigna el mismo nombre, de todos modos no es obligatorio.

La propiedad for de la label hace referencia al id del control y no al name, esto es importante si inicializamos con valores distintos el id y name de los controles.

Frames.
 
Con los frames se pueden mostrar más de un archivo HTML en la misma ventana del navegador.

Podemos hacer que los frames interactuen, por ejemplo al presionar un enlace en un frame podemos cargar una página en otro frame.

Solo se aconseja emplear frames cuando la situación lo amerita, hay que tener en cuenta que el uso de frame hace menos accesible el sitio y es mucho más dificil imprimir su contenido.

Veamos un ejemplo de implementar dos frames:

<html>
<head>
<title>prueba de frames</title>
</head>
<frameset cols="20%,80%">
<frame src="pagina2.html">
<frame src="pagina3.html">
<noframes>
<p>El navegador no soporta frames</p>
</noframes>
</frameset>
</html>

Esta página es la que define la ubicación de los frames dentro del navegador.

La cabecera tiene una sintaxis similar a todas las páginas que hemos visto, pero no existe el body, en su lugar encontramos el elemento frameset.

En este ejemplo dividimos la ventana del navegador en dos secciones que mostrarán una página HTML cada una, mediante la propiedad cols indicamos cuanto ocupará cada ventana en porcentaje:

<frameset cols="20%,80%">

En el interior del elemento frameset definimos las dos páginas HTML que deben mostrarse mediante el elemento frame.

El elemento frame tiene una propiedad llamada src (source que significa fuente) que la inicializamos con el nombre de la página a mostrar. Así definimos las dos páginas:

<frame src="pagina2.html">
<frame src="pagina3.html">

Otra elemento importante es el noframes donde indicamos un mensaje en el caso que el navegador no cuente con la capacidad de mostrar frames (podemos disponer enlaces a las páginas en forma individual)

<noframes>
<p>El navegador no soporta frames</p>
</noframes>

Finalmente cerramos el elemento frame y la página:

</frameset>
</html>

Las otras dos páginas son iguales a las que hemos venido haciendo:

<html>
<head>
<title>prueba de frames</title>
</head>
<body>
<h2>Frame 1</h2>
</body>
</html>

<html>
<head>
<title>prueba de frames</title>
</head>
<body>
<h2>Frame 2</h2>
</body>
</html>

Frames - Actualización de un frame a partir del enlace de otro frame.

Una actividad habitual con frames es disponer hipervínculos en uno de los frame y actualizar el contenido de otro frame.

Veamos con un ejemplo la sintaxis para actualizar un frame a partir del enlace de otro:

pagina1.html

<html>
<head>
<title>prueba de frames</title>
</head>
<frameset cols="20%,80%">
<frame src="pagina2.html">
<frame src="pagina3.html" name="ventanadinamica">
<noframes>
<p>El navegador no soporta frames</p>
</noframes>
</frameset>
</html>

Podemos observar que para el frame que queremos acceder posteriormente para modificar su contenido debemos inicializar la propiedad name:

<frame src="pagina3.html" name="ventanadinamica">

pagina2.html

<html>
<head>
<title>prueba de frames</title>
</head>
<body>
<h2>Enlaces.</h2>
<ul>
<li><a href="pagina3.html" target="ventanadinamica">Enlace 
1</a></li>
<li><a href="pagina4.html" target="ventanadinamica">Enlace 
2</a></li>
</ul>
</body>
</html>

Este archivo es el frame de la izquierda, que contiene los hipervínculos a dos páginas. Para indicar que frame debe mostrar las páginas de estos hipervínculos agregamos la propiedad target inicializándola con el valor del name definido para el frame (en nuestro caso es "ventanadinamica")

Tengamos en cuenta que el frame de la derecha comienza mostrando el archivo pagina3.html y luego según que hipervínculo se seleccione mostrará el archivo: pagina3.html o pagina4.html

Los contenidos de los dos archivos pagina3.html y pagina4.html no tienen nada nuevo:

pagina3.html

<html>
<head>
<title>prueba de frames</title>
</head>
<body>
<h1>Página A</h1> 
<h2>Este es el contenido de página del archivo:pagina3.html</h2>
</body>
</html> 

pagina4.html

<html>
<head>
<title>prueba de frames</title>
</head>
<body>
<h1>Página B</h1> 
<h2>Este es el contenido de página del archivo:pagina4.html</h2>
</body>
</html>
Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia HTML: formularios de texto y password.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Formulario - text/password y maxlength
Los controles de tipo text y password pueden limitar la cantidad de caracteres que puede ingresar el usuario a partir de la propiedad maxlength.

Debemos asignarle un valor entero que indica hasta cuantos caracteres está permitido ingresar.

No hay que confundir el objetivo de la propiedad size con maxlength. Con la propiedad size solo indicamos la cantidad máxima de caracteres a mostrar dentro del control antes de hacer scroll de los datos.

Confeccionaremos un formulario que solicite el nombre de usuario y su clave y solo permitiremos ingresar nombres de usuarios de hasta 20 caracteres y claves de hasta 12.
<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Ingrese su nombre: 
<input type="text" name="nombre" maxlength="20" 
size="20">
<br>
Ingrese su clave: 
<input type="password" name="clave" maxlength="12" 
size="12">
<br>
<input type="submit" value="enviar">
</form>
</body>
</html>

Cuando ejecute esta página no podremos cargar un nombre de usuario de más de 20 caracteres, el teclado se inhabilita cuando se han ingresado 20 caracteres en el primer control.

Formulario - text/password/textarea y readonly.

Otra propiedad que podemos asignarle a los controles que creamos con el elemento input y también el elemento textarea es readonly.

Si definimos la propiedad readonly a un control el mismo es de solo lectura y no podemos modificar su contenido. Esta propiedad tiene uso cuando mediante un lenguaje de script (generalmente javascript) modificamos el control cambiandolo de estado ante ciertos eventos.

Cuando un control tiene la propiedad readonly el control toma foco pero no se puede cambiar su contenido. La diferencia con la propiedad disabled es que con esta no toma foco el control y generalmente aparece con un color que indica que el control está deshabilitado.

Confeccionemos un formulario que aparezca el nombre de una empresa en un text y el texto de un contrato en un textarea, ambos de solo lectura.

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/htmlya/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="30" value="Interpolacion" 
readonly><br>
Contrato:<br>
<textarea name="comentarios" rows="5" cols="60" readonly>
Por la presente ..............................
</textarea> 
<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Formulario - Envío de datos mediante mail.
 
Hasta ahora siempre configuramos la propiedad action de la marca <form> con el nombre de un archivo que procesa los datos en el servidor:

<form action="/registrardatos.php" method="post"> 

Para poder resolver esto debemos conocer el lenguaje PHP o algún otro lenguaje de servidor.

Conociendo solo HTML la solución es enviar los datos mediante el programa cliente de mail que esté configurado en la computadora. Para esto inicializamos la propiedad action de la siguiente forma:

<form action="mailto:pizzasya@htmlya.com" method="post" 
enctype="text/plain"> 

Es decir inicializamos la propiedad action con el texto mailto seguido de dos puntos y la dirección de mail a la que queremos enviar los datos del formulario, recordemos siempre que utilizamos mailto el emisor del mail depende como esté configurado nuestro software de mail en nuestra computadora.

Además inicializamos la propiedad enctype con el valor "text/plain" con lo que le indicamos que se trata de un archivo de texto plano. Tengamos en cuenta que no podemos enviar archivos adjuntos.

Para probar esta funcionalidad confeccionaremos una página que permita hacer un reclamo de reparaciones y se envíen los datos a una dirección de correo.

Se debe poder ingresar el nombre, dirección y un comentario del problema.

La página HTML es:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<h2>Reclamos</h2>
<form action="mailto:reclamos@gmail.com" method="post" 
enctype="text/plain">
Ingrese su nombre: 
<input type="text" name="nombre" size="20">
<br>
Ingrese su dirección: 
<input type="text" name="dirección" size="30">
<br>
Informe del problema:
<br>
<textarea rows="5" cols="40" name="problema"></textarea>
<br>
<input type="submit" value="enviar">
</form>
</body>
</html>

Debe llegar a la casilla de correos reclamos@gmail.com un mail con el contenido de los datos cargados en el formulario. El mail contiene el nombre del control y el contenido ingresado por el operador.

Si queremos que el correo llegue con un título debemos inicializar subject:

<form action="mailto:reclamos@gmail.com?subject=pedido de reparación" 
method="post" enctype="text/plain">

Con esto logramos ubicar perfectamente todos los mail que llegan a nuestra casilla de correos reclamos@gmail.com

La desventaja del envío de datos mediante mail es que la persona no puede hacer el envío del formulario desde una máquina ubicada en un ciberbar donde muy posiblemente no nos dejen configurar un cliente de mail.
Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia HTML: formularios de controles con valores iniciales, focos de controles e inhabilitaciòn.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Formulario - controles con valores iniciales.
Un control puede aparecer cargado con un valor por defecto. Veamos como inicializar con valores por defecto para cada uno de los controles que hemos visto.

Para inicializar un control de tipo text debemos dar un valor a la propiedad value:

<input type="text" value="aqui su nombre" name="nombre" 
size="20"> 

El control aparece cargado con la cadena "aqui su nombre".

Para inicializar un control de tipo textarea debemos indicar el dato entre el comienzo y el fin de la marca:

<textarea rows="10" cols="40" name="curriculum">Ingrese 
aqui su curriculum</textarea>

El control textarea se inicializa con la cadena "Ingrese aqui su curriculum"

Para inicializar un control de tipo checkbox debemos disponer la propiedad checked sin asignar valor:

<input type="checkbox" name="java" checked>Opcion 1<br>

Con esto logramos que el checkbox aparezca tildado apenas aparece el formulario.

Para inicializar un control de tipo radio debemos definir la propiedad checked sin valor, igual que un checkbox, con la salvedad que solo un un control de tipo radio puede tener definida esta propiedad:

<input type="radio" name="estudios" value="1" 
checked>Opción 1<br>

Para inicializar un control de tipo select con selección individual debemos definir la propiedad selected de los elementos option:

<select name="pais">
<option value="1">Argentina</option>
<option value="2" selected>España</option>
<option value="3">México</option>
<option value="4">Guatemala</option>
<option value="5">Honduras</option>
<option value="7">El Salvador</option>
<option value="8">Venezuela</option>
<option value="9">Colombia</option>
<option value="10">Cuba</option>
<option value="11">Bolivia</option>
<option value="13">Perú</option>
<option value="14">Ecuador</option>
<option value="15">Paraguay</option>
<option value="16">Uruguay</option>
<option value="17">Chile</option>
</select>

En este caso aparece seleccionado España, más alla que sea el segundo option en la lista.

Para inicializar un control de tipo select con selección múltiple debemos definir la propiedad selected de varios elementos option:

<select name="colores[]" size="4" multiple="multiple">
<option value="1" selected>Rojo</option>
<option value="2">Verde</option>
<option value="3" selected>Azul</option>
<option value="4">Amarillo</option>
<option value="5" selected>Blanco</option>
<option value="6">Negro</option>
<option value="7">Naranja</option>
<option value="8">Violeta</option>
</select>

En este ejemplo los items Rojo,Azul y Blanco aparecen seleccionados desde un comienzo.

Confeccionaremos como ejemplo un formulario que solicite el ingreso del nombre de una persona. Luego que seleccione si es mayor de edad o no (por defecto inicializar en si),seguidamente el teléfono (cargar por defecto 453-) y por último en un textarea solicitar que ingrese comentarios.

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Apellido y nombre:
<input type="text" name="nombre" size="30"><br>
Es mayor de edad?:<br>
<input type="radio" name="radio1" checked 
value="si">Si<br>
<input type="radio" name="radio1" value="no">No<br>
Telefono:
<input type="text" value="453-" name="telefono" 
size="15"><br>
<textarea name="comentarios" rows="5" cols="40">Ingrese 
aqui sus comentarios</textarea><br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Formulario - orden de foco de controles.
 
Todos los controles de formulario pueden definir una propiedad llamada tabindex que es un valor entero entre 0 y 32767. Este número indica el orden en que los controles toman foco. Cuando se presiona la tecla tab el navegador pasa el foco al siguiente control.

Para probar el funcionamiento implementaremos un formulario que contenga una matriz de tres filas y tres columnas de elementos de tipo text. Haremos que el foco sea por columna, es decir primero tomará foco el text de la primer fila y primer columna, luego del text de la segunda fila y primer columna etc (si no definimos la propiedad tabindex la carga de datos se efectua por fila):

<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
<input type="text" name="text1" size="5" tabindex="1">
<input type="text" name="text2" size="5" tabindex="4">
<input type="text" name="text3" size="5" tabindex="7">
<br>
<input type="text" name="text4" size="5" tabindex="2">
<input type="text" name="text5" size="5" tabindex="5">
<input type="text" name="text6" size="5" tabindex="8">
<br>
<input type="text" name="text7" size="5" tabindex="3">
<input type="text" name="text8" size="5" tabindex="6">
<input type="text" name="text9" size="5" tabindex="9">
<br>
<input type="submit" value="enviar" tabindex="10">
</form>
</body>
</html>

Como podemos observar los valores definidos para la propiedad tabindex para la primer fila de controles text es:

<input type="text" name="text1" size="5" tabindex="1">
<input type="text" name="text2" size="5" tabindex="4">
<input type="text" name="text3" size="5" tabindex="7">

Podemos observar que la propiedad tabindex no tiene valores consecutivos. Pero si vemos los text por columna podremos observar que si van en forma secuencial.

Todos los controles de formularios pueden definir la propiedad tabindex para indicar el orden de activación o foco del control.

Formulario - Inhabilitar controles.

Todos los controles que hemos visto podemos hacer que aparezcan inhabilitados.

Supongamos que disponemos 3 controles de tipo radio para indicar que sección del sitio deseamos ingresar. Nosotros queremos mostrar que tiene 3 secciones pero una no está disponible. Esto lo resolvemos deshabilitando un radio:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Seleccione la sección donde desea ingresar:
<br>
<input type="radio" name="seccion" value="1" 
disabled>Niños<br>
<input type="radio" name="seccion" value="2">Adolescentes<br>
<input type="radio" name="seccion" value="3">Mayores<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Para deshabilitar el primer radio añadimos la propiedad disabled sin asignarle valor:

<input type="radio" name="seccion" value="1" disabled>Niños

Los siguientes elementos pueden inhabilitarse:

button, input, optgroup, option, select y textarea.

Esta propiedad tiene mucha aplicación si se aplica javascript en la página. Mediante javascript podemos luego de haber sido cargado el documento modificar el estado de los controles, habilitando y deshabilitando de acuerdo a los datos que carga el visitante al sitio.

Búsqueda personalizada

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia HTML: formularios de input y agrupamiento de controles.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Formulario – button.
El elemento button es un control visual que se puede utilizar para sustituir los controles:
<input type="submit" value="Enviar">
<input type="reset" value="Borrar">

Entre otras las ventanjas de este elemento es que podemos agregar imágenes dentro del botón.

La sintaxis de este elemento es la siguiente:

<button type="submit">
Texto a mostrar dentro del botón.
</button>

Todo lo que está contenido entre las marcas de comienzo y fin del elemento button aparece dentro del botón, como por ejemplo una imagen, un párrafo, enfatizado de una palabra etc.

La propiedad type se puede inicializar con alguno de estos tres valores: "submit", "reset" y "button". Los dos primeros cumplen las funciones que ya conocemos es decir envío de los datos al servidor y borrado del contenido de los controles. En cuanto al tercer valor posible de la propiedad type significará que deberemos codificar una función en javascript para procesar el evento.

Para ver el funcionamiento confeccionaremos un formulario que solicite el ingreso del nombre de una persona y dos elementos button para subir el dato al servidor o borrar el dato cargado:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/htmlya/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="20">
<br>
<button type="submit">Enviar<img src="/imagenes/enviar.gif" 
alt="envio"></button>
<button type="reset">Borrar<img src="/imagenes/borrar.gif" 
alt="borrado"></button>
</form>
</body>
</html>

Perfectamente podemos definir un texto y cargar una imagen dentro del botón:

<button type="submit">Enviar<img src="/imagenes/enviar.gif" 
alt="envio"></button>

Formulario - input type="file".

El control de tipo file nos permite enviar un archivo al servidor. Nuevamente el HTML solo indica al navegador que debe enviar el archivo al servidor pero debe haber en el servidor un programa que lo almacene en una carpeta del servidor.

Veamos la sintaxis para disponer un control de tipo file:

<input type="file" name="archi"> 

Nuevamente utilizamos el elemento HTML input para definir este tipo de control. En la propiedad type inicializamos con el valor file. Inicializar la propiedad name también es importante ya que mediante este nombre se lo recupera en el servidor.

Otra cosa muy importante a tener en cuenta cuando hacemos upload de archivos al servidor es inicializar la propiedad enctype del elemento form:

<form method="post" action="/registrardatos.php" enctype="multipart/form-data">

Con esto indicamos al navegador que el formulario almacena uno o más archivos que deben ser enviados al servidor.

Confeccionemos una página que solicite el ingreso de un nombre y la foto de la persona:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post" enctype="multipart/form-data">
Ingrese su nombre:
<input type="text" name="nombre" size="30"><br>
Seleccione la foto:
<input type="file" name="foto">
<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Recordemos siempre inicializar la propiedad enctype del elemento form:

<form action="/registrardatos.php" method="post" enctype="multipart/form-data">

Tenga en cuenta que si no se hace nigún programa en el servidor el archivo no se almacena.
-->

Formulario - input type="hidden.

Un campo hidden se lo denomina campo oculto. Este tipo de control no visualiza nada dentro del formulario.

Su utilidad se presenta cuando desde el servidor se genera una página dinámica por ejemplo mediante PHP y se almacena en un campo oculto un valor que se rescatará al subir el formulario al servidor.

Su utilidad real solo podrá ser comprendida cuando estudie un lenguaje de servidor, pero veamos y conozcamos su sintaxis con un ejemplo.

Confeccionar un formulario que solicite ingresar el nombre de una persona y en un campo oculto almacene una hora cualquiera:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
<input type="hidden" value="10:20" name="hora">
Ingrese su nombre:
<input type="text" name="nombre" size="30">
<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Como vemos la sintaxis para definir un campo oculto es:

<input type="hidden" value="10:20" name="hora">

En el atributo value almacenamos el valor (este valor no se puede modificar desde el formulario)

Podemos imaginar una utilidad, supongamos que queremos que un visitante reenvíe un formulario cargado con todos los datos en un tiempo limitado, podríamos almacenar en el campo oculto la primera vez que solicita la página que contiene el formulario donde se resgistrará dicha hora. Luego al subir el formulario ya cargado al servidor controlaremos mediante un lenguaje de servidor si la hora actual y la hora de pedido del formulario no hacen invalidar los datos.

Formulario - agrupamiento de controles.

El HTML dispone de un elemento llamado fieldset que solo tiene el objetivo de recuadrar y agrupar un conjunto de controles de un formulario.

Debemos encerrar todos los controles a agrupar entre las marcas <fieldset> y </fieldset>. Además para agregar un título a este recuadro debemos agregar otro elemento HTML llamado legend.

Confeccionemos un formulario que solicite los datos personales de una persona y los datos del lugar donde trabaja, cada grupo de datos los dispondremos en un fieldset:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
<fieldset>
<legend>Datos personales</legend>
Apellido y nombre:
<input type="text" name="nombre" size="30"><br>
Documento de identidad:
<input type="text" name="dni" size="8"><br>
Fecha de nacimiento:
<input type="text" name="fechanacimiento" size="12"><br>
Dirección:
<input type="text" name="direccionpersona" size="30"><br>
</fieldset>
<fieldset>
<legend>Datos Laborales</legend>
Nombre de la empresa:
<input type="text" name="nombreempresa" size="30"><br>
Actividad:
<input type="text" name="actividad" size="50"><br>
Dirección:
<input type="text" name="direccionempresa" size="30"><br>
</fieldset>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Podemos ver que cada grupo de controles está encerrado con el elemento fieldset:

<fieldset>
<legend>Datos personales</legend>
Apellido y nombre:
<input type="text" name="nombre" size="30"><br>
Documento de identidad:
<input type="text" name="dni" size="8"><br>
Fecha de nacimiento:
<input type="text" name="fechanacimiento" size="12"><br>
Dirección:
<input type="text" name="direccionpersona" size="30"><br>
</fieldset>

Luego el título de cada fieldset lo disponemos con:

<legend>Datos personales</legend>

Búsqueda personalizada

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia HTML: formularios de selección múltiple y agrupamiento de opciones.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Formulario - select (cuadro de selección múltiple).

Una variante del cuadro de selección que vimos en el concepto anterior es permitir que el visitante del sitio pueda seleccionar varias opciones.

Supongamos que tenemos un cuadro de selección con una lista de colores y queremos que el visitante pueda elegir varios y no uno solo.

La página que resuelve este problema es:
<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Seleccione uno o varios colores (Presione Ctrl para seleccionar varios colores)<br>
<select name="colores[]" size="4" multiple>
<option value="1">Rojo</option>
<option value="2">Verde</option>
<option value="3">Azul</option>
<option value="4">Amarillo</option>
<option value="5">Blanco</option>
<option value="6">Negro</option>
<option value="7">Naranja</option>
<option value="8">Violeta</option>
</select>
<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Podemos observar la sintaxis para la definición de un cuadro de selección múltiple:

<select name="colores[]" size="4" multiple>

Definimos una propiedad llamada multiple y no le asignamos valor, por otro lado al nombre definido en la propiedad name le agregamos al final los caracteres [] para que desde el servidor podamos identificar que el control retorna posiblemente muchos valores.

Es también común inicializar la propiedad size con un valor mayor a 1 para que sea más fácil la selección.

La mayoría de los navegadores permiten seleccionar opciones que no se encuentran juntas mediante el mouse y presionando simultáneamente la tecla Ctrl.

Formulario - select (agrupamiento de opciones).

Hemos visto que podemos crear cuadros de selección individual o de selección múltiple. Ahora veamos que podemos agrupar las opciones que tiene el cuadro de selección, esto tiene sentido si el cuadro de selección tiene muchos items.

Se cuenta con un nuevo elemento llamado optgroup que agrupa un conjunto de elementos option.

Veamos un ejemplo de agrupar una serie de opciones, agruparemos una serie de frutas y verduras:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Seleccione una fruta o verdura:
<select name="articulo">
<optgroup label="Frutas">
<option value="1">Naranjas</option>
<option value="2">Manzanas</option>
<option value="3>Sandia</option>
<option value="4">Frutilla</option>
<option value="5">Durazno</option>
<option value="6">Ciruela</option>
</optgroup>
<optgroup label="Verduras">
<option value="7">Lechuga</option>
<option value="8">Acelga</option>
<option value="9">Zapallo</option>
<option value="10">Papas</option>
<option value="11">Batatas</option>
<option value="13">Zanahorias</option>
<option value="14">Rabanitos</option>
<option value="15">Calabaza</option>
</optgroup>
</select>
<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Como podemos observar para agrupar una serie de opciones dentro de un select debemos encerrarlas con el elemento optgroup:

<optgroup label="Frutas"> <option value="1">Naranjas</option> <option value="2">Manzanas</option> <option value="3>Sandia</option> <option value="4">Frutilla</option> <option value="5">Durazno</option> <option value="6">Ciruela</option> </optgroup>

La propiedad label del elemento optgroup aparece dentro del control select pero no se puede seleccionar, es un título.
 
La propiedad label del elemento optgroup es el texto que se debe mostrar dentro del select.

Se puede hacer agrupamiento de opciones y permitir selecciones múltiples.

Formulario – button.

El elemento button es un control visual que se puede utilizar para sustituir los controles:

<input type="submit" value="Enviar">
<input type="reset" value="Borrar">

Entre otras las ventanjas de este elemento es que podemos agregar imágenes dentro del botón.

La sintaxis de este elemento es la siguiente:

<button type="submit">
Texto a mostrar dentro del botón.
</button>

Todo lo que está contenido entre las marcas de comienzo y fin del elemento button aparece dentro del botón, como por ejemplo una imagen, un párrafo, enfatizado de una palabra etc.

La propiedad type se puede inicializar con alguno de estos tres valores: "submit", "reset" y "button". Los dos primeros cumplen las funciones que ya conocemos es decir envío de los datos al servidor y borrado del contenido de los controles. En cuanto al tercer valor posible de la propiedad type significará que deberemos codificar una función en javascript para procesar el evento.

Para ver el funcionamiento confeccionaremos un formulario que solicite el ingreso del nombre de una persona y dos elementos button para subir el dato al servidor o borrar el dato cargado:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/htmlya/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="20">
<br>
<button type="submit">Enviar<img src="/imagenes/enviar.gif" 
alt="envio"></button>
<button type="reset">Borrar<img src="/imagenes/borrar.gif" 
alt="borrado"></button>
</form>
</body>
</html>

Perfectamente podemos definir un texto y cargar una imagen dentro del botón:

<button type="submit">Enviar<img src="/imagenes/enviar.gif" 
alt="envio"></button>
 

Búsqueda personalizada

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia HTML: formularios checkbox, radio y cuadros de selección individual.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Formulario - input type="checkbox"
El elemento checkbox es otro control que se puede insertar en un formulario. Un checkbox es una casilla de selección que puede tomar dos valores (seleccionado/no seleccionado)

Para ver su funcionamiento implementaremos un formulario que solicite el ingreso del nombre de una persona y 4 elementos de tipo checkbox para que seleccione los lenguajes de programación que conoce:
<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="30"><br>
Seleccione los lenguajes que conoce:
<br>
<input type="checkbox" name="java">Java<br>
<input type="checkbox" name="cmasmas">C++<br>
<input type="checkbox" name="c">C<br>
<input type="checkbox" name="csharp">C#<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Veamos la sintaxis para definir controles de formulario de tipo checkbox:

<input type="checkbox" name="java">Java<br>

Como vemos también utilizamos el elemento HTML input, donde inicializamos la propiedad type con el valor checkbox.

Un control checkbox no muestra texto, solo una casilla que el operador puede tildar o destildar.

Si queremos que aparezca un mensaje junto al checkbox solo lo agregamos seguido al elemento input.

Es importante hacer notar que los caracteres permitidos de la propiedad name son los caracteres alfabéticos y los números siempre y cuando no sea el primero.

Formulario - input type="radio"
 
Cuando tenemos un conjunto de opciones pero solo una puede ser seleccionada debemos emplear controles visuales de tipo radio.

Para definir controles de tipo radio también utilizamos el elemento input inicializando la propiedad type con el valor "radio"

Veamos un ejemplo del empleo de este control gráfico, supongamos que necesitamos indicar el tipo de estudios que tenemos utilizando controles de tipo radio:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="30"><br>
Seleccione el máximo nivel de estudios que tiene:
<br>
<input type="radio" name="estudios" value="1">Sin 
estudios<br>
<input type="radio" name="estudios" value="2">Primario<br>
<input type="radio" name="estudios" value="3">Secundario<br>
<input type="radio" name="estudios" value="4">Universitario<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

Veamos como se definen los controles de tipo radio:

<input type="radio" name="estudios" value="1">Sin 
estudios<br>
<input type="radio" name="estudios" value="2">Primario<br>
<input type="radio" name="estudios" value="3">Secundario<br>
<input type="radio" name="estudios" value="4">Universitario<br>

Como podemos observar todos tienen el mismo valor en la propiedad name, con esto se logra que cuando seleccionamos uno se deseleccione el actual.

El valor que se rescata en el servidor es el dato almacenado en la propiedad value.

Si queremos disponer varios grupos de controles de tipo radio debemos definirles a cada grupo la propiedad name nombres distintos.

Formulario - select (cuadro de selección individual).

El elemento select es un cuadro de selección.

Este elemento HTML nos permite seleccionar una opción entre un conjunto. Veremos en el concepto próximo que según como la configuramos podemos seleccionar varias opciones.

Veamos con un ejemplo como crear un control de tipo select. Confeccionemos un formulario que solicite cargar el nombre de una persona y el pais donde vive, este último elemento mediante un control de tipo select permitir seleccionar el pais.

El archivo pagina1.html es:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="30"><br>
Seleccione su pais:
<select name="pais">
<option value="1">Argentina</option>
<option value="2">España</option>
<option value="3">México</option>
<option value="4">Guatemala</option>
<option value="5">Honduras</option>
<option value="7">El Salvador</option>
<option value="8">Venezuela</option>
<option value="9">Colombia</option>
<option value="10">Cuba</option>
<option value="11">Bolivia</option>
<option value="13">Perú</option>
<option value="14">Ecuador</option>
<option value="15">Paraguay</option>
<option value="16">Uruguay</option>
<option value="17">Chile</option>
</select>
<br>
<input type="submit" value="Enviar">
</form>
</body>
</html> 

Veamos la sintaxis para crear un cuadro de selección, primero abrimos la marca select la cual tiene definido la propiedad name:

<select name="pais">

Luego sin cerrar el select definimos tantos elementos de tipo option como opciones tendrá el cuadro de selección:

<option value="1">Argentina</option>
<option value="2">España</option>
<option value="3">México</option>

El elemento option define el texto a mostrar y en la propiedad value indica el valor a enviar al servidor en caso de estar seleccionada dicha opción.

Luego de definir todas las opciones de nuestro cuadro de selección cerramos la marca select:

</select>

Una variante gráfica de este control es inicializar la propiedad size del elemento select con un valor distinto a uno, con esto creamos un cuadro de selección que muestra simultáneamente varios elementos (de todos modos solo uno se puede elegir)

Es decir que con la propiedad size solo logramos un cambio estético del control.

Búsqueda personalizada

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Los 10 artículos más leídos en El Mundo de Ubuntu en el mes de Abril 2013.

1.- DJL es un instalador de juegos que proporciona una interfaz sencilla y muchas utilidades.

djl_depotDJL es es un administrador de juegos escrito en Python, que nos permitirá instalar una gran cantidad de títulos (ver el detalle al final del post) en Linux.
Es un gestor de juegos, que nos sirve tanto para lanzar los juegos que hemos instalado con él, como para instalar juegos desde la red
He mirado los juegos disponibles en el repositorio y no me puedo quejar, están tanto los más famosos como los no tan conocidos.
Para usarlo debemos descargar la última versión, descomprimirla e instalarla.

2.- Guía HTML: anclas llamadas de la misma página o desde otra.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.
Anclas llamadas desde la misma página.
Otra posibilidad que nos brinda el HTML es disponer una referencia dentro de la página para poder posteriormente disponer un hipervínculo a dicha marca.
Es una práctica común cuanda queremos desplazarnos dentro de una página de gran tamaño. Se disponen hipervínculos a diferentes anclas.

3.- Guia HTML: imágenes dentro de una página e hipervínculos.



html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.
Imágenes dentro de una página.
Para insertar una imagen dentro de una página debemos utilizar el elemento HTML <img>, la misma no tiene una marca de finalización (similar a la marca <br>).
Generalmente, la imagen se encuentra en el mismo servidor donde se almacenan nuestras páginas HTML. Los formatos clásicos son los archivos con extensiones gif, jpg y png.

4.- Guia HTML: énfasis e hipervínculos.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.
Enfasis.
Enfatizar algo significa realzar la importancia de una cosa, por ejemplo una palabra o conjunto de palabras.
Así como tenemos seis niveles de títulos para enfatizar un bloque contamos con dos elementos que son (<em> <strong>)
El elemento de mayor fuerza de énfasis es strong y le sigue em
Veamos un ejemplo del empleo de estos dos elementos HTML

5.- Guia HTML: listas ordenadas y no ordenadas.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.
Lista ordenada.
Este elemento HTML es útil cuando debemos numerar una serie de objetos.
Veamos con un ejemplo una lista ordenada para conocer su sintaxis. Mostraremos el orden de llegada de tres corredores:
<html>
<head>
</head>
<body> 

 

6.- La ingeniería social y los [malos] hábitos de los usuarios.

ingenieria socialEl talón de Aquiles de cualquier red lo componen los usuarios que la integran. La mejor tecnología y seguridad del mundo es inservible cuando un usuario es incapaz de mantener en secreto una clave de acceso o información confidencial. Es por tal motivo que tiene particular relevancia el impulsar una cultura de concienciar a los usuarios acerca de los peligros de la Ingeniería Social en la seguridad informática. El más célebre personaje que utilizó ésta tan exitosamente que durante algún tiempo se convirtió en el hombre más buscado por el FBI fue Kevin Mitnick.
Ingeniería Social es la práctica de obtener información confidencial a través de la manipulación de usuarios legítimos. Un ingeniero social usará comúnmente el teléfono o Internet para engañar a la gente y llevarla a revelar información sensible o bien a violar las políticas de seguridad típicas. Con este método, los ingenieros sociales aprovechan la tendencia natural de la gente a confiar en su palabra, antes que aprovechar agujeros de seguridad en los sistemas informáticos. Generalmente se está de acuerdo en que “los usuarios son el eslabón débil” en seguridad; éste es el principio por el que se rige la ingeniería social.
7.- Guia HTML: tablas simples, con encabezado y con combinación de celdas.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.
Tabla.
El objetivo fundamental de las tablas es mostrar una serie de datos en forma ordenada, organizado en filas y columnas.
Algo importante es que no utilizaremos las tablas para organizar la página completa (esto se hace en la actualizad mediante CSS, es decir hojas de estilo. Una vez que avance en este curso puede visitar CSS Ya)

8.- Diseño Gráfico en Linux: completo videotutorial de Gimp (28 vídeos).

GIMP (GNU Image Manipulation Program) es un programa de edición de imágenes digitales en forma de mapa de bits, tanto dibujos como fotografías. Es un programa libre y gratuito. Forma parte del proyecto GNU y está disponible bajo la Licencia pública general de GNU.
Es el programa de manipulación de gráficos disponible en más sistemas operativos (Unix, GNU/Linux, FreeBSD, Solaris, Microsoft Windows y Mac OS X, entre otros).
La interfaz de GIMP está disponible en varios idiomas, entre ellos: español, alemán, inglés, catalán, gallego, euskera, francés, italiano, ruso, sueco, noruego, coreano y neerlandés.

9.- Instalar Angry Birds en Ubuntu 12.04 “Precise Pangolin”.

Angry_Birds_PlushiesAngry Birds  es un videojuego creado en 2009 por la empresa finlandesa Rovio Mobile. Desde entonces, el juego ha sido adaptado a dispositivos de pantalla táctil, como los basados en Maemo, iOS, Symbian, Java y Android.
Con más de un billón de descargas en 2012, esta aplicación quizá sea la más popular del año en la App Store de Apple. Además es también el juego más vendido de la historia en soportes móviles.
Actualmente la compañía trabaja en desarrollar versiones para PC, Xbox360, PS3, HTML5 y otras plataformas. Sin embargo, Angry Birds no es sólo un fenómeno digital: los personajes son tan populares que la empresa está empezando a comercializar juguetes físicos de los pájaros y hacia el futuro pretenden comercializar disfraces, dibujos animados y todo tipo de merchandising.

10.- Guia HTML: listas de definiciones y anidadas.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.
Lista de definiciones.
Como su nombre lo indica se utiliza para asociar un término y la definición del mismo. El navegador se encarga de destacar y separa el término y su definición.
Crearemos una lista con la definición de varios lenguajes de programación.



Búsqueda personalizada


Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

La ingeniería social y los [malos] hábitos de los usuarios.

ingenieria socialEl talón de Aquiles de cualquier red lo componen los usuarios que la integran. La mejor tecnología y seguridad del mundo es inservible cuando un usuario es incapaz de mantener en secreto una clave de acceso o información confidencial. Es por tal motivo que tiene particular relevancia el impulsar una cultura de concienciar a los usuarios acerca de los peligros de la Ingeniería Social en la seguridad informática. El más célebre personaje que utilizó ésta tan exitosamente que durante algún tiempo se convirtió en el hombre más buscado por el FBI fue Kevin Mitnick.
Ingeniería Social es la práctica de obtener información confidencial a través de la manipulación de usuarios legítimos. Un ingeniero social usará comúnmente el teléfono o Internet para engañar a la gente y llevarla a revelar información sensible o bien a violar las políticas de seguridad típicas. Con este método, los ingenieros sociales aprovechan la tendencia natural de la gente a confiar en su palabra, antes que aprovechar agujeros de seguridad en los sistemas informáticos. Generalmente se está de acuerdo en que “los usuarios son el eslabón débil” en seguridad; éste es el principio por el que se rige la ingeniería social.
Wikipedia, la enciclopedia libre.
ingenieriasocial
Clásicos ejemplos de ataques exitosos aprovechando la ingeniería social es el envío de los adjuntos en el correo electrónico (virus, troyanos y gusanos) que pueden ejecutar código malicioso en una estación de trabajo o computadora personal.
Lo anterior fue lo que obligó a los proveedores de equipamiento lógico a desactivar le ejecución automática de los adjuntos al abrir el mensaje de correo electrónico, por lo que es necesario que el usuario active esta funcionalidad de modo explícito a fin de volver a ser vulnerable. Sin embargo, la mayoría de los usuarios simplemente hacen clic con el ratón a cualquier cosa que llegue en el correo electrónico, haciendo que éste método de ingeniería social sea exitoso.
Otro tipo de ataque de ingeniería social, e increíblemente el más fácil de realizar, consiste en engañar a un usuario haciéndole pensar que se trata de un administrador de la red donde se labora solicitando claves de acceso u otro tipo de información confidencial. Buena parte del correo electrónico que llega al buzón del usuario consiste de engaños solicitando claves de acceso, número de tarjeta de crédito y otra información, haciendo pensar que es con una finalidad legítima, como sería el caso de reactivar o crear una cuenta o configuración. Este tipo de ataque se conoce actualmente como phising (pesca).
ataque-de-hackers
Lamentablemente muchos estudios muestran que los usuarios tienen una pobre conciencia acerca de la importancia de la seguridad. Una encuesta de InfoSecurity arrojó como resultados que 90% de los oficinistas revelaría una clave de acceso a cambio de un bolígrafo.
Un tipo de ingeniería social muy efectivo es incluir grandes cantidades de texto a un acuerdo de licenciamiento. La gran mayoría de los usuarios, incluyendo administradores, rara vez leen siquiera una palabra contenida en dicho texto y sencillamente dan clic en la aceptación de licenciamientos y acuerdos. Esto regularmente es aprovechado por Adware (equipamiento lógico que despliega anuncios comerciales) y Spyware (equipamiento lógico que espía la actividad del usuario). En Latino América este problema es aún mayor debido al vergonzoso y pobre índice de lectura (menos de un libro por año).
La principal defensa contra la ingeniería social es la educación del usuario, empezando por los propios administradores de redes. La mejor forma de combatir la ingeniería social es la prevención.
ingenieriaSocial1
Recomendaciones para evitar ser víctimas de la ingeniería social a través del correo electrónico.
  • No utilizar cuentas de correo electrónico para uso personal para asuntos laborales.
  • No utilizar cuentas de correo electrónico destinadas para uso laboral para asuntos personales.
  • Adiestrar a los usuarios para jamas publicar cuentas de correo en áreas públicas que permitan sean cosechadas por software para este fin.
  • Adiestrar al usuario para no publicar cuentas de correo electrónico en lugares públicos.
  • Adiestrar al usuario para evitar proporcionar cuentas de correo electrónico y otros datos personales a personas u entidades que puedan utilizar estos con otros fines.
  • Evitar publicar direcciones de correo electrónico en formularios destinados a recabar datos de los clientes utilizando formularios que oculten la dirección de correo electrónico.
  • Si es inevitable, utilizar una cuenta destinada y dedicada para ser mostrada a través de HTTP.
  • Adiestrar al usuario a utilizar claves de acceso más complejas.
  • Adiestrar al usuario a no abrir y dar clic a todo lo que llegue por correo.
  • Adiestrar al usuario para jamás responder a un mensaje de spam.
  • Adiestrar al usuario a no hacer clic en los enlaces en los mensajes de spam y que pueden ser utilizados para confirmar al spammer que se trata de una cuenta de correo activa.
ingenieriaSocial2
Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia HTML: sintaxis para caracteres especiales y formularios de texto.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Sintaxis para caracteres especiales.
.
Posiblemente hasta ahora no se a preguntado como disponer dentro de una página los caracteres: < y >. Veremos que no los podemos disponer directamente ya que el navegador los confudiría con los caracteres que se utilizan para las marcas HTML.
La solución es utilizar otra sintaxis para dichos caracteres, veamos los más utilizados:
<    &lt;
>    &gt;
&    &amp;
"    &quot;   &nbsp;     //Espacio en blanco.
©    &copy;
€    &euro;

Es decir la sintaxis es disponer un ampersand seguido de un nombre significativo (por lo menos para los que entienden ingles) y finalmente un punto y coma.

Para ver su funcionamiento mostraremos la siguiente ecuación:

10+x*y < 12*z 

pagina1.html

<html>
<head>
<title>Título de la primer página</title>
</head>
<body>
<h1>
10+x*y &lt; 12*z
</h1> 
</body>
</html>

Formulario - <form>.

n formulario permite que el visitante al sitio cargue datos y sean enviados al servidor.

Es el medio ideal para registrar comentarios del visitante sobre el sitio, solicitar productos, sacar turnos etc.

De todos modos veremos que el lenguaje HTML solo tiene el objetivo de crear el formulario. El HTML no tiene la responsabilidad de registrar los datos en el servidor, esta actividad está delegada a un lenguaje que se ejecute en el servidor (PHP, ASP, ASP.Net, JSP etc.)

Como este curso nos concentramos solamente en el lenguaje HTML no veremos como registrar los datos en el servidor. Si está impaciente puede visitar y ver como capturar los datos en el servidor mediante PHP en PHP Ya

Si recien comienza en el mundo del desarrollo de páginas web es recomendable primero aprender y conocer todos los elementos para la creación de formularios en HTML y en un paso posterior estudiar la registración en el servidor

Veamos la sintaxis básica para crear un formulario donde ingresemos nuestro nombre.

Para crear un formulario debemos utilizar el elemento form, que tiene marca de comienzo y fin. Dentro de la marca form veremos otros elementos para crear botones, editores de línea, cuadros de chequeo, radios de selección etc.

Confeccionaremos un formulario para el ingreso de nuestro nombre y un botón para el envío del dato ingresado al servidor:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="20">
<br>
<input type="submit" value="enviar">
</form>
</body>
</html>

Veamos detenidamente la estructura de un formulario elemental, lo primero la apertura de la marca form donde debemos definir dos propiedades (action y method):

<form action="/registrardatos.php" method="post">

La propiedad action se inicializa con el nombre de la página que procesará los datos en el servidor. Como no conocemos la sintaxis de un lenguaje de servidor almacené en la raiz de este sitio una página codificada en PHP que recibe los datos del formulario y los imprime en una nueva página (recordar que en este curso no se ve como programar en el servidor)

Todo los formularios que implemento y los que usted implementará como ejercicios deben llamar a esta página: "/registrardatos.php" más adelante cuando conozca un lenguaje de servidor podrá almacenarlos en una base de datos, consultar otros datos, modificar datos existentes etc.

La segunda propiedad que debemos inicializar es method. Esta propiedad puede almacenar únicamente dos valores (post o get)

Normalmente un formulario se envía mediante post (los datos se envían con el cuerpo del formulario) En caso de utilizar get los datos se envían en la cabecera de la petición de la página, utilizando el método get estamos limitados en la cantidad de datos a enviar, no asi con el método post.

Ahora veamos el cuadro de texto donde se ingresa el nombre:

Ingrese su nombre:
<input type="text" name="nombre" size="20">
<br>

El mensaje "Ingrese su nombre:" es un texto fijo.

El elemento input permite definir un cuadro de texto (editor de línea) si asignamos a la propiedad type el valor "text".

Todo cuadro de texto debe inicializar la propiedad name con un nombre para el cuadro de texto. Este es un dato fundamental para poder recuperar el dato ingresado en el servidor (por ejemplo mediante PHP)

Por último inicializamos la propiedad size con el valor 20, esto significa que el cuadro de texto se dimensiona para permitir mostrar 20 caracteres (no se limita la cantidad de caracteres a ingresar por parte del visitante sino la cantidad de caracteres que se pueden visualizar)

Seguidamente:

<input type="submit" value="enviar">

También mediante el elemento input definimos un botón para el envío de datos al servidor. Debemos inicializar la propiedad type con el valor submit, con esto ya tenemos un botón para el envío de datos.

La propiedad value almacena la etiqueta que debe mostrar el botón.

Finalmente cerramos el formulario:

</form>

Formulario - input type="text"/ input type="password"

En el concepto anterior vimos como implementar un formulario básico.

Veamos ahora con más detenimiento el elemento input. Este elemento hemos visto que nos permite definir cuadros de texto y botón para subir los datos al servidor. Ahora veremos que también podemos definir cuadros para el ingreso de una clave y botones para borrar el contenido de todos los controles del formulario.

Confeccionaremos un formulario que solicite el ingreso del nombre de un usuario y su clave:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Ingrese su nombre: 
<input type="text" name="nombre" size="20">
<br>
Ingrese su clave: 
<input type="password" name="clave" size="12">
<br>
<input type="submit" value="enviar">
<input type="reset" value="borrar">
</form>
</body>
</html>

Veamos la sintaxis nueva para definir un cuadro de texto para el ingreso de una clave:

<input type="password" name="clave" size="12">

Utilizamos el mismo elemento input pero inicializamos la propiedad type con el valor "password", con esto logramos que cuando el visitante ingrese la clave se visualicen asteriscos en lugar de los caracteres que tipeamos.

Luego para definir un botón que permita borrar todos los datos ingresados hasta el momento lo hacemos mediante:

<input type="reset" value="borrar">

Es decir inicializamos la propiedad type con el valor "reset", con esto sabe el navegador que cuando dicho botón sea presionado debe borrar todos los controles de ingreso de datos de dicho formulario.

Otra cosa que hay que tener en cuenta que la propiedad name de cada elemento input debe tener un nombre distinto (esto debido a que en el servidor se lo rescata a partir de este nombre)

Formulario – textarea.
 
El elemento de tipo textarea nos permite el ingreso de varias líneas a diferencia del cuadro de texto (input/text)

Es muy utilizado cuando queremos ingresar un comentario de una longitud de caracteres grande.

Confeccionemos un formulario para que un visitante pueda ingresar su nombre, su mail y un comentario del sitio, empleando para este último dato a ingresar un elemento de tipo textarea:

<html>
<head>
<title>Prueba de formulario</title>
</head>
<body>
<form action="/registrardatos.php" method="post">
Ingrese su nombre:
<input type="text" name="nombre" size="30"><br>
Ingrese su mail:
<input type="text" name="mail" size="50"><br>
Comentarios:<br>
<textarea name="comentarios" rows="5" cols="60"></textarea> 
<br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

La sintaxis para definir un área de texto para el ingreso de múltiples líneas es:

<textarea name="comentarios" rows="5" cols="60"></textarea> 

Es un elemento que requiere una marca de comienzo y una de finalización.

Además de tener la propiedad name similar a los otros elementos relacionados a formularios tiene dos propiedades llamadas rows y cols. Estas dos propiedades indican la cantidad de filas y columnas que visualiza el área de texto.
Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia HTML: contenidos y comentarios.

html-questionsEn una reciente limpieza a mi disco duro he encontrado esta guia que tenia guardada por ahi y creo que esta muy buena para empezar y conocer las nociones basicas del HTML.

Contenido de la cabecera de la página (<title>).
.
Hasta ahora habíamos dispuesto la cabecera vacía, ya que casi toda la información que disponemos en ella no se visualiza en el navegador. La única excepcion corresponde al elemento title.
El elemento title nos permite definir el título que aparecerá en la barra del navegador (es decir en la parte más alta de la ventana)
Siempre debemos buscar un título lo más significativo en cuanto a lo que muestra la página.
Veamos una simple página que muestre un mensaje y contenga un hipervínculo a una segunda página que muestre otro título:
pagina1.html
<html>
<head>
<title>Título de la primer página</title>
</head>
<body>
<h1>Prueba del elemento title</h1>
<a href="pagina2.html">Ir a la segunda página</a>
</body>
</html>

pagina2.html

<html>
<head>
<title>Título de la segunda página</title>
</head>
<body>
<h1>Prueba del elemento title (segunda página)</h1>
<a href="pagina1.html">Ir a la primer página</a>
</body>
</html>

Contenido de la cabecera de la página (<meta>)

Un elemento que no se visualiza es el meta, que tiene por objetivo especificar información sobre el propio documento.

Veamos las dos propiedades fundamentales de la marca meta y los valores más comunes con lo que podemos inicializarlos:

<meta name="nombre de la propiedad" content="valor de la propiedad">

Name almacena el nombre de la propiedad y content el valor de la propiedad.

No existe ninguna especificación de la W3C que defina los valores posibles para el atributo name, si bien existen algunos que son estandares de facto (description, keywords, author etc.)

Veamos las propiedades y valores más comunes

<meta name="keywords" content="html, programación, webmaster">

Los buscadores tienen en cuenta los metadatos. Si en la página inicializamos la propiedad name del elemento meta con el valor keywords luego buscará en la propiedad content las distintas palabras claves más representativas para dicha página. Esto es muy útil para posicionar nuestra página según el contenido que provee.

Veamos otras inicializaciones del elemento meta:

<meta name="description" content="El objetivo de este tutorial 
es presentar los conceptos básicos de HTML. Es objetivo prioritario respetar 
los estándares del W3C">

En este caso especificamos una descripción de la página, pudiendo ser del sitio si se trata de la página principal.

<meta name="author" content="Diego Rodriguez">

<meta name="copyright" content="Interpolacion inc.">

Comentarios dentro de una página.
 
Un comentario es un texto que solo le interesa a la persona que desarrolló la página, el navegador ignora todo el contenido que se encuentra dentro de esta marca.

Los comentarios son muy útiles para el desarrollador de la página. Uno deja anotaciones para facilitar el mantenimiento del sitio.

Además hay que tener en cuenta que puede ser otra persona la que desarrolle en otro momento el mantenimiento de las páginas que desarrollamos nosotros. Lo que para uno puede ser muy obvio a otro desarrollador puede no ser tan obvio.

Otro uso muy habitual cuando estamos desarrollando la página si queremos deshabilitar una parte del código podemos encerrarla entre los caracteres de comentarios.

La sintaxis para definir un comentario es:

<!-- Aquí va el comentario -->

Es obligatorio luego del caracter de menor < disponer el signo de admiración y los dos guiones seguidos. Cerramos el comentario con dos guiones y el signo de mayor >

Confeccionaremos un página donde emplearemos comentarios:

<html>
<head>
</head>
<body>
<!-- Corresponden a datos del año 2006. Modificar a principios de 2007-->
<table border="1">
<tr>
<th rowspan="4">Recursos</th><th colspan="4">Facturación 
de los últimos tres meses</th>
</tr>
<tr>
<td>Discos Duros</td><td>23000</td><td>27200</td><td>26000</td>
</tr>
<tr>
<td>CPU</td><td>73000</td><td>67300</td><td>51000</td>
</tr>
<tr>
<td>Monitores</td><td>53000</td><td>72000</td><td>88000</td>
</tr>
</table>
</body>
</html>

Un comentario puede abarcar varias líneas:

<!--
  comentarios - comentarios - comentarios 
  comentarios - comentarios - comentarios 
  comentarios - comentarios - comentarios 
  comentarios - comentarios - comentarios 
  comentarios - comentarios - comentarios 
  comentarios - comentarios - comentarios 
  comentarios - comentarios - comentarios 
  comentarios - comentarios - comentarios 
-->

De todos modos hay que tener en cuenta que cuando un navegador pide la página a un sitio el servidor envía el archivo HTML completo, es decir con los comentarios. Los comentarios consumen ancho de banda del servidor.
Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog: