Problème de formulaire d'insertion (vérification)
Résolu
polarbird
Messages postés
125
Statut
Membre
-
Kaldoran Messages postés 146 Statut Membre -
Kaldoran Messages postés 146 Statut Membre -
Bonjour à tous,
Je viens vers vous car j'ai un problème avec les vérifications de mon formulaire d'insertion php (vérifier si un membre a un pseudo unique,si les 2 mdp sont identiques,etc...)
Je planche dessus depuis plusieurs jours.
Voici mon code :
Je vous remercie d'avance de votre aide.
polarbird
Je viens vers vous car j'ai un problème avec les vérifications de mon formulaire d'insertion php (vérifier si un membre a un pseudo unique,si les 2 mdp sont identiques,etc...)
Je planche dessus depuis plusieurs jours.
Voici mon code :
<?php
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('test', $base);
$sql = 'SELECT count(*) FROM membres WHERE pseudo="'.mysql_escape_string($_POST['pseudo']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
if(isset($_POST['pseudo']) && (isset($_POST['email']) && (isset($_POST['mdp']) && (isset($_POST['mdp2']) && (isset($_POST['avatar']) && (isset($_POST['pays'])))))))
{
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('test', $base);
$sql = 'SELECT count(*) FROM membres WHERE pseudo="'.mysql_escape_string($_POST['pseudo']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
if ($data[0] == 0)
{
if ($_POST['mdp'] == $_POST['mdp'])
{
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('test', $base);
$sql = 'INSERT INTO membres VALUES("","'.$_POST['pseudo'].'","'.$_POST['email'].'","'.mysql_escape_string(md5($_POST['mdp'])).'","'.$_POST['avatar'].'","'.$_POST['auth'].'","'.$_POST['pays'].'","'.time().'","","","")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
session_start();
$_SESSION['pseudo'] = $_POST['pseudo'];
header('Location: index.php');
exit();
}
else
{
$erreur = '<p>Vos mots de passe doivent être identiques</p>';
}
}
else
{
$erreur = '<p>Votre pseudo est déjà pris</p>';
}
}
else
{
$erreur = '<p>Il faut remplir tous les champs</p>';
}
?>
Je vous remercie d'avance de votre aide.
polarbird
A voir également:
- Problème de formulaire d'insertion (vérification)
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Touche insertion clavier - Guide
- Insertion sommaire word - Guide
1 réponse
<?php
if(isset($_POST['pseudo']) && (isset($_POST['email']) && (isset($_POST['mdp']) && (isset($_POST['mdp2']) && (isset($_POST['avatar']) && (isset($_POST['pays'])))))))
{
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('test', $base);
/* un ajout ci dessous */
$sql = 'SELECT count(*) /* ajout : As Total */ FROM membres WHERE pseudo="'.mysql_escape_string($_POST['pseudo']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
/* Partie fausse
if ($data[0] == 0) // ICI IL Y A UNE ERREUR, tu fais un $data[0] alors que tu as fais un mysql_fetch_array
{
*/
if ($data['Total'] == 0) // Correction
{
if ($_POST['mdp'] == $_POST['mdp2']) // comparer 2 fois le meme mdp ne sert a rien :p ; tu avais oublier le 2
{
/* $base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('test', $base); // Tu as deja une connexion a la Bdd :D</bold>
*/
$sql = 'INSERT INTO membres VALUES("","'.$_POST['pseudo'].'","'.$_POST['email'].'","'.mysql_escape_string(md5($_POST['mdp'])).'","'.$_POST['avatar'].'","'.$_POST['auth'].'","'.$_POST['pays'].'","'.time().'","","","")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
session_start();
$_SESSION['pseudo'] = $_POST['pseudo'];
header('Location: index.php');
exit();
}
else
{
$erreur = '<p>Vos mots de passe doivent être identiques</p>';
}
}
else
{
$erreur = '<p>Votre pseudo est déjà pris</p>';
}
}
else
{
$erreur = '<p>Il faut remplir tous les champs</p>';
}
?>
Ps : désolé pour l'indentation :/