Mysql
 sql >> Base de données >  >> RDS >> Mysql

Le formulaire ne s'enregistre pas dans la base de données

Tout d'abord, bien que je déteste généralement ces suggestions, avez-vous envisagé d'utiliser un document Google avec un formulaire frontal ? C'est un moyen très simple pour les non-développeurs d'obtenir des données de personnes et de les faire arriver dans une feuille de calcul.

À part cela, je suppose que vous utilisez une clé primaire à incrémentation automatique, puis-je suggérer de modifier votre requête en :

if(mysql_query("INSERT INTO basicInfo VALUES(null, '{$_POST['first]}', '{$_POST['last']}', '{$_POST['email']}', '{$_POST['attendant']}', '$org', $time, 0, '', 1)"))
    {

J'ai changé votre '' en null, car vous voulez que la base de données y insère ce qu'elle veut. J'ai également changé la façon dont vous incluez les tableaux associatifs dans la chaîne de manière à rendre PHP plus heureux.

Pour nettoyer le tableau $_POST, quelque chose comme

$expected = array('first', 'last', 'expected', 'attendant');
foreach($expected as $k)
{
  $p[$k] = clean($_POST[$k]);
}
//then changing the query to use $p rather than $_POST, clearly. 

passé cela, comme d'autres l'ont suggéré, je vous recommande fortement d'utiliser mysql_real_escape_string() plutôt qu'une sorte de combo addslashes().

Publier les résultats de SHOW CREATE TABLE basicInfo; ou toute erreur aidera à résoudre les problèmes de MySQL.