Partage
  • Partager sur Facebook
  • Partager sur Twitter

débutant, d'ou vient cette erreur ?

Anonyme
    31 août 2010 à 11:07:11

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
       <head>
    	   <title>DOFUS :: Jeu de rôle massivement multijoueur sur Internet</title>
    	   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    	   <meta name="description" content="Site des noelistes et adepte de Chucky" />
    	   <meta name="keywords" content="DOFUS" />
    	   <link rel="stylesheet" media="screen" type="text/css" title="design" href="css/design.css" />
    	   <link rel="shortcut icon" type="image/x-icon" href="image/dofusico.png"/>
    	   <script type="text/JavaScript"></script>
           <style type="text/css">
    <!--
    .Style1 {
    	font-weight: bold;
    	color: #990000;
    }
    -->
           </style>
    <body id="connexion">
     <div id="banniere"><a href="index.php"><img src="image/dofus_hack/haut2.png" /></a>
    
    <?php
    
    # //Vaiable d'environement pour le script
     $host = "xxxx";
     $user = "xxxx";
     $password = "xxxxx";
     $bdd = "xxxxxx";
    
     //Chaine de connection a la base de donnee
     $conn = mysql_connect($host, $user, $password);
    
     //Verification, de la possiblite d'acceder a la base de donnee
     mysql_select_db($bdd) or die("IMpossible d'ouvrir la base de donnee $bdd");
    
     mysql_close($conn);
    
    
    if (isset($_POST['pseudo']) AND isset($_POST['mdp']))
    {
    	$req = $conn->prepare('INSERT INTO compte (pseudo, mdp) VALUES(?, ?)');
    	$req->execute(array($_POST['pseudo'], $_POST['mdp']));
    ?>
     <div id="con">
    <p align="center" class="Style1">Vous devez être <strong>abonné</strong> pour vous connectez !</p>
    <form action="connexion.php" method="post">
    <p> 
      <label for="pseudo">Votre pseudo  </label>
        : 
        <input type="text" name="pseudo" id="pseudo" />
          <br />
      <label for="mdp">
    Votre mot de passe
      </label>
        : 
        <input type="password" name="mdp" id="mdp" />
          <br />
          <input type="submit" value="Valider" />
    </p>
    </form>
    </div>
    
    <?php
    }
    else
    {
    ?>
     <div id="con">
    <p align="center">Le site est actuellement en maintenance, veuillez vous connectez</p>
    <form action="connexion.php" method="post">
    <p> 
      <label for="pseudo">Votre pseudo  </label>
        : 
        <input type="text" name="pseudo" id="pseudo" />
          <br />
      <label for="mdp">
    Votre mot de passe
      </label>
        : 
        <input type="password" name="mdp" id="mdp" />
          <br />
          <input type="submit" value="Valider" />
    </p>
    </form>
    <?php
    }
    ?>
    </div>
    </body>
    </header>
    
    <div id="bas_connexion">
    <img name="bas_connexion2" src="image/bas_connexion2.png" width="1007" height="79" border="0" id="bas_connexion2" usemap="#m_bas_connexion2" alt="" /><map name="m_bas_connexion2" id="m_bas_connexion2">
    <area shape="rect" coords="672,6,787,29" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
    <area shape="rect" coords="535,5,664,21" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
    <area shape="rect" coords="386,24,443,40" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
    <area shape="rect" coords="372,4,530,25" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
    <area shape="rect" coords="229,7,363,26" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
    <area shape="rect" coords="0,64,43,79" href="index.php" alt="" />
    </map>
    </div>
    


    (NE FAITE PAS ATTENTION A LA FIN)

    Erreur
    Fatal error: Call to a member function prepare() on a non-object in /home/a5123424/public_html/connexion.php on line 41


    Bonjour, pour que cela ne marche pas ? d'ou viennet l'erreur ?
    • Partager sur Facebook
    • Partager sur Twitter
      31 août 2010 à 11:18:31

      --
      • Partager sur Facebook
      • Partager sur Twitter
      Je suis professeur de mathématiques sur LiveMentor, pour niveaux collège/lycée/prépa MPSI :)
        31 août 2010 à 11:24:44

        mysql n'utilise pas la POO donc pas d'objets ni méthode.
        La fonction de requetage est mysql_query(pas de prepare)
        • Partager sur Facebook
        • Partager sur Twitter
          31 août 2010 à 11:24:50

          L'erreur vient tout simplement du fait que utilises les fonction mysql_* pour te connecter à la base de données, et tu utilises ensuite PDO pour faire une requête.
          Tu ne peux pas mélanger les deux méthodes de connexion à une base de données.

          Il y a deux solutions à ton problème :
          - soit tu utilises les fonctions mysql_*, et tu les utilises jusqu'au bout, bien que l'utilisation de ces fonctions ne soit plus recommandée.
          - soit tu utilises la classe PDO, et tu n'utilises que ça.

          Plus d'informations ici.
          • Partager sur Facebook
          • Partager sur Twitter
            31 août 2010 à 11:28:38

            Ouh là, effectivement --
            • Partager sur Facebook
            • Partager sur Twitter
            Je suis professeur de mathématiques sur LiveMentor, pour niveaux collège/lycée/prépa MPSI :)
            Anonyme
              31 août 2010 à 11:39:20

              <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
              <html xmlns="http://www.w3.org/1999/xhtml">
                 <head>
              	   <title>DOFUS :: Jeu de rôle massivement multijoueur sur Internet</title>
              	   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
              	   <meta name="description" content="Site des noelistes et adepte de Chucky" />
              	   <meta name="keywords" content="DOFUS" />
              	   <link rel="stylesheet" media="screen" type="text/css" title="design" href="css/design.css" />
              	   <link rel="shortcut icon" type="image/x-icon" href="image/dofusico.png"/>
              	   <script type="text/JavaScript"></script>
                     <style type="text/css">
              <!--
              .Style1 {
              	font-weight: bold;
              	color: #990000;
              }
              -->
                     </style>
              	   </head>
              <body id="connexion">
               <div id="banniere"><a href="index.php"><img src="image/dofus_hack/haut2.png" /></a>
              
              <?php
              try
              {
              	$bdd = new PDO('mysql:host=xxxxx;dbname=xxxxxx', 'xxxx', 'xxxxx');
              }
              catch (Exception $e)
              {
                      die('Erreur : ' . $e->getMessage());
              }
              
              if (isset($_POST['pseudo']) AND isset($_POST['mdp']))
              {
              	$req = $bdd->prepare('INSERT INTO compte (pseudo, mdp) VALUES(?, ?)');
              	$req->execute(array($_POST['pseudo'], $_POST['mdp']));
              ?>
               <div id="con">
              <p align="center" class="Style1">Vous devez être <strong>abonné</strong> pour vous connectez !</p>
              <form action="connexion.php" method="post">
              <p> 
                <label for="pseudo">Votre pseudo  </label>
                  : 
                  <input type="text" name="pseudo" id="pseudo" />
                    <br />
                <label for="mdp">
              Votre mot de passe
                </label>
                  : 
                  <input type="password" name="mdp" id="mdp" />
                    <br />
                    <input type="submit" value="Valider" />
              </p>
              </form>
              </div>
              
              <?php
              }
              else
              {
              ?>
               <div id="con">
              <p align="center">Le site est actuellement en maintenance, veuillez vous connectez</p>
              <form action="connexion.php" method="post">
              <p> 
                <label for="pseudo">Votre pseudo  </label>
                  : 
                  <input type="text" name="pseudo" id="pseudo" />
                    <br />
                <label for="mdp">
              Votre mot de passe
                </label>
                  : 
                  <input type="password" name="mdp" id="mdp" />
                    <br />
                    <input type="submit" value="Valider" />
              </p>
              </form>
              <?php
              }
              ?>
              </div>
              <div id="bas_connexion">
              <img name="bas_connexion2" src="image/bas_connexion2.png" width="1007" height="79" border="0" id="bas_connexion2" usemap="#m_bas_connexion2" alt="" /><map name="m_bas_connexion2" id="m_bas_connexion2">
              <area shape="rect" coords="672,6,787,29" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
              <area shape="rect" coords="535,5,664,21" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
              <area shape="rect" coords="386,24,443,40" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
              <area shape="rect" coords="372,4,530,25" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
              <area shape="rect" coords="229,7,363,26" href="javascript:alert('Le site est en maintenance, seul les abonnés peuvent se connecter. Merci de votre compréhension');" alt="" />
              <area shape="rect" coords="0,64,43,79" href="index.php" alt="" />
              </map>
              </div>
              </body>
              </html>
              


              erreur
              Fatal error: Class 'PDO' not found in /home/a5123424/public_html/connexion.php on line 26
              


              et maintenant sa viens d'ou ? x)
              • Partager sur Facebook
              • Partager sur Twitter
                31 août 2010 à 11:45:09

                Ça veut simplement dire que PDO n'est pas disponible/activé sur l'hébergeur :euh:

                BhW
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  31 août 2010 à 11:54:36

                  ba si j'ai même créé une des champs dans la bdd et me suis déjà connecté dessus ...

                  j'ai 000webhost.com

                  voila le screen qui montre que j'ai belle et bien une bdd

                  http://s2.noelshack.com/old/up/bug-79e9a07b88.png

                  Sinon sans passer par le PDO comment je récupere les info ? si sa se trouve sa marchera ^^

                  <?php
                  
                  # //Vaiable d'environement pour le script
                   $host = "xxxx";
                   $user = "xxxx";
                   $password = "xxxxx";
                   $bdd = "xxxxxx";
                  
                   //Chaine de connection a la base de donnee
                   $conn = mysql_connect($host, $user, $password);
                  
                   //Verification, de la possiblite d'acceder a la base de donnee
                   mysql_select_db($bdd) or die("IMpossible d'ouvrir la base de donnee $bdd");
                  
                   mysql_close($conn);
                  
                  
                  if (isset($_POST['pseudo']) AND isset($_POST['mdp']))
                  {
                  # //	$req = $conn->prepare('INSERT INTO compte (pseudo, mdp) VALUES(?, ?)');
                  # //	$req->execute(array($_POST['pseudo'], $_POST['mdp']));
                  # // Je met quoi a la place de sa ?
                  ?>
                  



                  Par quoi je dois remplacer les commentaires pour récurer les le mdp et pseudo alors ? ^^
                  • Partager sur Facebook
                  • Partager sur Twitter
                    31 août 2010 à 12:37:28

                    il faudrait que tu actives PDO sur ton compte.

                    Ce n'est pas parce que tu as une base de données, donc SQL, que tu as PDO. Il faut peut-être, donc, l'activer.

                    Si tu ne peux pas l'activer, eh ben envoie un mail à ton hébergeur.
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Je suis professeur de mathématiques sur LiveMentor, pour niveaux collège/lycée/prépa MPSI :)
                    Anonyme
                      31 août 2010 à 12:55:36

                      Met on peut pas utilisé le mysql sans PDO ? c'est un site de 2 page j'ai besoin de mettre les info pour récupérer dans le formulaire et c'est tout ^^
                      • Partager sur Facebook
                      • Partager sur Twitter
                        31 août 2010 à 13:23:38

                        Tu peux utiliser les fonctions mysql_*.
                        mysqli_query sert à exécuter une requête, mysqli_fetch_array sert à récupérer les résultats.

                        La balle est dans ton camp :)

                        Merci de ne pas me MP pour régler vos problèmes individuels, le forum est là pour ça.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          31 août 2010 à 13:23:45

                          dans ce cas tu dois utiliser les fonction mysqli_query(); et mysqli_fetch_array().

                          $rep = mysqli_query('INSERT INTO compte (pseudo, mdp) VALUES('.$pseudo.', '.$mdp.')');
                          $donnees = mysqli_fetch_array($rep);
                          
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Je suis professeur de mathématiques sur LiveMentor, pour niveaux collège/lycée/prépa MPSI :)

                          débutant, d'ou vient cette erreur ?

                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                          • Editeur
                          • Markdown