Problème PHP/PDO

Ce topic a été résolu
max33530

max33530 Le 22 avril 2016 à 15:53 (Édité le 25 janvier 2019 à 17:50)

Bonjour, depuis des années h'ai toujours codé en mysql, maintenant que le PDO est arrivé je voudrais l'utiliser, j'ai suivi un cour de PrimFX, celui sur la création d'un espace membre. J'ai voulu prendre son code de connexion, mais soucis, en l'essayant sur mon site, il ne fonctionne pas, aucune erreur apparaît sur mon site.. Bizarre

Voici la partie du code que j'ai utilisée :
 $requser = $bdd->prepare("SELECT * FROM membres WHERE mail = ? AND motdepasse = ?");
 $requser->execute(array($mailconnect, $mdpconnect));
      $userexist = $requser->rowCount();
  if($userexist == 1) {
   $userinfo = $requser->fetch();
   $_SESSION['id'] = $userinfo['id'];
   $_SESSION['pseudo'] = $userinfo['pseudo'];
   $_SESSION['mail'] = $userinfo['mail'];
header("Location: profil.php?id=".$_SESSION['id']);
Je l'ai bien sûr modifié pour qu'il soit adapté à mon site :
$requser = $bdd->prepare("SELECT * FROM users WHERE mail = ? AND password = ?");
      $requser->execute(array($mail, $password));
      $userexist = $requser->rowCount();
      if($userexist == 1)
      {
         $userinfo = $requser->fetch();
         $_SESSION['mail'] = $userinfo['mail'];
         
         header('Location: me.php');
      }
      else
      {
         $erreur = "Mouvais mail ou mauvais mot de passe";
      }
Le soucis, c'est que quand j'envoi mon formulaire, il m'affiche le message d'erreur qui est dans le code.
Si vous avez pas compris, je comprendrais merci de me le dire, et si vous pensez avoir compris merci aussi de me le dire.

Merci d'avance.
Wistaro

Wistaro Le 22 avril 2016 à 16:14

Je ne vois pas où tu définis ton objet PDO $bdd, tu ne l'aurais pas oublié ?

Autrement,  pour activer les erreurs sur pdo il faut utiliser certains flags au niveau de la création de ton objet:
http://php.net/manual/fr/pdo.error-handling.php
max33530

max33530 Le 22 avril 2016 à 16:18

Je l'ai défini plus haut sur la page, et en plus ce qui est bizarre c'est que j'ai utilisé PDO pour le systeme d'inscription et il fonctionne. Merci pour les erreurs PDO.
Je vais essayer avec.
max33530

max33530 Le 22 avril 2016 à 16:22

J'ai trouvé mon erreur, merci pour les erreurs PDO.
Cafeine

Cafeine Le 26 avril 2016 à 11:45

Salut a tous en faite j'ai un souci avec ma BDD j'ai utiliser un logiciel pour concevoir ma bdd qui est win'design puis j'ai généré mon mld et tout a fonctionner et a la suite de cela j'ai importé ma bdd dans wamp mais lorsque je fais ma requete d'insertion elle ne passe pas et quand je vais sous wamp pour inserer kelke chose avec sql il ne prend pas en compte mais valeur et il met mon id a 0 je ne comprend vraiment pas et voici mon code:

if (isset($_POST['yes'])) {
      //Déclaration de variable
      extract($_POST);
      $nom_user = htmlspecialchars(htmlentities(addslashes(strip_tags($_POST['nom_user']))));
      $pren_user = htmlspecialchars(htmlentities(addslashes(strip_tags(mysql_real_escape_string($_POST['pren_user'])))));
      $commune=$_POST['commune_user'];
      $ville=$_POST['vil_user'];
      $section = $_POST['section'];
      $fonct_user = $_POST['fonct_user'];
      $date_naiss = $_POST['dat_naiss_user'];
      $email = $_POST['email_user'];
      $tel = $_POST['tel_user'];
      $pseudo=$_POST['pseudo_user'];
      $mdp_user = md5($_POST['mdp_user']);
      $mdp_user1 = md5($_POST['mdp_user1']);
         //les différentes conditions
      if (isset($_POST['nom_user']) AND isset($_POST['pren_user'])) {
         if (!empty($_POST['nom_user']) AND !empty($_POST['pren_user'])) {
            if (!empty($_POST['commune_user']) AND !empty($_POST['vil_user'])) {
               if (!empty($_POST['dat_naiss_user']) AND !empty($_POST['email_user'])) {
                  if (!empty($_POST['tel_user']) AND !empty($_POST['pseudo_user'])) {
                     if ($_POST['mdp_user'] == $_POST['mdp_user1']) {
                        try {
                           $caf = $bdd->prepare("INSERT INTO utilisateur VALUES('',? ,? ,? ,? ,? ,? ,? ,? , ?, ?, ?, ?)");
                           $caf->execute(array($nom_user,$pren_user,$commune,$ville,$section,$fonct_user,$date_naiss,$email,$tel,$pseudo,$mdp_user,$mdp_user1));
                           echo "Insertion valider";
                           //header("Location:contenu_admin.php");
                        } catch (Exception $e) {
                           die("Erreur !!" .$e->getMessage());
                        }
                     }else{
                        echo "Pas d'insertion dans la bdd";
                        //header("Location:ajoute_person.php");
                     }
                  }
               }
            }
         }
      }   
   }
 ?>
<!DOCTYPE html>
<html>
<head>
   <title>Ajout de personnel</title>
   <meta charset="utf-8">
   <link rel="stylesheet" href="style.css">
</head>
<body>
   <h2>La liste des membres inscrits !!</h2>
   <table>
   <form action="" method="post" enctype="multipart/form-data">
   <label for="nom">Nom: </label> <input type="text" name="nom_user" placeholder="Nom_User"><br />
   <label for="Prenom">Prénom: </label> <input type="text" name="pren_user" placeholder="prenom_User"><br />
   <label for="email">Email: </label> <input type="text" name="email_user" placeholder="Email_User"><br />
   <label for="commune">Commune User: </label><input type="text" name="commune_user" placeholder="Commune User"><br />
   <label for="vil_user">Ville User: </label><input type="text" name="vil_user" placeholder="Ville User"><br />
   <label for="section">Section: </label><select name="section" id="section_user">
   <option value="">Etude Développement</option>
   <option value="">Réseau Télécom</option>
   <option value="">Maintenace et Exploitation</option>
   <option value="">Administration</option>
   </select><br/>
   <label for="fonct_user">Fonction User: </label><input type="text" name="fonct_user" placeholder="Fonction User"><br />
   <label for="date_naiss_user">Date Naissance: </label><input type="text" name="dat_naiss_user" placeholder="Date Naissance"><br />
   <label for="Telephone">Téléphone: </label> <input type="text" name="tel_user" placeholder="Tel_User"><br/>
   <label for="pseudo">Pseudo: </label> <input type="text" name="pseudo_user" placeholder="Pseudo"><br />
   <label for="mdp_User">Mot de passe: </label> <input type="password" name="mdp_user" placeholder="Mot de passe"><br />
   <label for="mdp1_User">Répéter Mot de passe :</label> <input type="password" name="mdp_user1" placeholder="Répéter mot de passe"><br /><br />
   <input type="submit" name="yes" value="Envoyer">
   </form>
   </table>
</body>
</html>
Cyberium

Cyberium Le 27 avril 2016 à 18:37

@Cafeine Merci de créer ton propre topic et d'écrire lisiblement parce que j'ai lu deux fois ce que tu as dit et j'ai pas tout compris 😠
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte