Bonjour,

Je suis entrain de coder un script d'inscription.

Le système est simple, on fait d'abord quelques vérifications et si tout va bien, on inscrit les valeurs des champs dans la BDD.

J'ai fais une première version fonctionnel, mais le script était vraiment dégueulasse. :s

Je suis entrain de faire une refonte beaucoup plus claire, la voici.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?php 
 
	if(isset($_POST['inscription_pseudo'] , $_POST['inscription_mdp'] , $_POST['inscription_confirm-mdp'] , $_POST['inscription_mail'] , $_POST['inscription_confirm-mail'] , $_POST['inscription_jour-ddn'] , $_POST['inscription_mois-ddn'] , $_POST['inscription_annee-ddn'])){  
 
		/* Identification SQL */
		$host = "127.0.0.1"; /* Serveur local sous Wamp */
		$login = "root"; /* Pseudo */
		$mdp = ""; /* Mot de passe */
		$bdd = "xxx"; /* Base de donnée */
 
		/* Affection des variables */
		$pseudo = $_POST['inscription_pseudo'];
		$motdepasse = $_POST['inscription_mdp'];
		$confirm_mdp = $_POST['inscription_confirm-mdp'];
		$mail = $_POST['inscription_mail'];
		$confirm_mail = $_POST['inscription_confirm-mail'];
		$jddn = $_POST['inscription_jour-ddn'];
		$mddn = $_POST['inscription_mois-ddn'];
		$addn = $_POST['inscription_annee-ddn'];
		$captcha = $_POST['captcha'];
		$erreur = "";
		$dateins = "".$addn."-".$mddn."-".$jddn."";	
		$mdpcry = sha1($motdepasse);		
 
			if("verification" === false){
				echo '.$erreur.';
			}
			else{	
				$connexion_sql = mysql_connect($host,$login,$mdp); 
				$connexion_bdd = mysql_select_db($bdd);
				if(!$connexion_sql || !$connexion_bdd)
				$erreur = 'Connexion impossible avec le serveur distant.';
				else{
					$result_pseudo = mysql_query('SELECT id FROM membre WHERE pseudo=\''.$pseudo.'\';')
						or exit(mysql_error());
					$nombre_pseudo = mysql_num_rows($result_pseudo);
					$result_mail = mysql_query('SELECT id FROM membre WHERE mail=\''.$mail.'\';')
						or exit(mysql_error());
					$nombre_mail = mysql_num_rows($result_mail);
					if($nombre_pseudo > 0)
					$erreur = 'Pseudo déjà utilisé par un autre compte.'; 
					elseif($nombre_mail > 0)
					$erreur = 'Adresse e-mail déjà utilisé par un autre compte.';
					else return true;
				}
			}	
				mysql_query("INSERT INTO `membre` (id,pseudo,mdp,mail,date_de_naissance,niveau_compte) VALUES('','$pseudo','$mdpcry','$mail','$dateins','1')");	
 
		function verification(&$erreur){
			if(empty($pseudo) || empty($motdepasse) || empty($confirm_mdp) || empty($mail) || empty($confirm_mail) ||  empty($jddn) || empty($mddn) || empty($addn)) 
			$erreur = 'Vous n\'avez pas remplis tous les champs du formulaire.';
			elseif(($motdepasse != $confirm_mdp) || ($mail != $confirm_mail))
			$erreur = 'Les champs de confirmations n\'ont pas été correctement remplis.';
			elseif(filter_var($mail, FILTER_VALIDATE_EMAIL) === false)
			$erreur = 'Le format de l\'adresse e-mail n\'est pas correcte. Merci d\'introduite une adresse du type : <a href="mailto:adresse@email.xxx">adresse@email.xxx</a>';
			elseif(checkdate($mddn,$jddn,$addn) === false)
			$erreur = 'Merci de rentrer une date de naissance correct.';
			elseif(isset($_SESSION['captcha'])) {
				if(empty($_POST['captcha'])) $erreur = 'Veuillez recopier le code affiché.';
				elseif($_POST['captcha'] != $_SESSION['captcha']) $erreur = 'Le code inscrit n\'est pas le même que l\'original.';
				else return true;
			}
		}
	}
session_destroy();	
?>
Cependant j'ai quelques problèmes...

D'une part, le script ne me retourne aucune erreur... De plus, même sans erreur rien ne s'inscrit dans la BDD.

D'autre part, les erreurs ne s'affichent pas... :s

Voici le script HTML ou l'erreur s'affiche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<div id="erreur"><?php echo $erreur; ?></div>
Voilà, j'aimerais que vous me donniez quelques conseils si possible et toutes remarques seront la bienvenue.

Merci et bonnes fêtes.