Probleme fonction udapte

Résolu
fredadidodu Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
fredadidodu Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je suis en train de programmer un site depuis quelques temps et pour une fois je suis tombé sur une erreur que je n'ai pas su résoudre ,si vous pouviez m'aider
Voici mon code :

<?php
if(isset($_GET['activation_id']))
{
$_GET['activation_id'] = intval(htmlentities($_GET['activation_id'], ENT_QUOTES));
mysql_connect("localhost", "??", "??");
mysql_select_db("LAbdd");
$verif=mysql_query('SELECT * FROM membresgg WHERE id=\'' .$_GET['activation_id'].'\'') or die(mysql_error());
$statut=mysql_fetch_array($verif);

if ($statut['statut'] == 'desactive')
{
$membre='membre';
mysql_query("UPDATE membresgg SET statut='" . $membre . "', WHERE id='" . $_GET['activation_id'] . "'");
echo "Votre compte a bien été activé, vous pouvez désormais vous connectez pour accéder aux jeux Gamez Games";
}
else
{
echo 'Erreur';
}

}
else
{
echo "Erreur! Votre compte n'existe pas";
mysql_close();
}
?>

C'est l'activation par e-mail des comptes, seulement le statut des membres ne change pas avec la requête , j'ai déjà vérifié le nom de la bdd, de la table , du champ statut, $_GET['activation_id'] s'affiche correctement,et le message "Votre compte a bien été activé, vous pouvez désormais vous connectez pour accéder aux jeux Gamez Games" aussi .
Il n'y a aucun message d'erreur.
A voir également:

2 réponses

croy Messages postés 453 Date d'inscription   Statut Membre Dernière intervention   114
 
J'ai fait trois modifications dans ton script :

1. commande update : suppression d'une virgule
2. ajout de l'affichage de la requête lancée : utile pour déboguer
3. ajout de die(...) : il est normal que dans ces circonstances tu n'ais pas de message d'erreur

<?php
if( isset( $_GET['activation_id'] ) )
	{
	$_GET['activation_id'] = intval(htmlentities($_GET['activation_id'], ENT_QUOTES));
	mysql_connect("localhost", "??", "??");
	mysql_select_db("LAbdd");
	$query = "SELECT * FROM membresgg"
		. " WHERE id='" . $_GET['activation_id'] . "'"
	$verif=mysql_query( $query ) or die(mysql_error());
	$statut=mysql_fetch_array($verif);
	
	if ($statut['statut'] == 'desactive')
		{
		$membre='membre';
// ligne suivante : virgule supprimée 
		$query = "UPDATE membresgg SET statut='" . $membre . "' WHERE id='" . $_GET['activation_id'] . "'"
//	ligne suivante : ajoutée
		echo '<br>...' . $query;
//	ligne suivante : appel de die ajouté
		mysql_query( $query ) or die( mysql_error() );
		echo "Votre compte a bien été activé, vous pouvez désormais vous connectez pour accéder aux jeux Gamez Games";
		}
	else
	echo 'Erreur';	
	}
else
	{
	echo "Erreur! Votre compte n'existe pas";
	mysql_close();
	}
?> 
0
fredadidodu Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
C'était la virgule en trop
merci beaucoup tu m'a bien aidé.
0