Code : Tout sélectionner
Erreur SQL :
ERROR: invalid input syntax for type date: "NULL"Code : Tout sélectionner
Erreur SQL :
ERROR: invalid input syntax for type date: ""Code : Tout sélectionner
INSERT INTO ........ (champ_date, ...) VALUES ('Null',...)Code : Tout sélectionner
INSERT INTO ........ (champ_date, ...) VALUES (Null,...)ok ça ça marche, parfait,Code : Tout sélectionner
INSERT INTO ........ (champ_date, ...) VALUES (Null,...)
$sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES ($id[0],".$_SESSION[DateSortie]."')";
et cette variable prends comme valeur ' "" ' quand elle est vide, je ne peut pas mettre 'Null', parceque dans mon code je vérifie si la date est entré dans le bon format par un ereg. $sortie = isset($_SESSION[DateSortie]) ? $_SESSION[DateSortie] : "NULL";
$sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES ($id[0],".$sortie .")";$sortie = isset($_SESSION[DateSortie]) ? $_SESSION[DateSortie] : "NULL";
$sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES ('$id[0]','".$sortie.")";
if (pg_query($sqlessai)){echo 'Insertion essai OK'."<br>";}
donneCode : Tout sélectionner
Warning: pg_query(): Query failed: ERROR: invalid input syntax for type date: "" in /var/www/Ekoke/Inc/NewInscription3Inc.php on line 617...('$id[0]','".$sortie.")
il y a une apostrophe surnuméraire après la virgule entre $id et $sortie
...(". $id[0] .",".$sortie.")
On peut même enlever les apostrophes autour de $id[0] si c'est un entier.$sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES ($id[0],".$sortie.")";
je reçois ceci comme erreurCode : Tout sélectionner
Warning: pg_query(): Query failed: ERROR: syntax error at or near ")" at character 59 in /var/www/Ekoke/Inc/NewInscription3Inc.php on line 617sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES ($id[0],'".$sortie."')"; , mais alors là il ne reconnais pas le NULL mais " "$sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES (". $id[0] .",".$sortie.")";
echo($sqlessai);
ce qui va arriver ensuite au SGBD sera :
Code : Tout sélectionner
INSERT INTO dossier (idparticipant, dossortie) VALUES (1234,12345)Code : Tout sélectionner
INSERT INTO dossier (idparticipant, dossortie) VALUES (1234,NULL)INSERT INTO dossier (idparticipant, dossortie) VALUES (59,)
donc il ne met rien il faudrait avoir NULL après la virguleINSERT INTO dossier (idparticipant, dossortie) VALUES (59,NULL)<?php
$sortie = isset($_SESSION[DateSortie]) ? $_SESSION[DateSortie] : NULL;
if($sortie != null)
{
$sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES (". $id[0] .",". $sortie .")";
}
else
{
$sqlessai = "INSERT INTO dossier (idparticipant) VALUES (". $id[0] .")";
}
?>
Si ça marche pas avec ça, c'est que l'erreur est bien avant dans le code.<?php
$sortie = isset($_SESSION['DateSortie']) ? $_SESSION['DateSortie'] : "NULL";
$sqlessai = "INSERT INTO dossier (idparticipant, dossortie) VALUES ($id[0],".$sortie .")";
echo($sqlessai);
?>
J'ai rajouté des apostrophes oubliées sur les index de variable de session.