Comment faire un formulaire en PHP/MySQL?
Salut les lecteurs pour ce nouveau tutoriel nous allons créer une formulaire de contact fonctionnel avec PHP et MySQL.
Définition
Un formulaire HTML est un composant essentiel lors du développement Web. Il nous permet de recueillir des données auprès de différents utilisateurs. Dans ce tutoriel nous allons créer un formulaire HTML simple qui collectera les données de l’utilisateur, telles que le nom d’utilisateur et l’adresse e-mail. En utilisant PHP, nous enregistrerons les données collectées dans notre table de base de données MySql. Il s’agit d’un scénario courant dans le développement Web, dans lequel nous avons souvent besoin de stocker diverses informations à propos de l’utilisateurs.
Étape 1: Créer un formulaire HTML
<html>
<head>
<title>Formulaire en PHP/MySQL</title>
</head>
<body>
<form method="post" action="controller.php">
Name : <input type="text" name="name" placeholder="Entrez votre nom" /><br />
Email : <input type="email" name="email" placeholder="Entrer votre Email" /><br />
<input type="submit" value="Submit" />
</form>
</body>
</html>
Comme vous pouvez le voir en HTML ci-dessus, on a la balise <form> </ form>, qui contient deux inputs, telles que le nom d’utilisateur et l’e-mail, et vous pouvez toujours ajouter d’autres input si vous souhaitez collecter davantage de données auprès de l’utilisateur. Ces inputs peuvent avoir différents attributs, tels que le nom de l’input, son type, sa longueur maximale, etc. Même si nous n’avons besoin que de l’attributs « name » et « type », nous pouvons toujours jouer avec d’autres attributs selon les besoins de notre projet.
Étape 2: page de traitement PHP
Notre formulaire HTML est prêt à recevoir les entrées des utilisateurs. Nous devons maintenant créer une page PHP pour collecter des données à partir de ce formulaire. PHP est un langage de programmation web côté serveur, il effectue toutes les tâches sur le serveur et les utilisateurs finaux ne voient rien sauf s’il y a des erreurs ou des résultats. Remarquez-vous l’attribut « action » dans la balise de formulaire HTML ci-dessus? Cela pointe sur « controller.php » et signifie que toutes les valeurs des champs d’entrée seront envoyées à « controller.php ». Tout ce dont nous avons besoin maintenant, c’est de créer « controller.php ». Pour simplement récupérer les valeurs capturées via le formulaire HTML, nous pouvons écrire quelque chose comme ceci:
<?php
// Vérifie qu'il provient d'un formulaire
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = $_POST["name"];
$email = $_POST["email"];
if (!isset($name)){
die("S'il vous plaît entrez votre nom");
}
if (!isset($email) || !filter_var($email, FILTER_VALIDATE_EMAIL)){
die("S'il vous plaît entrez votre adresse e-mail");
}
print "Salut " . $name . "!, votre adresse e-mail est ". $email;
}
?>
Nous avons utilisé filter_vars pour valider l’adresse e-mail de l’utilisateur, donc n’oubliez jamais de vérifier les données non valides à chaque fois que vous en aurez besoin.
Étape 3: Stockage des données dans MySql
En utilisant l’interface PhpMyAdmin, vous pouvez facilement créer une nouvelle table pour stocker les informations de l’utilisateur. Vous pouvez aussi copier/coller le code ci-dessous, il va créer une nouvelle table appelée « users » pour vous dans MySql
CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL,
`name` varchar(120) NOT NULL,
`email` varchar(120) NOT NULL,
)AUTO_INCREMENT=1 ;
ALTER TABLE `users` ADD PRIMARY KEY (`id`);
ALTER TABLE `users`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
Une fois que nous avons la table de base de données, nous pouvons continuer à travailler sur « controller.php ». Comme vous pouvez le voir dans l’exemple ci-dessous, nous avons ajouté quelques codes PHP supplémentaires. En plus du code, nous avons ajouté les informations de connexion MySql qui seront utilisées pour se connecter à la base de données MySql. Une fois la connexion ouverte, en utilisant la requête MySql INSERT, nous stockons les entrées de l’utilisateur dans la table de la base de données.
<?php
// Vérifie qu'il provient d'un formulaire
if ($_SERVER["REQUEST_METHOD"] == "POST") {
//identifiants mysql
$host = "localhost";
$username = "root";
$password = "";
$database = "users";
$name = $_POST["name"];
$email = $_POST["email"];
if (!isset($name)){
die("S'il vous plaît entrez votre nom");
}
if (!isset($email) || !filter_var($email, FILTER_VALIDATE_EMAIL)){
die("S'il vous plaît entrez votre adresse e-mail");
}
//Ouvrir une nouvelle connexion au serveur MySQL
$mysqli = new mysqli($host, $username, $password, $database);
//Afficher toute erreur de connexion
if ($mysqli->connect_error) {
die('Error : ('. $mysqli->connect_errno .') '. $mysqli->connect_error);
}
//préparer la requête d'insertion SQL
$statement = $mysqli->prepare("INSERT INTO users (name, email) VALUES(?, ?)");
//Associer les valeurs et exécuter la requête d'insertion
$statement->bind_param('ss', $name, $email);
if($statement->execute()){
print "Salut " . $name . "!, votre adresse e-mail est ". $email;
}else{
print $mysqli->error;
}
}
?>
La page controller.php est maintenant prêt à collecter des données à partir du formulaire HTML.
Nous soutenir
Merci d'avoir lu jusqu'au bout si ce poste vous a aider à créer une formulaire fonctionnel veuillez nous soutenir en cliquant sur cette publicité en bas
3 commentaires