Pour plus de clarté, je mets l'ensemble code
<!doctype html>
<head>
<meta charset="UTF-8">
<title>S'Enregistrer</title>
<link rel="icon" href="images/favicon.gif" type="image/x-icon"/>
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link rel="shortcut icon" href="images/favicon.gif" type="image/x-icon"/>
<link rel="stylesheet" type="text/css" href="css/styles.css"/>
<link type="text/css" href="css/css3.css" rel="stylesheet" />
<script type="text/javascript" src=" https://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.js"></script>
<script type="text/javascript" src="js/jquery.pikachoose.js"></script>
<script language="javascript">
$(document).ready(
function (){
$("#pikame").PikaChoose();
});
</script>
</head>
<body>
<!--start container-->
<div id="container">
<!--start header-->
<header>
<!--start logo-->
<a href="#" id="logo"><img src="images/logo.png" width="221" height="100" alt="logo"/></a>
<!--end logo-->
<!--start menu-->
<nav>
<ul>
<li><a href="index.html" >Accueil</a></li>
<li><a href="Promesse.html">Promesse</a></li>
<li><a href="#">Le Blog</a></li>
<li><a href="Enregistrement_utilisateur.php" class="current">Créer Compte</a></li>
<li><a href="Contactez_Nous.php">Contact</a></li>
</ul>
</nav>
<!--end menu-->
<!--end header-->
</header>
<!--start intro-->
<div id="intro">
<div class="group_bannner_right">
<img src="images/picture_rev01.png" width="360" height="207" alt="baner">
</div>
<header class="group_bannner_left">
<hgroup>
<h1>l'Efficacité énergétique en action</h1>
<h2>“Partager et Progresser“</h2>
</hgroup>
</header>
</div>
<!--end intro-->
<!--start holder-->
<div class="holder_content">
<section class="group1">
<p>
<h3>Rejoindre les Utilisateurs </h3>
</p>
</section>
<section class="group2">
<span style="font-family: Arial, 'Arial Unicode MS', Helvetica, sans-serif; font-size: 14px;">
<form name="inscription" method="post" action="Enregistrement_Utilisateur.php">
<br />
<input type="text" name="prenom" id="prenom" placeholder="Prénom" size="45" maxlength="50" required autofocus/>
<br />
<br />
<input type="text" name="nom" id="nom" placeholder="Nom" size="45" maxlength="50" required autofocus/>
<br />
<br />
<input type="text" name="adresse_courriel" id="Adresse_courriel" placeholder="Adresse courriel" size="45" maxlength="50" required autofocus/>
<br />
<br />
<input type="password" name="mot_de_passe" id="mot_de_passe" placeholder="Mot de Passe" size="45" maxlength="50" required autofocus/>
<br />
<br />
<label for="conditions_generales">J'accepte les conditions générales</label>
<input type="checkbox" name="conditions_generales" id="conditions_generales" required />
<br />
<br />
<input type="submit" name="valider" value="OK"/>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
</form>
<!--DEBUT TRAITEMENT DES DONNEES SAISIES PHP-->
<?php
print_r($_POST);
// *****************************************************************
// FONCTIONS
// *****************************************************************
/*
** Function : securite_input(,)
** Entree : ($a,&$b) ou $a représente la typologie de la variable à questionner et &$b un pointeur sur la variable à questionner
** Sortie : paramètre(s) en sortie 1 si le contrôle est OK, 0 sinon
** Description : fonction de contrôle, sécurisation spécifique par type d'input (cf document stratégie de sécurité)
** Createur : PMr
** Date : 12/04/2014
*/
function securite_input($a,&$b)
{
if ($a == 1)
// Saisie d’un nombre entier.
{
echo "nombre entier";
}
// Saisie de caractères nombres décimaux
elseif ($a == 2)
{
echo "nombre décimal";
}
// Saisie de caractères prédéfinis dans les prénoms, noms...
elseif ($a == 3)
{
if (preg_match("/^[a-zA-Z àâéèêôùûçÀÂÉÈÔÙÛÇäöïëüÄÖËÜÏ]*$/",$b))
{
// La chaine saisie est acceptable, on la sécurise
$b = addcslashes($b, '%_<>');
$b = mysql_real_escape_string($b);
$b=trim($b);
return (1);
//
}
else
{
// La chaine n'est pas acceptable
return (0);
//
}
}
// Saisie de mots de passe
elseif ($a == 4)
{
//
// Contraintes de sécurité contre les injections SQL…
//
$b = addcslashes($b, '%_<>');
$b = mysql_real_escape_string($b);
$b=trim($b);
//
// Contraintes de sécurité relative à l'historique mot de passe : 3 occurences
//
// Reste à faire
// si OK, $historique=1 – sinon $historique=0
$historique=1;
//
// Contraintes de sécurité relative à l'historique mot de passe : 3 occurences
//
// Reste à faire
// si OK, $vie_mini_mot_de_passe=1 – sinon $vie_mini_mot_de_passe=0 - 30 jours
$vie_mini_mot_de_passe=1 ;
// Contraintes de complexité N°1 : Ne pas contenir tout ou partie du nom ou du prénom du user ou du nom du site
// Reste à faire
// si OK, $banal=1 – sinon $banal=0
$banal=1 ;
// Contraintes de complexité
$Password = $b;
// Si la longueur de la chaîne $Password est inférieure à 8 ou supérieure à 25 on retourne FALSE
if ((strlen($Password) < 7) OR (strlen($Password)>25))
{
return(0);
}
// On supprime les accents de la chaîne $Password
$Password = strtr($Password, 'ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ', 'AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn');
// On initialise le compteur catégorie de caractères
$iReturn = 0;
// Détection minuscules
if (preg_match('`[a-z]`', $Password) === 1) $iReturn++;
// Détection majuscules
if (preg_match('`[A-Z]`', $Password) === 1) $iReturn++;
// Détection chiffres
if (preg_match('`[0-9]`', $Password) === 1) $iReturn++;
// Détection caractères spéciaux
if (preg_match('`[^a-zA-Z0-9]`', $Password) === 1) $iReturn++;
if ($iReturn < 3)
{
return(0);
}
else
{
return(1);
}
}
// Contrôle de l'adresse email
elseif ($a == 10)
{
// On rend inoffensives les balises HTML que le visiteur a pu rentrer
$b = htmlspecialchars($b);
// controle de la syntaxe de l'adresse mail
if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $b))
{
return(1);
}
else
{
return(0);
}
}
}
// *****************************************************************
// FIN DU CHAPITRE FONCTIONS
// *****************************************************************
if(isset($_POST['valider']))
{
// print_r($_POST);
// *****************************************************************
// VALIDATION DES DONNEES SAISIES
// *****************************************************************
// Validation du prenom saisi
$prenom=$_POST['prenom'];
$b=$prenom;
$result=securite_input(3,$b);
$prenom=$b;
$result = intval($result);
if ($result==1)
{
// echo ' ** prenom : fonction securite_input sortie OK tu as saisi :'.$prenom.'<br />';
}
else
{
// echo ' !! prenom : fonction securite_input sortie NOK tu as saisi :'.$prenom.'<br />';
// Retour au formulaire de saisie - zone à vide
}
// Validation du nom saisi
$nom=$_POST['nom'];
$b=$nom;
$result=securite_input(3,$b);
$nom=$b;
$result = intval($result);
if ($result==1)
{
// echo ' ** nom : fonction securite_input sortie OK tu as saisi :'.$nom.'<br />';
}
else
{
// echo ' !! nom : fonction securite_input sortie NOK tu as saisi :'.$nom.'<br />';
// Retour au formulaire de saisie - zone à vide
}
// Validation adresse email saisie
$adresse_mail=$_POST['adresse_courriel'];
$b=$adresse_mail;
$result=securite_input(10,$b);
$adresse_mail=$b;
$result = intval($result);
if ($result==1)
{
// echo ' ** '.$adresse_mail.'<br />';
}
else
{
// echo ' !! adresse mail incorrecte'.$adresse_mail.'<br />';
// Retour au formulaire de saisie - zone à vide
}
// Validation du mot de passe saisi
$mot_passe=$_POST['mot_de_passe'];
$b=$mot_passe;
$result=securite_input(4,$b);
$mot_passe=$b;
$result = intval($result);
if ($result==1)
{
// echo ' ** mot de passe : fonction securite_input sortie OK tu as saisi :'.$mot_passe.'<br />';
// Hashage et Salage Mot de Passe
$hash_mot_passe = hash('sha256', $mot_passe);
// ATTENTION : Salage créé homemade en attente upgrade PHP 5.5 //
// pas de salage auto avec php 5.4.12 technique perso //
// concatenation de nom + prenom + premier mot de passe //
$salage_utilisateur=$nom.$prenom.$mot_passe;
$hash_mot_passe_salé = hash('sha256', $mot_passe.$salage_utilisateur);
// echo ' ** mdp h&s :'.$hash_mot_passe_salé.'<br />';
}
else
{
// echo ' !! mot de passe : fonction securite_input sortie NOK tu as saisi :'.$mot_passe.'<br />';
// Retour au formulaire de saisie - zone à vide
}
}
else
{
// echo 'LE FORMULAIRE NE FONCTIONNE PAS';
}
// ========================================================================
// FIN DE VALIDATION DES DONNEES SAISIES
// ========================================================================
// *****************************************************************
// PREPARATION DES DONNEES AVANT INSERTION DANS LA BASE DE DONNEES
// *****************************************************************
// ========================================================================
// FIN DE PREPARATION DES DONNEES AVANT INSERTION DANS LA BASE DE DONNEES
// ========================================================================
// ************************************************************************
// INSERTION DES DONNEES DANS LA BASE DE DONNEES
// ************************************************************************
// reste à faire
// ========================================================================
// FIN INSERTION DES DONNEES DANS LA BASE DE DONNEES
// ========================================================================
?>
</span>
</section>
</div>
<!--end holder-->
</div>
<!--end container-->
<!--start footer-->
<footer>
<div class="container">
<div id="FooterTwo"> Valid html5, design and code by <a href="http://freehtml5templates.com">Free HTML5 Templates</a> </div>
</div>
</footer>
<!--end footer-->
</body></html>
je ne comprends pas comment il fonctionne pour les variables prenom, nom et mot_de_passe et pas pour adresse_courriel....
tout me semble pourtant OK....