Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/12/2011, 19h10   #1
Futur Membre du Club
 
Homme
Etudiant
Inscription : octobre 2011
Messages : 80
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Etudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2011
Messages : 80
Points : 18
Points : 18
Par défaut Fatal error: Call to a member function closeCursor() on a non-object

Bonjour tout le monde, voilà j'ai une erreur : Fatal error: Call to a member function closeCursor() on a non-object in ../connectlog.php on line 57. c'est sur c'est à cause du $reponse->closeCursor(); mais je ne sais pas pourquoi. Voilà mon code

Code :
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
 
<?php
   session_start();
   $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
 
   $bdd = new PDO('mysql:host=localhost;dbname=nomdelabase', 'root', 'motdepasse', $pdo_options);
 
  // On met les variables utilisé dans le code PHP à FALSE (C'est-à-dire les désactiver pour le moment).
  $error = FALSE;
  $registerOK = FALSE;
 
 
 
  try
      {
	  $motpasse = sha1($_POST['motpasse']);
	  // On récupère tout le contenu de la table jeux_video
	    $reponse = $bdd->prepare('SELECT identifiant,motpasse FROM utilisateur WHERE identifiant = ? AND motpasse = ?');
	    $reponse->execute(array($_POST['identifiant'],$motpasse));
	    $reponse = $reponse->rowCount();
 
 
	  // mot de passe ou identifiant n'existe pas
	  if($reponse == 0){
	      if(strlen($_POST["motpasse"] == 0) OR strlen($_POST["identifiant"] == 0)){
			  $error = TRUE;
			  $errorMSG = "Tout les champs doivent être remplis !";
			  $motpasse = NULL;
 
	      }
 
 
	  }
 
	  elseif($reponse){
 
		  // On met la variable $registerOK à TRUE pour que l'inscription soit finalisé
		  $registerOK = TRUE;
		  // On l'affiche un message pour le dire que l'inscription c'est bien déroulé :
		  $registerMSG = "Identification réussie ! Vous allez être dirigé vers le site.";
 
		  // On le met des variables de session pour stocker le nom de compte et le mot de passe :
		  $_SESSION["identifiant"] = $_POST["identifiant"];
		  $_SESSION["motpasse"] = $_POST["motpasse"];
		  $_SESSION['identifiant']=$_POST['identifiant'];
		  // Comme un utilisateur est différent, on crée des variables de sessions pour "varier" l'utilisateur comme ceci :
		  // echo $_SESSION["login"]; (bien entendu avec les balises PHP, sinons cela ne marchera pas.
 
	      }
 
 
      $reponse->closeCursor(); // Termine le traitement de la requête
 
      }
 
 
  catch(Exception $e)
      {
	  // En cas d'erreur précédemment, on affiche un message et on arrête tout
	  die('Erreur : '.$e->getMessage());
      }
 
 
 
  if($error == TRUE){ 
     ?>
        <p>
         <?php  echo "<p>Tout les champs doivent être remplis !</p>";?><br />
 
        </p>
    <?php
 
    header('Location: Acceuil.php');
  }
 
  if($registerOK == TRUE){ 
    ?>
        <p>
         <?php echo "<p>".$registerMSG."</strong></p>";?><br />
 
        </p>
    <?php
 
 
      header('Location: texloud.php'); 
 
   }
 
?>
stade13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 19h15   #2
Membre du Club
 
Homme
Développeur informatique
Inscription : décembre 2009
Messages : 40
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2009
Messages : 40
Points : 66
Points : 66
Bonjour,

d'après cette ligne :
Code :
$reponse = $reponse->rowCount();
$reponse contient le nombre de lignes de ta requête. Il est donc normal que $reponse->closeCursor() ne fonctionne pas.
Pourcentage est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h59.


 
 
 
 
Partenaires

Hébergement Web