Bonjour,

Voila je rencontre un petit problème avec mon code

Ce que je fais

J'ai télécharger les fichiers via un compte premium je le décompresse et je commence à le tester !
je suis connecter j'ai importer le fichier SQL dans ma base de données.
je me rend sur le fichier register.php.
Je remplis le Pseudo, email, Mdp toussa toussa ...

Ce que je veux

Je cherche donc à comprendre et à faire en sorte qu'il marche ça va de soit !
pour les infos au niveau de ma config :

  • Apache 2.4.18
    -PHP 5.6.17
    -MySQL 5.7.10

    Ce que j'obtiens

donc voila l'erreur que j'obtiens :

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1364 Field 'remember_token' doesn't have a default value' in C:\Program Files (x86)\EasyPHP-Devserver-16.1\eds-www\Nouveau\register.php:40 Stack trace: #0 C:\Program Files (x86)\EasyPHP-Devserver-16.1\eds-www\Nouveau\register.php(40): PDOStatement->execute(Array) #1 {main} thrown in C:\Program Files (x86)\EasyPHP-Devserver-16.1\eds-www\Nouveau\register.php on line 40 "


$req = $pdo->prepare('INSERT INTO users SET username = ?, password = ?, email = ?, confirmation_token = ?');
    $password = password_hash($_POST['password'], PASSWORD_BCRYPT);
    $token = str_random(60);
    $req->execute([$_POST['username'], $password, $_POST['email'], $token]);
    $user_id = $pdo->lastInsertId();
    mail($_POST['email'], 'Confirmation de votre compte', "Afin de valider votre compte merci de cliquer sur ce lien\n\nhttp://local.dev/Lab/Comptes/confirm.php?id=$user_id&token=$token");

3 réponses


Bruno974
Auteur
Réponse acceptée

Bon voila j'ai trouver la solution je la poste au cas ou quelqu'un aurait le même problème.
je l'ai trouvé sur un site tout en anglais, n'étant pas billingue je ne rentrerai pas dans les détails, en gros MySQL s'éxécute en mode strict donc il suffit de taper, pour changer cela, dans SQL la commande: SET GLOBAL sql_mode=''
Merci et j'espere que ça profitera à quelqu'un :) .

Merci beaucoup ça m'a été très util

Merci, ça m'a servit. Je ne sais pas pourquoi, d'habitude je n'ai jamais ce problème, d'autant plus que j'ai déjà pas mal bossé sur cette bdd