Bonjour,

Je ne sais pas trop si c'est ici que je dois poster, car il s'agit de PhP, mais pas forcément de BDD...

Je suis en train de développer un carnet de vol. En gros, je récupère les valeurs d'une base SQL, selon des dates butées, et je les affihe dans des tableaux.
Comme ceci:
Nom : dates.png
Affichages : 76
Taille : 31,1 Ko

Je souhaite donc que dans le premier champ date, lorsque l'utilisateur clique sur Display Flight Time, il y ai la dernière date qu'il a choisie. Je me suis donc orienté vers le Cookie.

Création du Cookie, en début de fichier

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
If (isset($_POST['datestart'])) {
$temps = 24*3600;
setcookie ("datestart", switchdate($_POST['datestart']), time() + $temps);
function redirection($url){
if (headers_sent()){
print('<meta http-equiv="refresh" content="0;URL='.$url.'">');
}
else {
header("Location: $url");
}
}	
redirection ('flight_times.php');
}
else {
echo 'La variable du formulaire pas déclarée.';
}
?>

Pui récupération de la valeur du Cookie plus bas dans le fichier:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<?
if (isset($_COOKIE['datestart'])) 
{
echo 'Date de début '.($_COOKIE['datestart']).' !';
}
?>								
<input class="inputs" name="datestart" type="date" value="<?php ($_COOKIE['datestart']) ?>">
<?php
if(isset($_POST['datestart']))      $datestart=($_COOKIE['datestart']);
else $datestart = "2009-12-01"	;
?>


Comme on peut le voir sur la première image, j'arrive à envoyer un Cookie avec la valeur date, mais je ne parviens pas à faire en sorte qu'il s'affiche dans mon champ date.

Et j'ai en plus le message d'erreur qui s'affiche en haut de page comme si je n'avais pas rempli mon champ date:

Nom : formulaire.png
Affichages : 72
Taille : 20,3 Ko

J'ai bien essayé la fonction "switchdate", mais je n'ai pas l'impression que le problème vienne de là.

Auriez vous une idée?

D'avance merci

PS: Le but final étant ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
$db = mysqli_connect($localhost,$login,$pwd,$dbName)  or die('Erreur de connexion SQL'.mysql_error());
 
/* FI*/								
$req = "SELECT HOUR(SEC_TO_TIME(SUM(TIME_TO_SEC(sep_day_solo)))) AS fi FROM logbook WHERE role= 'FI' AND date BETWEEN '$datestart' AND '$dateend'";
$temps= $db -> query ($req) ; 
$data = mysqli_fetch_assoc($temps);
$somme=$data['fi'];