données non insérées dans la BDD (champ vide)
Bonjour,
J'ai un problème j'espère que vous pourrez m'aider à le résoudre
j'ai un formulaire basique en HTML avec 6 champs à remplir (id_salarie, id_pc, nom, prenom, telephone, service) qui utilise la méthode POST
ce fichier appelle le script add_salarie.php dont voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <?php
// connexion à la base
$db = mysql_connect('localhost', 'root', 'root') or die('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db('gestion-parc',$db) or die('Erreur de selection '.mysql_error());
// on écrit la requête sql
$sql = "INSERT INTO SALARIE(id_salarie,id_pc, nom, prenom, telephone, service) VALUES('$id_salarie','$id_pc','$nom','$prenom','$telephone','$service')";
// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
// on affiche le résultat pour le visiteur
echo 'Les données on été correctement ajoutées à la table SALARIE.';
mysql_close(); // on ferme la connexion
?> |
PREMIER ESSAI
Je rentre des valeurs au formulaire je valide le message Les données on été correctement ajoutées à la table SALARIE, apparait.
Je vais voir dans ma base de données, une ligne a bien été ajouté mais aucune valeur n'apparait, tout les champs sont vides.
DEUXIEME ESSAI
avec des valeurs différentes je relance le formulaire voici l'erreur :
Erreur SQL !INSERT INTO SALARIE(id_salarie, id_pc, nom, prenom, telephone, service) VALUES('','','','','','')
Duplicate entry '' for key 1
Logique il veut réinsérer une ligne vierge mais il y en a déja une...
Quelqu'un a une idée , pourquoi mes valeurs ne sont pas prises en compte surement une erreur de codage PHP ?
pour info mon serveur mysql est sur un serveur linux (ip 10.0.0.15), j'exécute le formulaire depuis un poste client xp.
Si depuis le client je me connecte à phpmyadmin (http://10.0.0.15/phpmyadmin), que je vais dans SQL et lance une requete INSERT INTO ... VALUES ('123','456','testnom','test_prenom'....);
Là sa fonctionne...
Mais je voudrais faire l'ajout des informations depuis le formulaire html
Merci pour votre aide
A++