Bonjour,
Voila je rencontre un petit problème avec mon code. Il m'affiche fatal error pour execute lorsque je voulais insérer dans la base de donnée.
if (!empty($_POST))
{
$errors = array();
if (empty($_POST['username']) || !preg_match('/^[a-zA-Z0-9_ -]+$/', $_POST['username']))
{
$errors['username'] = "Votre Pseudo n'est pas valide!";
}
if (empty($_POST['email']) || !filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
{
$errors['email']= "Votre email n'est pas valide!";
}
if (empty($_POST['password']) || $_POST['password'] != $_POST['password-confirm'])
{
$errors['email']= "Vous devez entrer un mot de passe valide!";
}
if (empty($errors))
{
require_once 'inc/db.php';
$req = $pdo->prepare("INSERT INTO users SET username = ?, password = ?, email = ?");
$password = password_hash($_POST['password'], PASSWORD_BCRYPT);
$req->execute([$_POST['username'], $password, $_POST['email']]);
die('Compte crée avec succée!');
}
debug($errors);
}
Je voulais faire une insertion dans la base de donnée
Fatal error: in C:\wamp64\www\v1base\register.php on line 29
( ! ) PDOException: in C:\wamp64\www\v1base\register.php on line 29
Call Stack
1 0.0010 249400 {main}( ) ...\register.php:0
2 0.0849 262256 execute ( ) ...\register.php:
Ta requête est étrange ... Pour un insert on utilise generalement :
INSERT INTO table (field,field,field) VALUES ($val,$val)
Normalement on fait ce genre de chose ;)
$req = $PDO->prepare("INSERT INTO users (username, password, email) VALUES (:username, :password, :email)");
$req->execute(array(
"username" => $login,
"password" => $password,
"email" => $email
));