[Requête SQL] insert de date
Bonjour à tous,
Je viens vers vous pour un problème que je n'arrive pas à résoudre.
Mon but est d'enregistré une date de debut et de fin, mais voilà, la date de fin ne s'enregistre jamais comme il faudrait.
Structure de ma table
Code:
1 2 3 4 5 6
|
id (INT) Auto-incrément (primary key) // ID unique de l'élément
idel (INT) // ID de l'élément pour lequel on enregistre ces dates
idu (INT) // ID de l'utilisateur
debut (DATE YYYY-MM-DD) // Date de début
fin (DATE YYYY-MM-DD) // Date de fin |
Je passe par un formulaire qui envoi ce dernier vers une page d'exécution dont voici le traitement
PS : Les dates sont introduite dans le formulaire au format JJ/MM/AAAA
PS bis : Je passe les détails de vérification
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
<?php
$idu = (isset($_POST['idu'])) ? $_POST['idu'] : 0; // ID de l'utilisateur
$idel = (isset($_POST['idel'])) ? $_POST['idel'] : 0; // ID de l'élément pour lequel définir des dates
$debut = (isset($_POST['debut'])) ? $_POST['debut'] : strftime("%d/%m/%Y",time());
$fin = (isset($_POST['fin']) && $_POST['fin'] != '') ? $_POST['fin'] : strftime("%d/%m/%Y",time());
// Reformatge des dates
list($d, $m, $y) = explode('/', $debut);
$debut_sql = $y."-".$m."-".$d;
list($df, $mf, $yf) = explode('/', $fin);
$fin_sql = $yf."-".$mf."-".$df;
// La requête d'insert
$req = "INSERT INTO ma_table VALUES('0','".$idel.",'".$idu."','".$debut_sql."','".$fin_sql."')";
// L'exécution de la requête
$qry = $pdo->query($req);
// Pour débogage j'affiche la requête
echo $req; |
Et voici ce que m'affiche '$req'
Citation:
INSERT INTO ma_table VALUES('0','1','2','2011-05-01','2012-04-31')
L'affichage de la requête final, montre clairement que les données sont correctes, le nombre de colonne aussi
Pourtant ma date de fin reste à 0000-00-00, et aucune erreur SQL, je ne comprend donc pas pourquoi ni comment cela est possible car dans l'absolu tout me semble correcte et compris le format de la date.
D'avance merci pour votre participation
Spliffer