[PHP] [WEB] Problème base de données
Résolu/Fermé
Anonymous
-
Modifié par NHenry le 20/06/2015 à 20:04
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 21 juin 2015 à 14:48
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 21 juin 2015 à 14:48
A voir également:
- [PHP] [WEB] Problème base de données
- Formules excel de base - Guide
- Traduire une page web - Guide
- Instagram web - Guide
- Supprimer une base de données phpmyadmin ✓ - Forum Logiciels
- Tnt base de données vide - Forum TNT / Satellite / Réception
4 réponses
jordane45
Messages postés
38145
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 avril 2024
4 650
Modifié par jordane45 le 20/06/2015 à 20:33
Modifié par jordane45 le 20/06/2015 à 20:33
Bonjour,
Commence par mettre du TRY/CATCH sur l'execution de tes requêtes pour voir s'il n'y a pas un souci.
Par exemple :
Cordialement,
Jordane
Commence par mettre du TRY/CATCH sur l'execution de tes requêtes pour voir s'il n'y a pas un souci.
Par exemple :
try{ $sql = "INSERT INTO membres (pseudo, mail, motdepase) VALUES(?, ?, ?)"; $params = array($pseudo, $mail, $mdp); $insertmbr = $bdd->prepare($sql); $insertmbr->execute($params); }catch(Exception $e) { echo "<br>ERREUR ! ".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } $erreur = "Votre compte a bien été créé !";
Cordialement,
Jordane
jordane45
Messages postés
38145
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 avril 2024
4 650
20 juin 2015 à 21:56
20 juin 2015 à 21:56
A la place de celui contenu dans ton IF
A transformer en :
if($mdp == $mdp2) { $insertmbr = $bdd->prepare("INSERT INTO membres(pseudo, mail, motdepase) VALUES(?, ?, ?) "); $insertmbr->execute(array($pseudo, $mail, $mdp)); $erreur = "Votre compte a bien été créé !"; }
A transformer en :
if($mdp == $mdp2) { try{ $sql = "INSERT INTO membres (pseudo, mail, motdepase) VALUES(?, ?, ?)"; $params = array($pseudo, $mail, $mdp); $insertmbr = $bdd->prepare($sql); $insertmbr->execute($params); }catch(Exception $e) { echo "<br>ERREUR ! ".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } $erreur = "Votre compte a bien été créé !"; }
jordane45
Messages postés
38145
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 avril 2024
4 650
21 juin 2015 à 11:16
21 juin 2015 à 11:16
C'est en effet peut être un souci de connexion.
Essayes ça :
Essayes ça :
<?php // Reporte toutes les erreurs PHP (Voir l'historique des modifications) error_reporting(E_ALL); //-------------------------------------------------------------------------------------------// // Connexion à la BDD* //-------------------------------------------------------------------------------------------// $serveur = "127.0.0.1"; $db_name = "espace_membre'"; $user = "root"; $password = ""; $dsn = "mysql:host=".$serveur.";dbname=".$db_name; try { $bdd = new PDO($dsn, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING)); } catch (PDOException $e) { echo 'Echec de la connexion : ' . $e->getMessage(); exit; } //-------------------------------------------------------------------------------------------// //Récupération des variables $pseudo = !empty($_POST['pseudo']) ? htmlspecialchars($_POST['pseudo']) :NULL; $mail = !empty($_POST['mail'])? htmlspecialchars($_POST['mail']) : NULL; $mail2 = !empty($_POST['mail2']) ? htmlspecialchars($_POST['mail2']) :NULL; $mdp = !empty($_POST['mdp']) ? sha1($_POST['mdp']):NULL; $mdp2 = !empty($_POST['mdp2']) ? sha1($_POST['mdp2']):NULL; //traitement du submit if(isset($_POST['forminscription'])){ if($pseudo && $mail && $mail2 && $mdp && $mdp2) { $pseudolenght = strlen($pseudo); if($pseudolenght <= 255){ if($mail == $mail2){ if(filter_var($mail, FILTER_VALIDATE_EMAIL)){ $sql1 = "SELECT * FROM membres WHERE mail = ?"; $reqmail= $bdd->prepare($sql1); $reqmail->execute(array($mail)); $mailexist = $reqmail->rowCount(); if($mailexist == 0){ if($mdp == $mdp2){ try{ $sql = "INSERT INTO membres (pseudo, mail, motdepase) VALUES(?, ?, ?)"; $params = array($pseudo, $mail, $mdp); $insertmbr = $bdd->prepare($sql); $insertmbr->execute($params); }catch(Exception $e) { echo "<br>ERREUR ! ".$e->getMessage()."<br>"; echo "<br>params : <br>"; print_r($params); } $erreur = "Votre compte a bien été créé !"; } else{ $erreur = "Les mots de passes ne correspondent pas !"; } } } else { $erreur = "L'adresse mail entrée est déjà utilisée !"; } }else { $erreur = "Les adresses e-mail ne correspondent pas !"; } }else { $erreur = "Votre pseudo est trop long !"; } }else{ $erreur = "Tous les champs doivent être remplis !"; } } ?>
jordane45
Messages postés
38145
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 avril 2024
4 650
>
Anonymous
21 juin 2015 à 11:31
21 juin 2015 à 11:31
Tu as juste à prendre tout le code que je t'ai donné ... et à remplacer le tient.
Après.. tu le testes ..et tu vois ce que ça donne.
Après.. tu le testes ..et tu vois ce que ça donne.
J'ai enfin réussi je ne sais même pas comment j'ai refait la manipulation de ce tutoriel:
https://www.youtube.com/watch?v=s7qtAnH5YkY
Merci quand même jordane45 si je n'avais pas eu d'aide j'aurai sans doute laisser mon projet à l'abandon.
Merci !
https://www.youtube.com/watch?v=s7qtAnH5YkY
Merci quand même jordane45 si je n'avais pas eu d'aide j'aurai sans doute laisser mon projet à l'abandon.
Merci !
jordane45
Messages postés
38145
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
25 avril 2024
4 650
21 juin 2015 à 14:48
21 juin 2015 à 14:48
Les messages d'erreurs sont assez clair pour comprendre où est le souci...
Dans la requête... un champ de ta BDD n'a pas le bon nom ou n'existe pas.
Dans la requête... un champ de ta BDD n'a pas le bon nom ou n'existe pas.
20 juin 2015 à 21:47