¿Cómo se integra PHP con el front-end de un sitio web?

Un formulario HTML que envía datos generalmente inicia una solicitud POST al servidor, si establece el atributo de acción en: action=”/myscript.php” method=”POST” este formulario iniciará una solicitud al servidor y a su script PHP .

Tienes razón, primero querrás guardar los datos en la base de datos, pero luego puedes decirle al script que devuelva una respuesta a la solicitud POST del usuario. Como ya tiene sus datos, es fácil de mostrar. Me imagino que un script simple se vería así:

<? php

// …

$ db = nueva base de datos ($ dbAdapter);
$ post = filter_input_array (INPUT_POST, FILTER_SANITIZE_STRING);

// …

$ db-> saveUser ($ post);

función ejecutar ($ buffer)
{
// plantilla simple
return (str_replace (“{nombre de usuario}”, $ post [‘nombre de usuario’], $ buffer));
}

ob_start (“ejecutar”);
?>

¡Gracias por registrar {nombre de usuario}!

<? php
ob_end_flush ();
?>

En ese caso, enviaría a sus usuarios a una URL que sea un script PHP en lugar de un script HTML. PHP se ejecuta en su servidor y luego envía la salida al navegador del visitante. Puede usar variables dentro de su script PHP para crear contenido dinámico (como su nombre de usuario de una base de datos).

Entonces, por ejemplo, si fuiste a mysite. com / user.php …

$ nombre = “Sterling”;

echo “Hola, $ nombre”;

?>

También puede usar JavaScript en el front-end para solicitar contenido de un script PHP y luego inyectarlo en la página actual.

Entonces tienes un formulario en una página como



Luego tiene el controlador de formulario (en este caso, sentado en su raíz web) handle_form.php que contiene

$ username = $ _POST [‘users_name’];
/ * Haz tus cosas de DB aquí,
* algo así como almacenar $ username en la tabla de usuarios …
* /
echo “

Hola”. htmlspecialchars ($ nombre de usuario). “

“;
echo “

Felicitaciones por enviar mi formulario. You Rock!

“;

Debería hacer el trabajo …

Nota: estoy usando htmlspecialchars para desinfectar la entrada del usuario antes de mostrarla, también debe desinfectar el código de la base de datos, pero eso está fuera del alcance de esta respuesta.