Message posté par : croy (cdrcroy(a)gmail.com)
----------------------------------------
Bonjour à tous,
J'essaie d'intégrer des données dans une base postgresql via un formulaire php.
J'arrive bien à intégrer des données dans UNE SEULE table via une requete INSERT INTO
mais je n'arrive pas à insérer des données dans plusieurs tables reliées avec des clés
étrangères via un seul formulaire :
exemple du code ci-dessous : je remplis la table geolive.prestation puis je récupère
l''id_prestation pour remplir la table geolive.diagnostic. Ca fonctionne bien sous
pgadmin mais ca ne fonctionne pas en php.
voici le php :
-----------------
Code :
$date_prestation = $_POST["date_prestation"];
$obs_prestation = $_POST["obs_prestation"];
$obs_conseil = $_POST["obs_conseil"];
$poids_recolte_tritu = $_POST["poids_recolte_tritu"];
$nb_litres = $_POST["nb_litres"];
$id_agent = $_POST["id_agent"];
$id_prop = $_POST["id_prop"];
$id_olivier = $_POST["id_olivier"];
$etat_sanitaire = $_POST["etat_sanitaire"];
$obs_diagnostic = $_POST["obs_diagnostic"];
$img_diag = $_POST["img_diag"];
$query = pg_query($connexion, "WITH ins1 AS
(INSERT INTO geolive.prestation
(date_prestation,obs_prestation,obs_conseil,poids_recolte_tritu,nb_litres,id_agent,id_prop)
VALUES
('$date_prestation','$obs_prestation','$obs_conseil','poids_recolte_tritu','nb_litres','$id_agent','$id_prop')
RETURNING id_prestation) INSERT INTO geolive.diagnostic (id_prestation, id_olivier,
etat_sanitaire, obs_diagnostic, img_diag) SELECT
id_prestation,'$id_olivier','$obs_diagnostic','$etat_sanitaire',
'$obs_diagnostic', '$img_diag' FROM ins1;");
if ( $query ) {
echo(" La nouvelle prestation a bien été ajoutée !");
}
-----------------
Une erreur pourrait provenir du SELECT, il n'arriverait pas à aller chercher dans le
formulaire pour remplir la table?
Si vous avez des pistes, je vous en remercie d'avance,
Cédric
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=348778#p348778
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net