SQL/PHP: Erreur de syntax HELP !

Résolu
pierrej35 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
pierrej35 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à toute la communauté,


Je programme depuis un bon moment sur HTML/CSS mais depuis pas longtemps. Je "m'amuse" sur PHP et Mysql.

Pour bien commencer. J'ai voulu me lancer dans la création d'un formulaire d'inscription.
Bien que j'ai quelques bases. Je ne suis pas encore très doué avec le SQL. Et mon formulaire me retourne une erreur de syntax que je ne parviens pas à trouver.

Message que SQL me retourne:

Erreur SQL !INSERT INTO membre VALUES("", "a", "0cc175b9c0f1b6a831c399e269772661", "a", "a", "a", "a", "a", "a", "a", "a", "a",)
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

Pouvez-vous m'aider ?

Voici le code de la page d'inscription:

<?php
// on teste si le visiteur a soumis le formulaire
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {
 // on teste l'existence de nos variables. On teste également si elles ne sont pas vides
 if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm'])) && (isset($_POST['nom']) && !empty($_POST['nom'])) && (isset($_POST['prenom']) && !empty($_POST['prenom'])) && (isset($_POST['age']) && !empty($_POST['age'])) && (isset($_POST['formation1']) && !empty($_POST['formation1'])) && (isset($_POST['formation2']) && !empty($_POST['formation2'])) && (isset($_POST['formation3']) && !empty($_POST['formation3'])) && (isset($_POST['email']) && !empty($_POST['email'])) && (isset($_POST['telephone']) && !empty($_POST['telephone'])) && (isset($_POST['avatar']) && !empty($_POST['avatar']))) 
 {
 // on teste les deux mots de passe
 if ($_POST['pass'] != $_POST['pass_confirm']) {
  $erreur = 'Les 2 mots de passe sont différents.';
 }
 else {
  $base = mysql_connect ('blabla','blabla','blabla');
  mysql_select_db ('blabla', $base);

  // on recherche si ce login est déjà utilisé par un autre membre
  $sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
  $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
  $data = mysql_fetch_array($req);

  if ($data[0] == 0) {
  $sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['nom']).'", "'.mysql_escape_string($_POST['prenom']).'", "'.mysql_escape_string($_POST['age']).'", "'.mysql_escape_string($_POST['formation1']).'", "'.mysql_escape_string($_POST['formation2']).'", "'.mysql_escape_string($_POST['formation3']).'", "'.mysql_escape_string($_POST['email']).'", "'.mysql_escape_string($_POST['telephone']).'", "'.mysql_escape_string($_POST['avatar']).'",)';
  mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

  session_start();
  $_SESSION['login'] = $_POST['login'];
  header('Location: membre.php');
  exit();
  }
  else {
  $erreur = 'Un membre possède déjà ce login.';
  }
 }
 }
 else {
 $erreur = 'Au moins un des champs est vide.';
 }
}
?>
<html>
<head>
<title>Inscription</title>
</head>

<body>
Inscription à l'espace membre :<br />
<form action="complet.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br />
Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br />
Nom : <input type="text" name="nom" value="<?php if (isset($_POST['nom'])) echo htmlentities(trim($_POST['nom'])); ?>"><br />
Prénom : <input type="text" name="prenom" value="<?php if (isset($_POST['prenom'])) echo htmlentities(trim($_POST['prenom'])); ?>"><br />
Age: <input type="text" name="age" value="<?php if (isset($_POST['age'])) echo htmlentities(trim($_POST['age'])); ?>"><br />
Formation/Experience 1 : <input type="text" name="formation1" value="<?php if (isset($_POST['formation1'])) echo htmlentities(trim($_POST['formation1'])); ?>"><br />
Formation/Experience 2 : <input type="text" name="formation2" value="<?php if (isset($_POST['formation2'])) echo htmlentities(trim($_POST['formation2'])); ?>"><br />
Formation/Experience 3 : <input type="text" name="formation3" value="<?php if (isset($_POST['formation3'])) echo htmlentities(trim($_POST['formation3'])); ?>"><br />
Email : <input type="text" name="email" value="<?php if (isset($_POST['email'])) echo htmlentities(trim($_POST['email'])); ?>"><br />
Téléphone : <input type="text" name="telephone" value="<?php if (isset($_POST['telephone'])) echo htmlentities(trim($_POST['telephone'])); ?>"><br />
Avatar: <input type="text" name="avatar" value="<?php if (isset($_POST['avatar'])) echo htmlentities(trim($_POST['avatar'])); ?>"><br />
<input type="submit" name="inscription" value="Inscription">
</form>
<?php
if (isset($erreur)) echo '<br />',$erreur;
?>
</body>
</html>


MERCI d'avance !!! :D

A voir également:

3 réponses

DDD
 
Tu as une virgule de trop à la fin.
0
reaverlost Messages postés 150 Date d'inscription   Statut Membre Dernière intervention   21
 
Salut,

Y'a une virgule en trop dans tes INSERT.

Retires les dernières virgules avant de fermer tes parenthèses.
0
pierrej35 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
Merci bien ! ;)
0
pierrej35 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
HAHAHA !!!! (honte à moi)

C'est bon !
Merci DDD !

Sujet résolu. ^^
0