PHP ne rentre pas dans une boucle fetch() !

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : PHP ne rentre pas dans une boucle fetch() !

Re: PHP ne rentre pas dans une boucle fetch() !

par stealth35 » 16 avr. 2010, 17:44

soit tu fais

$membre = $activation->fetch();

soit tu utilise exec a la place de query (solution que je te conseil, puisque que c'est fait pour)

Re: PHP ne rentre pas dans une boucle fetch() !

par Simax150 » 16 avr. 2010, 17:40

Merci beaucoup pour vos réponses qui m'ont bien aidé. :D :D
Il ne me reste qu'un dernier problème :| :
$membre = $activation = $bdd->query("SELECT COUNT(*) AS abc FROM info_utilisateurs WHERE activation = ".$clef."");
echo ($membre.'Y ');
Ce bout de code qui renvoie 1 ou 0 me permet de savoir si un membre de la table info_utilisateurs a en champs d'activation la variable $clef.
Mais il me renvoie :
Catchable fatal error: Object of class PDOStatement could not be converted to string in C:\wamp\www\alea\activation.php on line 23
Le retour de cette requette n'est pas du texte ? Je ne peux pas l'utiliser tel quel ?
Merci d' avance pour vos réponses ! :D

Re: PHP ne rentre pas dans une boucle fetch() !

par stealth35 » 15 avr. 2010, 15:55

ouai et tu feras pas "query" mais "exec"

Re: PHP ne rentre pas dans une boucle fetch() !

par SinBert » 15 avr. 2010, 15:50

Bonjour,

si tu ne souhaites que tester si l'utilisateur dont la clé est $cle le mieux est de faire ceci :
SELECT COUNT(*) AS nbre_utilisateur FROM info_utilisateur WHERE actication = '$cle'
Si l'utilisateur avec la clé $cle existe, la requête te retournera 1 sinon, 0.
Ton script sera par conséquent beaucoup plus simple que se que tu nous présente là.
De plus, il ne chargera pas tous les champs de ta table qui sont assez inutile dans ce script.

Bonne fin de journée. ;)

Re: PHP ne rentre pas dans une boucle fetch() !

par stealth35 » 15 avr. 2010, 13:29

pourquoi tu va chercher tout les utilisateurs ?
autant faire une requête style :
SELECT * FROM info_utilisateurs WHERE activation = '$clef'

PHP ne rentre pas dans une boucle fetch() !

par Simax150 » 15 avr. 2010, 13:17

Bonjour à tous !
Mon script d'inscription marche bien, à un prblème :
le code qui suit permet l'activation d'un compte. Il compare la clef que le membre à recu dans un mail avec celui ajouté à la bdd lors de son inscription.
Voilà ce qui est affiché :
4
Notice: Undefined variable: trouve in ...
include("includes/connexion_mysql.php");//On se connecte à la base sql

if (isset($_GET['hasard']))
	{
		$clef = $_GET['hasard'];//on récupere la clef d'activation dans une variable si elle existe
		$clefabs = false;
	}

else
	{
		$clefabs = true;//sinon, la variable clef est fausse
	}


$activation = $bdd->query("SELECT * FROM info_utilisateurs"); //On récupère le champs activation, pour le comparer avec la clef d activation du $_GET

if ($clefabs == false)//si la variable clef n'est pas fausse :
{
	while ($abc = $activation->fetch())
		{echo('2');
			if (in_array ($clef, $abc['activation']) == true)//si la clef est trouvée dans l'array :
			{
				echo('3');
				$trouve = true;//la variable trouve est juste
			}
			
			else
			{
				echo('3.5');
				$trouve = false;
			}
		
		}
echo('4');
$activation->closeCursor();
}
Merci d'avance !