Problème dans un code PHP

Fermé
Truncky Messages postés 13 Date d'inscription samedi 16 mars 2013 Statut Membre Dernière intervention 30 mars 2013 - 16 mars 2013 à 18:14
Bionik Messages postés 4234 Date d'inscription jeudi 19 août 2010 Statut Modérateur Dernière intervention 3 août 2016 - 18 mars 2013 à 16:19
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 dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
17 mars 2013 à 11:48
tu fais appel a des fonctions
secure
avert

où sont -elles ?
0
Truncky Messages postés 13 Date d'inscription samedi 16 mars 2013 Statut Membre Dernière intervention 30 mars 2013
17 mars 2013 à 18:11
Je sais pas, j'ai pris cette partie sur un fichier tout fait.
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
17 mars 2013 à 18:15
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 4234 Date d'inscription jeudi 19 août 2010 Statut Modérateur Dernière intervention 3 août 2016 183
18 mars 2013 à 16:19
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