cs_arkonara
Messages postés165Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention28 novembre 2009
-
24 févr. 2009 à 10:33
cs_arkonara
Messages postés165Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention28 novembre 2009
-
24 févr. 2009 à 11:50
Bonjour a tous, voila j'ai un petit problème.
J'ai un formulaire d'insertion dans ma base, ce formulaire concerne une table de ma base mais seulement certains champs. mon script d'insertion est bien lu par mon programme mais aucunes insertions n'est effectuée dans ma base. Voici mon script SQL INSERT.
<?php
require_once('../connexion.php');
if ($db)
{
//allocation des variables
$numFiche="";
$LienFiche="";
$dateicdt=$_POST['AnotherDate'];
$heuricdt=$_POST['heure_icdt'];
$desicdt=$_POST['descrip_icdt'];
$desresol="";
$dateresol="";
$heuresol="";
$inter="";
$observ=$_POST['observation'];
$motifreouv="";
$teamtrack="";
$remarqueresp="";
$majeur=$_POST['choix'];
$matereiel=$_POST['lstmateriel'];
$secteur=$_POST['lstSecteur'];
$staticdt="ouv";
$statuprod=$_POST['lstStatutProd'];
$declarant=$_POST['lstdeclarant'];
$query="SELECT NumEmploye FROM employer WHERE Nom='".$declarant."';";
$numemployer=mysql_query($query);
$prestataire=$_POST['lstPrestataire'];
$query ="INSERT INTO incidents VALUES( '$numFiche', '$LienFiche', '$dateicdt', '$heuricdt', '$desicdt', '$desresol', '$dateresol', '$heuresol', '$inter', '$observ', '$motifreouv', '$teamtrack', '$remarqueresp', '$majeur', '$matereiel', '$secteur', '$staticdt', '$statuprod', '$numemployer', '$prestataire')";
$result= mysql_query($query);
echo'L\'incident souhaiter a bien été renseigner !!';
}
else
{
'Problème a la connexion';
}
?>
ps: pour davantage de renseignement n'hesiter pas a me poser des questions
cs_arkonara
Messages postés165Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention28 novembre 2009 24 févr. 2009 à 10:47
bonjour sodam et merci d'avoir de ta reponse
j'ai donc ajouter or die(mysql_error()); et la reponse que j'obtiens me dit No database selected, hors je ne comprend car comme tu peux le voir au debut de mon script j'appel un fichier connexion.php qui gere justement les connexion a ma base.
cs_arkonara
Messages postés165Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention28 novembre 2009 24 févr. 2009 à 10:50
<?php
//paramètres de la connexion
$hostname = "localhost"; //nom du serveur
$database = "incidents_editiques"; //nom de la base de données
$username = ""; //nom d'utilisateur
$password = ""; //mot de passe
$db = mysql_connect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);
?>
cs_arkonara
Messages postés165Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention28 novembre 2009 24 févr. 2009 à 10:58
Voila le connexion.php que sa me donne
<?php
//paramètres de la connexion
$hostname = "localhost"; //nom du serveur
$database = "incidents_editiques"; //nom de la base de données
$username = ""; //nom d'utilisateur
$password = ""; //mot de passe
$db = mysql_connect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);
$link = mysql_connect('localhost', '', '');
if (!$link)
{
die('Impossible de se connecter : ' . mysql_error());
}// Rendre la base de données incidents_editiques, la base courante
$db_selected = mysql_select_db('incidents_editiques', $link);
if (!$db_selected)
{
die ('Impossible de sélectionner la base de données : ' . mysql_error());
}
?>
et voila le nouveau message d'erreur
Cannot add or update a child row: a foreign key constraint fails (`incidents_editiques/incidents`, CONSTRAINT `fk_Employer` FOREIGN KEY (`NumEmploye`) REFERENCES `employer` (`NumEmploye`))
cs_Sodams
Messages postés57Date d'inscriptionmercredi 11 juin 2008StatutMembreDernière intervention18 novembre 2009 24 févr. 2009 à 11:02
Traduit ton message d'erreur en français :-)
Tu as une clé étrangère dans ta table, le numéro d'employer.
Tu dois donc d'abord avoir créé l'empoyer que tu utilises dans l'incident.
Ici tu essaye d'ajouter un incident avec un numéro d'employer qui n'existe pas dans la table employer, d'où l'erreur.
cs_arkonara
Messages postés165Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention28 novembre 2009 24 févr. 2009 à 11:05
Alors y'a un gros prblème car je fait saisir a l'utilisateur un N°d'Employer en effet sauf que je lui fait saisir via une liste déroulante qui est alimenter par ma table employer. et le numero saisi est forcement dans ma table employer
cs_arkonara
Messages postés165Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention28 novembre 2009 24 févr. 2009 à 11:08
je viens de verifier et c'est bien ce que je dit les n°d'Employer present dans ma liste deroulante sont bien bien ceux de ma table employer et donc lemployer saisi existe forcement d'ou le message d'erreur qui devient un peu bizard par consequent