Quelqu'un a un conseil pour écire le script $_POST correctement ?
voilà le script original de mon tutorial (script qui applique les données ds une base MySql à partir d'un formulaire Sign up! mais pour register_global ON seulement);
----------------------------------------------------------------------------------------------------------------------- $query=mysql_query("insert into plus_signup(userid,password,email,name,sex) values('$userid','$password','$email','$name','$sex')" -----------------------------------------------------------------------------------------------------------------------
Mais bien entendu pour des raisons de sécurité, je ne veux pas la valeur de mon register_global à ON mais à OFF. Ce tutorial m'indique que ds ce cas que je dois utiliser $_POST['username'] ...
Alors j'ai essayé plusieurs façon tels;
$query=mysql_query("INSERT INTO plus_signup VALUES('$_POST[userid]', '$_POST[password]', '$_POST', '$_POST[name]', '$_POST[sex]' )";
$result = mysql_query($query) or die(mysql_error());
OU BIEN :
$insert=mysql_query("INSERT INTO plus_signup VALUES('$_POST[userid]', '$_POST[password]', '$_POST', '$_POST[name]', '$_POST[sex]' )";
$insert = mysql_query($insert) or die (mysql_error());
Mais aucun résultat ds ma base MySql, rien ne semble fonctionner... ??? que j'utilise simplement une mauvaise combinaison ? ou syntax ? ce serait sympath d'avoir un petit hint ! Merci !
d'abord avant d'insérer quoi que ce soit dans la base de données il faut vérifier que les valeurs retournées sont correctes et exemptes d'injections SQL
en faisant par exemple : if (!empty($_POST['name'])){ $name = mysql_real_escape_string($_POST['name']); }
Ensuite ton INSERT n'est pas bon, ni ta syntaxe php. On fait pas 2 fois mysql_query.
- il manque le nom des champs qui vont recevoir les valeurs - ton user id devrait être autoincrémenté et non pas saisissable. on lui donnera donc la valeur '' dans l'INSERT - ensuite $_POST ? oui ? c'est pour quoi ? :p