Recupération de données d'un formulaire impossible !

Bonjour,
je vous expose mon problème qui est assez urgent car j'ai un enorme projet a rendre et je suis bloqué pour quelque chose de pas si compliqué que ça !
Donc j'ai une page "auth.php" qui contient un formulaire pour créer un compte sur ma base de donnée et une page "create.php" qui récupère les variables et les rentres dans la base de donnée . Le problème c'est que je tombe toujours sur " Notice: Undefined index: TEST in C:\wamp\www\test\Sanstitre-5.php on line 3" pour chacune de mes variables donc apparemment mon $_POST ne récupère pas les données ! J'ai beau chercher je ne trouve pas !

"create.php"

<?php
$connection = mysql_connect("localhost","root","root");
// test la connection
if ( ! $connection )
die ("connection impossible");
// Connecte la base
mysql_select_db('competences') or die ("pas de connection");

$_POST['name'] = $name ;
$_POST['password'] = $pass;
$_POST['mail'] = $mail ;
$_POST['first_name'] = $first_name;
$_POST['type'] = $type;
$host = 'localhost';
$user = 'root';
$bdd = 'competences';

$cnx = mysql_connect( "localhost", "root", "root" ) ;
$db = mysql_select_db( "competences" ) ;

$sql = "INSERT INTO user (first_name, last_name, password, email, registered_at)
VALUES ('$_POST[first_name]','$_POST[name]','$_POST[password]','$_POST[mail]','$_POST[type]') " ;

//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;

//affichage des résultats, pour savoir si l'insertion a marchée:
if($requete)
{
echo("L'insertion a été correctement effectuée") ;
}
else
{
echo("L'insertion à échouée") ;
}
?>
?>

"auth.php"

<html>
<link rel="stylesheet" type="text/css" href="style.css" />
<head><title>Création de compte utilisateur</title></head>
<body>
<center>
<center> <h4> Création de compte utilisateur </h4> </center>
<br /><br /></center>
<center>

<form name="creation" action="create.php" method='POST' >

<table border="0" width="30%">
<center>
<tr>
<select name="type" type="text">
<option value="Enseignant">Enseignant</option>
<option value="Eleve">Eleve</option>
</select>
</tr>
<tr>
<td><center>Nom d'utilisateur : </center></td>
<td><center><input type="text" name=" "/><center></td>
</tr>
<tr>
<td><center>Nom</center></td>
<td><center><input type="text" name=" "/><center></td>
</tr>
<tr>
<td><center>Mot de passe : </center></td>
<td><center><input type="password" name=" "/></center></td>
</tr>
<tr>
<td><center>E-mail </center></td>
<td><center><input type="text" name=" "/><center></td>
</tr>
<tr>
<td><center>Prenom : </center></td>
<td><center><input type="text" name=" "/><center></td>
</tr>
</table><br /><br /></center>
<center>
<input type="submit" value="send" />
</form> </center>

</center>
</body>

7 réponses

  1. Bonjour,

    Comment veux-tu récupérer des variables qui n'ont pas de nom? x)
    Commence par donner l'attribue name de chaque input!
    1
    1. Ahhh oui a force de bidouiller partout pour trouver une solution j'ai laissé les inputs vides mais malheuresement ça ne fonctionne toujours pas quand je leurs donne le meme nom que dans mes $_POST !
      Franchement je dois absolument trouver la solution et je ne vois vraiment plus ou est le probleme ? Un probleme de configuration de PHP.ini ?
      0
      1. J'ai activer " register_global : on " mais ça ne fonctionne toujours pas , je suis perdu , j'ai besoin d'aide la !
        0
        1. $name =$_POST["name"];
          et pas
          $_POST['name'] = $name ; 

          Et pareil pour la suite.
          0
          1. Ouf ça a réglé la plupart des erreurs , il ne m'en reste plus qu'une !
            " You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@msn.com, Enseignant)' at line 2"
            0
            1. Ca doit venir de ce qu'il y a dans le champs email: essaie un
              $email = mysql_real_escape_string($_POST["mail"]);
              0
            2. Malheuresement ça ne marche pas , toujours la même erreur !
              Par contre j'ai remarque que quand je rentre " test" au lieu de "test@test.fr" j'obtiens " Unknown column 'Mana' in 'field list' " sachant que " Mana " est ce que je rentre dans le champs " name " !
              0
            3. Dans ce cas essaie de mettre $name $pass etc directement dans la requiete au lieu des $_POST .
              0
            4. C'est fait mais toujours aucun changement , je désespère de trouver une solution !
              0
          2. J'ai vraiment besoin d'aide , pour ceux qui n'ont pas suivis , mon problème maintenant est qu'avec ce code :
            "<?php
            $connection = mysql_connect("localhost","root","root");
            // test la connection
            if ( ! $connection )
            die ("connection impossible");
            // Connecte la base
            mysql_select_db('competences') or die ("pas de connection");

            $name = $_POST['name'] ;
            $first_name = $_POST['first_name'] ;
            $pass = $_POST['pass'] ;
            $mail = mysql_real_escape_string($_POST["mail"]);
            $type = $_POST['type'] ;
            $host = 'localhost';
            $user = 'root';
            $bdd = 'competences';

            $cnx = mysql_connect( "localhost", "root", "root" ) ;
            $db = mysql_select_db( "competences" ) ;

            $sql = "INSERT INTO user (id ,first_name, last_name, password, email, registered_at)
            VALUES ('', $first_name, $name, $pass, $mail, $type)" ;

            //exécution de la requête SQL:
            $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;

            //affichage des résultats, pour savoir si l'insertion a marchée:
            if($requete)
            {
            echo("L'insertion a été correctement effectuée") ;
            }
            else
            {
            echo("L'insertion à échouée") ;
            }
            ?>

            J'obtiens " You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@msn.com, Enseignant)' at line 2"
            J'ai besoin de vous !
            0
            1. Essaie de mettre tes variables entre simple quotes dans ta requete.
              0