Problème de stockage des données

Petit nouveau ! | 1 Messages

09 janv. 2022, 21:11

Bonsoir je cherche à créer un compte utilisateur mais j'arrive si vous pouvez me donner un coup de main s'il vous plait, le problème et j'arrive pas à créer un compte et le code ne retourner pas une erreur juste le message votre compte n'a pas puis être créer.

Voila ma méthode , ma table SQL et mon formulaire d'inscription

Code : Tout sélectionner

public function addToDBase(Utilisateur $a) { $req = 'INSERT INTO UTILISATEUR (uti_nom, uti_prenom, uti_status, uti_email, uti_mot_passe, uti_ville, uti_codePostal, uti_civilite) VALUES (?,?,?,?,?,?,?,?)'; $stmt = $this->pdo->prepare($req)->execute([$a->getNom(),$a->getPrenom(), $a->getStatus(), $a->getEmail(),$a->getMotDePasse(),$a->getVille(),$a->getCodePostal(),$a->getCivilite()]); return $stmt; var_dump($_stmt); }

Code : Tout sélectionner

public function makeLoginFormPage() { $this->title = "Connexion-Insciprtion"; $this->content = '<div id="form"><form action="'.$this->router->getVerifyConnexionURL().'" method="POST"> <fieldset><legend>Se connecter</legend> <label for="id">Adresse e-mail </label> <input type="text" id="id" name="uti_email" required> <br> <label for="mdp">Mot de passe </label> <input type="password" id="mdp" name="uti_mot_passe" required><br> <br> <button type="submit" name="connect">Valider</button> </fieldset> </form> <form action="'.$this->router->getInscriptionURL().'" method="POST"> <fieldset> <legend>S\'inscrire</legend><br> <label>Civilité</label> <select name="uti_civilite" required> <option value="Madame" selected> Madame</option> <option value="Monsieur"> Monsieur</option> </select><br> <label for="nom">Nom </label> <input type="text" id="uti_nom" name="uti_nom" required><br> <label for="prenom">Prénom </label> <input type="text" id="uti_prenom" name="uti_prenom" required> <br> <label for="ville">Ville utilisateur</label> <input type="text" id="uti_ville" name="uti_ville" required><br> <label for="codepostal">Code Postal</label> <input type="number" id="uti_codePostal" name="uti_codePostal" required><br> <label for="mail">Adresse e-mail</label> <input type="email" id="uti_email" name="uti_email" required><br> <label for="mdp">Mot de passe</label> <input type="password" id="mdp" name="motDePasse1" required><br> <label for="mdp">Confirmation du mot de passe</label> <input type="password" id="mdp" name="motDePasse2" required><br> <br> <button type="submit" name="createUtilisateur">Créer un compte</button> </fieldset> </form> </div>'; }

Code : Tout sélectionner

DROP TABLE IF EXISTS `UTILISATEUR`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `UTILISATEUR` ( `uti_id` int(17) NOT NULL AUTO_INCREMENT, `uti_nom` varchar(25) DEFAULT NULL, `uti_prenom` varchar(25) DEFAULT NULL, `uti_email` varchar(255) DEFAULT NULL, `uti_mot_passe` varchar(80) DEFAULT NULL, `uti_ville` varchar(40) DEFAULT NULL, `uti_codePostal` int(33) DEFAULT NULL, `uti_civilite` varchar(33) PRIMARY KEY (`uti_id`), UNIQUE KEY `UC_EMAIL` (`uti_email`) ) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4;

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9163 Messages

10 janv. 2022, 12:02

Dans ton code, rien ne permet d'afficher le message d'erreur que tu cites "votre compte n'a pas pu être créé"
Donc pars de ce message déjà et regarde quelles sont les conditions qui déclenchent l'affichage pour faire ton débugage.

Par ailleurs, vérifie que tu as bien activé la gestion d'erreur de PDO en Warning :
https://www.php.net/manual/fr/pdo.error-handling.php
Quand tout le reste a échoué, lisez le mode d'emploi...