Confirmation par mail sous wamp3

Gelphe

Gelphe Le 11 juin 2016 à 11:51 (Édité le 25 janvier 2019 à 17:51)

Bonjours à tous quelqu'un serai t’il répondre à mon problème
Voila chez moi le Tuto fonctionne parfaitement sous Wamp2.5, sous
EasyPHP 12.1 il fonctionne qu' en rajoutant après confirmkey "confirme"
et dans VALUES " 0\r\n ".
Mais sous Wamp3 en 32 et 64bits malgré plusieurs tentative de
réinstallation et de réécriture de la table membres, l'inscription dans
la BDD ne se fait pas, le mail confirmation et bien envoyé et la réponse
à la confirmation renvoie "l'utilisateur n'existe pas" ce qui est
normal . En utilisant la même méthode que pour EasyPHP cela ne
fonctionne pas non plus .
Lorsque j' enlève  confirmkey l'inscription se fait !!!.
Merci à tous

Pour info j' ai réinstaller wamp 2.5 (32Bits) tous fonctionne
scorpion

scorpion Le 20 juin 2016 à 17:05

es-ce qu'on pourrais voir ton code source
Gelphe

Gelphe Le 1 juillet 2016 à 18:36 (Édité le 1 juillet 2016 à 18:47)

confirmation.php
<?php
$bdd = new PDO('mysql:host=127.0.0.1;dbname=espace_membre', 'root', '');
print('<link rel="stylesheet" href="style.css" type="text/css">');
if(isset($_GET['pseudo'], $_GET['key']) AND !empty($_GET['pseudo']) AND !empty($_GET['key'])) {
   $pseudo = htmlspecialchars(urldecode($_GET['pseudo']));
   $key = htmlspecialchars($_GET['key']);
   $requser = $bdd->prepare("SELECT * FROM membres WHERE pseudo = ? AND confirmkey = ?");
   $requser->execute(array($pseudo, $key));
   $userexist = $requser->rowCount();
   if($userexist == 1) {
      $user = $requser->fetch();
      if($user['confirme'] == 0) {
         $updateuser = $bdd->prepare("UPDATE membres SET confirme = 1 WHERE pseudo = ? AND confirmkey = ?");
         $updateuser->execute(array($pseudo,$key));
     }
   }
?>
et inscription.php
<?php
$bdd = new PDO('mysql:host=127.0.0.1;dbname=espace_membre', 'root', '');

print('<link rel="stylesheet" href="style.css" type="text/css">');

if(isset($_POST['forminscription'])){
   $nom = htmlspecialchars($_POST['nom']);
   $prenom = htmlspecialchars($_POST['prenom']);
    $pseudo = htmlspecialchars($_POST['pseudo']);
    $mail = htmlspecialchars($_POST['mail']);
    $mail2 = htmlspecialchars($_POST['mail2']);
    $mdp = sha1($_POST['mdp']);
    $mdp2 = sha1($_POST['mdp2']);
   if(!empty($_POST['nom']) AND !empty($_POST['prenom']) AND !empty($_POST['pseudo']) AND !empty($_POST['mail']) AND !empty($_POST['mail2']) AND !empty($_POST['mdp']) AND !empty($_POST['mdp2']))
   {
      $reqpseudo = $bdd->prepare("SELECT * FROM membres WHERE pseudo = ?");
      $reqpseudo->execute(array($pseudo));
      $pseudoexist = $reqpseudo->rowCount();
      if($pseudoexist == 0)
      {            
           $pseudolength = strlen($pseudo);
          if($pseudolength <= 255) 
          {
             if($mail == $mail2)
             {
                if(filter_var($mail, FILTER_VALIDATE_EMAIL)) 
                {
                   $req1mail = $bdd->prepare("SELECT * FROM membres WHERE mail = ?");
                   $req1mail->execute(array($mail));
                   $mailexist = $req1mail->rowCount();
                   if($mailexist == 0)
                   {
                       if($mdp == $mdp2)
                        {
                        $longueurKey = 15;
                        $key = "";
                        for($i=1;$i<$longueurKey;$i++){
                           $key .= mt_rand(0,9);
                        }
                        
                        $insertmbr = $bdd->prepare("INSERT INTO membres(nom, prenom, pseudo, mail, motdepasse, avatar, monfond, groupe, confirmkey) VALUES(?,?,?,?,?,?,?,?,?)");
                        $insertmbr->execute(array($nom,$prenom,$pseudo,$mail,$mdp,"user.png","default.PNG","9.png",$key));
                          
                        $header="MIME-Version: 1.0\r\n";
                        $header.='From:"xxxxx.com"<support@xxxx.com>'."\n";
                        $header.='Content-Type:text/html; charset="utf-8"'."\n";
                        $header.='Content-Transfert-Encoding: 8bit';
                        
                        $message='
                        <html>
                           <body>
                              <div align="center">
                                 <a href="http://localhost/xxxx/confirmation.php?pseudo='.urlencode($pseudo).'&key='.$key.'">Confirmez votre compte !</a>
                              </div>
                           </body>
                        </html>
                        ';
                        
                        mail($mail, "Confirmation de compte", $message, $header);
Gelphe

Gelphe Le 1 juillet 2016 à 18:41

Salut 😀
Nota: ce code fonctionne comme je l'ai dit plus haut ainsi qu'avec easyphp 14
mais il ne fonctionne  pas avec la version Wamp  V3 
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte