IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Probléme avec la contion prepare() [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Par défaut Probléme avec la contion prepare()
    Bonjour,
    J'ai un problème avec le fonction prepare() dans le tutoriel "Confirmation adresse email".
    En effet sur ma page de confirmation il m'est affiché cette erreur:

    Fatal error: Call to a member function prepare() on a non-object in C:\wamp\www\GROSBID\confirm.php on line 24


    Mon code est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    <?php
    require "config.php";
    mysql_connect(DB_HOST,DB_LOGIN,DB_PW);
    mysql_select_db(DB_BDD);
     
    extract($_POST);
     
     
    if((trim($login!=""))&&(trim($pass!="")))
    mysql_connect(DB_HOST,DB_LOGIN,DB_PW);
    mysql_select_db(DB_BDD);
    $sql = "INSERT INTO membres(id,login,email,pass) VALUES('','$login','$email','$pass')";
    $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
    mysql_close();
     
    $email = $_POST['email'];
    $login = $_POST['login'];
     
    // Génération aléatoire d'une clé
    $cle = md5(microtime(TRUE)*100000);
     
    // Insertion de la clé dans la base de données (à adapter en INSERT si besoin)
    $stmt = $sql->prepare("UPDATE membres SET cle=:cle WHERE pass like :pass");
    $stmt->bindParam(':cle', $cle);
    $stmt->bindParam(':login', $login);
    $stmt->execute();
     
     
    // Préparation du mail contenant le lien d'activation
    $destinataire = $email;
    $sujet = "Activer votre compte" ;
    $entete = "From: <a href="mailto:inscription@votresite.com">inscription@votresite.com</a>" ;
     
    // Le lien d'activation est composé du login(log) et de la clé(cle)
    $message = 'Bienvenue sur VotreSite,
    
    Pour activer votre compte, veuillez cliquer sur le lien ci dessous
    ou copier/coller dans votre navigateur internet.
    
    http://votresite.com/activation.php?log='.urlencode($login).'&cle='.urlencode($cle).'
    
    
    ---------------
    Ceci est un mail automatique, Merci de ne pas y répondre.';
     
     
    mail($destinataire, $sujet, $message, $entete) ; // Envoi du mail
     
    ?>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu mélanges les extensions classiques (mysql_*) et les extensions pdo.

    Il faut que tu fasses une connexion PDO :
    http://php.developpez.com/faq/?page=pdo#pdo-connect
    et que tu réecrives la premiere partie de ton code a la sauce PDO.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Par défaut
    merci ça fonctionne

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Problème avec prepare & execute
    Par helkøwsky dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 03/08/2011, 22h09
  2. Perl objet problème avec "prepare"
    Par Christophe53 dans le forum Langage
    Réponses: 2
    Dernier message: 08/03/2011, 11h06
  3. [PDO] Problème avec PDOStatement->prepare() et variables de session
    Par blackerangel dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 24/12/2010, 16h43
  4. problème avec l'intercepteur Preparable
    Par mrjeronimo dans le forum Struts 2
    Réponses: 1
    Dernier message: 03/04/2008, 10h07
  5. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo