Problème inscription espace membre

Répondre
LarZuK
le 09/04/2005 à 13:42
LarZuK
Salut!
Je souhaite réaliser un espace membre mais l'inscription retarde mes projets smiley

En faite, je n'ai pas d'erreur quand j'execute le script. C'est juste qu'il ne se passe... à peu près... rien smiley

D'abord, j'affiche un p'tit règlement et le futur-membre soit donner son accord.
Apres il arrive sur le formulaire et quand il est envoyé, on teste si tous les champs sont bien rempli, email correct, mot de passe ect...
Si tous les tests ne s'avèrent pas correct, on affiche le même formulaire mais avec des petits messages à côté. Mais le problème, c'est que les messages d'erreurs ne s'affichent pas. :s

Si vous voulez voir le code c'est par ici :
http://www.geh.be/test/marche%20pas/highlight_string.php

Mon script est peut-être mal fait, si vous avez des idées constructives pour m'aider à avoir quelque chose de bien, je n'attend que ca :D

Je n'aime pas poster comme cela mon script simplement parce que je ne trouve pas mes erreurs mais vous êtes mon dernier espoirt :D

J'espère que vous pourrez m'aider.

Merci!

LarZuK
zebden
le 09/04/2005 à 14:27
zebden
Alors juste pour ton problème pour assigner une valeur a une variable c'est qu'un seul égale.

Double égale c'est pour comparer deux valeurs.
zebdinou pour les intimes / Blog : http://www.zebden.fr
LarZuK
le 09/04/2005 à 14:35
LarZuK
Ooooh pourquoi c'est toujours des erreurs super faciles ! Si seulement c'était un truc compliqué dont je ne pourrais pas avoir honte smiley

J'ai corrigé quelques autres petits fautes qui apparaissent maintenant que ca avance. J'ai une autre erreur, SQL cette fois mais je vais essayer de trouver moi-même :)

Merci zebden !
LarZuK
le 09/04/2005 à 17:42
LarZuK
J'ai un autre problème. Je me permet de ne pas faire un autre sujet parce que cela reste dans le même cadre : "Problème inscription espace membre"

J'ai créé 2 fonction : verif_pseudo et verif_email
Code :
<?
function verif_pseudo ($pseudo) {
$sql['list'] = "SELECT id FROM membre_list WHERE pseudo='$pseudo'";
$sql['list_attende'] = "SELECT id FROM membre_list_attende WHERE pseudo='$pseudo'";

$req['list'] = mysql_query($sql['list']);
$req['list_attende'] = mysql_query($sql['list_attende']);

$num['list'] = mysql_num_rows($req['list']);
$num['list_attende'] = mysql_num_rows($req['list_attende']);

if($num['list'] != 0 && $num['list_attende'] != 0) return TRUE;
else return FALSE;
}
function verif_email ($email) {
$sql['list'] = "SELECT id FROM membre_list WHERE email='$email'";
$sql['list_attende'] = "SELECT id FROM membre_list_attende WHERE email='$email'";

$req['list'] = mysql_query($sql['list']);
$req['list_attende'] = mysql_query($sql['list_attende']);

$num['list'] = mysql_num_rows($req['list']);
$num['list_attende'] = mysql_num_rows($req['list_attende']);

if($num['list'] != 0 && $num['list_attende'] != 0) return TRUE;
else return FALSE;
}
?>

(vous pouvez avoir accès au reste du script avec le lien donné ci-dessus)

Ces fonctions servent à tester si l'e-mail ou le pseudo est déja enregistrer dans ma bdd.
Pour tester je fait :
<?
if( verif_email($_POST['email']) ) {
$error['email']['enregistre'] = "<font color=\"#FF0000\">Cette adresse e-mail est déjà enregistrée. </font>";
$erreur++;
}
if( verif_pseudo($_POST['pseudo']) ) {
$error['pseudo']['enregistre'] = "<font color=\"#FF0000\">Ce pseudo est déja utilisé. </font>";
$erreur++;
}
?>


Mais seulement voila, :p ca ne fonctionne pas. Si je met un pseudo ou une adresse déja utilisée, ca ne fait pas d'erreur.

Je ne comprend pas. Surement encore quelque chose de tout bète mais je coince quand même.

Si vous pouviez m'aider, je vous en serais extrement reconnaissant.

Merci :)

(et bon week-end ;) )
zebden
le 09/04/2005 à 17:55
zebden
Pour rentrer il faut grossierement if(TRUE) or ta fonction renvoie false quand il trouve le pseudo(ou l'email). Donc il faut utiliser la négation dans le if avec '!' soit

if(!verif_pseudo($truc)) { }
zebdinou pour les intimes / Blog : http://www.zebden.fr
LarZuK
le 09/04/2005 à 18:06
LarZuK
Je l'avait déjà essayé. Mais voila, tout pseudo est maintenant considèré comme trouvé. :s

Au passage, au niveau de la confirmation, j'ai un problème SQL :
Ma requete :
SELECT * FROM 'membre_list_attende' WHERE 'activation'='$activation'
Sachant que $activation est un md5. Erreur :
You have [..] use near ''membre_list_attende' WHERE 'activation'='5dc08e3ac0e03fe13a996

Je ne sais pas quoi faire. C'est la première fois que j'utilise le md5.

Merci!
zebden
le 09/04/2005 à 20:13
zebden
SELECT * FROM `table`

Le délimiteur Mysql est ` et non les quote. Pour tout nom de table ou nom de champ.
zebdinou pour les intimes / Blog : http://www.zebden.fr
LarZuK
le 10/04/2005 à 16:04
LarZuK
Désolé mais ca ne fonctionne pas.
SELECT * FROM `membre_list_attende` WHERE `activation`=$activation
Erreur :
Unknown column '5dc08e3ac0e03fe13a9962469ca436cd' in 'where clause'
Et si je met aussi des ` autour de $activation, ca donne la même erreur.
zebden
le 10/04/2005 à 16:22
zebden
bin parce que la il faut delimiter ta chaine avec des guillemets ou des quotes ^^

$sql = 'SELECT * FROM `membre_liste_attende` WHERE `activation` = "'.$activation.'"';
zebdinou pour les intimes / Blog : http://www.zebden.fr
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours