Si ha estado siguiendo las secciones anteriores, entonces su basicForm.php ahora tiene un MÉTODO y una ACCIÓN. Los usaremos para procesar el texto que un usuario ingresó en un cuadro de texto. El atributo METHOD te dice cómo se están enviando datos del formulario y el atributo ACTION le dice dónde se está enviando.
Para obtener el texto que un usuario ingresó en un cuadro de texto, el cuadro de texto necesita un atributo NAME. Luego le dice a PHP el NOMBRE del cuadro de texto con el que desea trabajar. Nuestro cuadro de texto aún no tiene un NOMBRE, así que cambie su HTML a esto:
El NOMBRE de nuestro cuadro de texto es nombre de usuario. Es este nombre el que usaremos en un script PHP.
Para devolver datos de un elemento de formulario HTML, usa la siguiente sintaxis extraña:
$ _POST['formElement_name'];
Puede asignar esto a una variable:
$ Your_Variable = $ _POST['formElement_name'];
Antes de explicar toda la sintaxis, agregue el siguiente script PHP al código HTML que tiene hasta ahora. Asegúrese de agregarlo en la sección HEAD de su HTML (la parte para agregar está en negrita):
PHP
$ nombre de usuario = $ _POST['username'];
imprimir ($ nombre de usuario);
?>
Guarde su trabajo nuevamente y haga clic en el botón enviar para ejecutar su secuencia de comandos. (No se preocupe si ve un mensaje de error sobre "Índice no definido". Haga clic en el botón de todos modos). Debería ver que esto aparece encima de su cuadro de texto:
Elimine el texto "nombre de usuario" del cuadro de texto y vuelva a hacer clic en el botón. Su nuevo texto debería aparecer encima del cuadro de texto. El cuadro de texto en sí, sin embargo, todavía tendrá "nombre de usuario" en él. Esto se debe a que el cuadro de texto se restablece cuando los datos se devuelven al navegador. El atributo Valor del cuadro de texto es lo que se muestra.
¿Entonces, cómo funciona?
La $ _POST[ ] es una función incorporada que puede utilizar para obtener datos POST de un formulario. Si tenías METHOD = "GET" en tu formulario, entonces habrías usado esto en su lugar:
$ nombre de usuario = $ _GET['username'];
Entonces comienzas con un signo de dólar (PS) y un carácter de subrayado (
_ ). Luego viene el MÉTODO que desea usar, POST o GET. A continuación, debe escribir un par de corchetes. Entre corchetes, escribe el NOMBRE de su elemento de formulario HTML. nombre de usuario, en nuestro caso.
$ _POST['username'];
Por supuesto, necesita el punto y coma para completar la línea.
Cualquiera que sea el VALOR para su elemento HTML es lo que se devuelve. Luego puede asignar esto a una variable:
$ nombre de usuario = $ _POST['username'];
Entonces PHP buscará un elemento de formulario HTML con el NOMBRE nombre de usuario. Luego mira el atributo VALUE para este elemento de formulario. Devuelve este valor para que lo use y lo manipule.
Por el momento, todo lo que estamos haciendo es devolver lo que ingresó el usuario e imprimirlo en la página. Pero podemos usar un poco de lógica condicional para probar qué hay dentro de la variable. Como ejemplo, cambie su PHP a esto:
$ nombre de usuario = $ _POST['username'];
if ($ username == "letmein") {
print ("¡Bienvenido de nuevo, amigo!");
}
demás {
print ("No eres miembro de este sitio");
}
Ahora estamos verificando si el usuario ingresó el texto "déjame". Si es así, el nombre de usuario es correcto; si no es así, imprima otro mensaje.
Pruébelo y vea qué sucede. Cuando carga la página por primera vez, incluso antes de hacer clic en el botón, es posible que vea el texto "No es miembro de este sitio" encima del cuadro de texto. Esto se debe a que no hemos verificado si se hizo clic en el botón Enviar del formulario.
En la siguiente parte, veremos cómo verificar si se hizo clic en el botón Enviar.