Problème dans un code PHP

Truncky Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -  
Bionik Messages postés 4232 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
Mon code php doit comporter des erreurs, car il ne s'exécute pas sur a page assignée :(

Si quelqu'un pourrait m'aider, corriger le code Merci ! :)
+ C'est un formulaire d'inscription, relié à une BDD.

Code:

<?php

include('sql.php');

$erreurMySQL = mysql_error();
if($erreurMySQL != '')
{
echo '<hr />Le fichier sql.php a mal été configuré, les infos sont incorrect !' ;
exit;
}

// Sécurité des variables

$nom = secure($_POST['nom']);
$passe = secure($_POST['passe']);
$passe2 = secure($_POST['passe2']);
$email = secure($_POST['email']);
$url = secure($_POST['url']);

// fin Sécurité des variables





if(!empty($_POST['nom']) AND !empty($_POST['passe']) AND !empty($_POST['email'])) AND !empty($_POST['url'])) // Si les variables ne sont pas nul
{

if(preg_match("#^[a-zA-Z0-9\[\]_-]{3,30}$#", $_POST['nom'])) // Si le pseudo respecte les conditions
{

if(preg_match('#^[a-zA-Z0-9]{4,12}$#', $_POST['passe'])) // Si le passe respecte les conditions
{



if(preg_match('#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-zA-Z]{2,4}$#', $_POST['email'])) // Si l'adresse email est une adresse valide
{



if($passe == $passe2) // Si les 2 passes rentrés sont les mêmes.
{






// Génération de la clef pour validé l'inscription
$clef = sha1(microtime(NULL)*100000);

mysql_query("INSERT INTO membres VALUES('', '" . $nom . "', '" . hacher($passe) . "', '" . $email . "', '" . $url . "' '" . $_SERVER['REMOTE_ADDR'] . "')");
echo '
<div class="bloc2">
<h3><span>Etape 3/3 : Inscription réussi !</span></h3>
<div class="texte">
<font color="DodgerBlue"><strong>Mes identifiants</strong></font>
<div class="separate"></div><br />
<b>Votre pseudo : <font color="red">' . $nom . '</font><br />
Votre mot de passe : <font color="red">' . $passe . '</font></b><br /><br />
<div class="desavertissement"><center><b><a href="index.php">Aller à l\'accueil</a></b></center></div>
</div>
</div>';
$idPseudo = mysql_insert_id();





}
else
{
avert('Les 2 mots de passe que vous avez rentrés ne correspondent pas.');
}




}
else
{
avert('L\'adresse email n\'est pas une adresse email valide.');
}



}
else
{
avert('Le mot de passe n\'est pas un mot de passe valide.');
}


}
else
{
avert('Le nom de la salle doit avoir entre 3 et 15 caractère.');
}
}
else
{

avert('Vous n\'avez pas rempli tous les champs.');

}

?>

<form method="post" action="inscription.php">

<div class="bloc2">
<h3>Etape 2/3 : Informations Personnelles</h3>
<div class="texte">
<center>Les champs précédés d'une étoile <font color="red" size="4"><strong>*</strong></font> sont obligatoires.</center><br /><br />
<font color="DodgerBlue"><strong>Mes identifiants</strong></font>
<div class="separate"></div><br />
<label for="pseudo"><font color="red">* Pseudo</font> :</label> <input type="text" id="nom" name="nom" /><br/>
<label for="passe"><font color="red">* Mot de passe</font> :</label> <input id="passe" type="password" name="passe" onkeyup="evalPwd(this.value);" /><br />
<label for="passe2"><font color="red">* Confirmation</font> :</label> <input id="passe2" type="password" name="passe2" /><br/>
<label for="email"><font color="red">* Adresse Email</font> :</label> <input id="email" type="text" name="email" value="<?php echo $email; ?>" /><br/><br />

<center><input type="submit" value="Inscription" /></center>
</div>
</div>
</form>
A voir également:

4 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
tu fais appel a des fonctions
secure
avert

où sont -elles ?
0
Truncky Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
 
Je sais pas, j'ai pris cette partie sur un fichier tout fait.
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
cherches il doit te manquer qq chose

dans ce fichier tout fait tu devait avoir un include('quelque_chose.php');
0
Bionik Messages postés 4232 Date d'inscription   Statut Modérateur Dernière intervention  
 
Salut,

il manque effectivement quelque chose mais tu peux juste utiliser la fonction htmlspecialchars() pour sécuriser tes variables reçues dans le formulaire.

Ça donnerait quelque chose comme ceci: $nom = htmlspecialchars($_POST['nom']); ....
0