aucune idée de ce qui va pas (probablement la requête SQL )

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : aucune idée de ce qui va pas (probablement la requête SQL )

Re: aucune idée de ce qui va pas (probablement la requête SQL )

par Spols » 15 avr. 2022, 15:07

Il semble que ta table soit mal construite.
le champs username est un integer plutot qu'un varchar. vérifie de ce coté là

Re: aucune idée de ce qui va pas (probablement la requête SQL )

par yoschigamer » 15 avr. 2022, 12:41

j'ai l'erreur suivante:
Warning: PDOStatement::execute(): SQLSTATE[HY000]: General error: 1366 Incorrect integer value: 'usernametest' for column 'Username' at row 1 

Re: aucune idée de ce qui va pas (probablement la requête SQL )

par @rthur » 15 avr. 2022, 09:23

Active la gestion des erreurs PDO en mode WARNING :
https://www.php.net/manual/fr/pdo.error-handling.php

Re: aucune idée de ce qui va pas (probablement la requête SQL )

par yoschigamer » 14 avr. 2022, 23:42

j'ai rien de plus

Re: aucune idée de ce qui va pas (probablement la requête SQL )

par or 1 » 14 avr. 2022, 21:30

mais ça fait juste rien pas d'érreur rien du coup je peux pas strop en dire plus
tutoriels/page-blanche-script-php-comme ... 73178.html

aucune idée de ce qui va pas (probablement la requête SQL )

par yoschigamer » 14 avr. 2022, 21:23

<?php

require('actions/DataBase.php');


iif (!empty($_POST["Username"]) && !empty($_POST["Password"]) && !empty($_POST["Mails"])) {

    $username = htmlspecialchars($_POST['Username']); // On récupère le nom d'utilisateur
    $password = password_hash($_POST['Password'], PASSWORD_DEFAULT); // On récupère le mot de passe
    $email = htmlspecialchars($_POST['Mails']); // On récupère l'email

    $checkIfUserExist = $bdd->prepare("SELECT Username FROM users WHERE Username = ?"); // On vérifie si le nom d'utilisateur existe déjà
    $checkIfMailExist = $bdd->prepare("SELECT Mails FROM users WHERE Mails = ?"); // On vérifie si l'email existe déjà
    $checkIfUserExist->execute(array($username)); // On execute la requête

    if ($checkIfUserExist->rowCount() == 0 && $checkIfMailExist->rowCount() == 0) { // Si le nom d'utilisateur et l'email n'existent pas déjà
        $insertUser = $bdd->prepare("INSERT INTO users(Username, Password, Mails) VALUES(?, ?, ?)"); // On insère le nom d'utilisateur, le mot de passe et l'email dans la base de données
        $insertUser->execute(array($username, $password, $email)); // On execute la requête
        echo "Votre compte a bien été créé"; // On affiche un message de succès
    } else { // Si le nom d'utilisateur ou l'email existe déjà
        echo ('<script>alert("Ce nom d\'utilisateur ou cet email est déjà utilisé")</script>'); // On affiche un message d'erreur
    }
} else { // Si le formulaire n'est pas rempli
    echo ('<script>alert("Veuillez remplir tous les champs")</script>');
}
bonjours, je sais ce qui se passe mais ça fait juste rien pas d'érreur rien du coup je peux pas strop en dire plus