Sélectionner un mois pour afficher les résultats d 'une base de données

Eléphanteau du PHP | 21 Messages

18 juil. 2022, 15:37

Bonjour.
Je possède une base de donnée météo et je voudrais faire ressortir des résultats statistique pour les afficher dans un tableau.
Par exemple faire resortir toutes les donnees du mois d'avril 2021.

Toutefois je ne sais pas comment faire. j'arrive a creer le picker "mois"
<label for="start">Start month:</label>

    <input type="month" id="start" name="start"
       min="2018-03" value="2018-05">
    
mais je ne sais pas comment recuperer et exploiter la valeur .
Pouvez vous m'aider ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

18 juil. 2022, 15:50

Fais un var_dump($_POST) ou var_dump($_GET) en fonction de comment est envoyé ton formulaire pour voir ce que tu récupères comme info et sous quel format.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 21 Messages

18 juil. 2022, 16:12

Bonjour. je ne suis pas sur de mon coup. Voila ce que j'ai mis
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<title></title>
</head>
<body>
<label for="start">Start month:</label>

    <input type="month" id="month" name="month"
       min="2018-03" value="now">

    <input type="submit" value="Envoyer">
	<?php var_dump($_POST['month')  ?>
       
</body>
</html>

Eléphanteau du PHP | 21 Messages

18 juil. 2022, 16:18

finalement voici le resultat
string(7) "2022-05"

Eléphanteau du PHP | 21 Messages

18 juil. 2022, 17:50

j'ai fait ceci mais sans resultats
<?php include('login.php');?>

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<title></title>
</head>
<body>
<form action="pickermois.php" method="POST" name="month">	
<label for="start">Mois</label>
<input type="month" id="month" name="month"
       min="2020-06" value="now">
<input type="submit" value="Envoyer">
</form>

	<?php 
               if (isset($_POST['start'])) {
    $timestamp = strtotime($_POST['start']);

	$month = date('n', $timestamp);
    $sql = "SELECT date_format(Date,'%m/%Y ') AS Datum, TmpExt_Min, FROM Meteo_Mois WHERE MONTH(Date) = ('$month') ORDER BY ID DESC LIMIT 1";}

               $result = mysqli_query ($connect,$sql);
         while($row=mysqli_fetch_assoc($result)) 
               echo "{$row['TmpExt_Min']} C°";
               
                 ?>
       
</body>
</html>

Mammouth du PHP | 2703 Messages

18 juil. 2022, 17:54

il faut debugguer, par exemple, est-ce que cela rentre dans :
if (isset($_POST['start'])) {

Eléphanteau du PHP | 21 Messages

18 juil. 2022, 18:34

Le if (isset($_POST['start'])) { est deja present . ou je n 'ai pas compris quoi faire

Voici les messages d'erreur

Notice: Undefined variable: sql in C:\Program Files\Ampps\www\pickermois.php on line 25

Warning: mysqli_query(): Empty query in C:\Program Files\Ampps\www\pickermois.php on line 25

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, bool given in C:\Program Files\Ampps\www\pickermois.php on line 26