iwa-panda1

Manage Weather Data by International Weather Agency (Version 1)
Log | Files | Refs

search_data.php (4311B)


      1 <?php
      2     include "views/navbar.php";
      3     include "utils/autoloader.php";
      4 
      5     $db = new Lollipop\SQLDatabase("86.92.67.21", "friedel", "hailiwa", "wap2");
      6 
      7     $weather = $db->get(Weather_data::class);
      8 
      9     //$date_begin = '2023-04-04';
     10     //$date_end = '2023-04-05';
     11 	
     12     $date_begin = "";
     13     $date_end = "";
     14     $station = "";
     15 
     16     $query = array();
     17     if($_SERVER['REQUEST_METHOD'] == 'GET'){
     18         if(isset($_GET['date_begin']) && !empty($_GET['date_begin'])){
     19             $date_begin = ($_GET['date_begin'] . "%");
     20 			$query["date_time"][">="] = $date_begin;
     21 		}
     22         if(isset($_GET['date_end'])&& !empty($_GET['date_end'])){
     23             $date_end = ($_GET['date_end'] . "%");
     24 			$query["date_time"]["<="] = $date_end;
     25 		}
     26         if(isset($_GET['station']) && !empty($_GET['station'])){
     27             $station = ($_GET['station'] . "%");
     28 			$query["station_name"]["="] = $station;
     29 		}
     30 
     31 		if($query == null){
     32 			$query["station_name"]["LIKE"] = "%";
     33 		}
     34         $weather_data = $db->getDateRange(Weather_data::class, $query, "DESC");
     35 		//var_dump($weather_data);
     36     }
     37 ?>
     38 <html>
     39     <head>
     40         <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
     41         <link rel="stylesheet" type="text/css" href="/css/weerdata.css">
     42     </head>
     43     <body>
     44         <form class="d-flex" action="search_data" method="get">
     45             <input class="form-control me-2" type="text" name="date_begin" placeholder="Date begin (YYYY-MM-DD)" pattern="\d{4}-\d{2}-\d{2}" value=<?php ?>>
     46             <input class="form-control me-2" type="text" name="date_end" placeholder="Date end (YYYY-MM-DD)" pattern="\d{4}-\d{2}-\d{2}" value=<?php ?>>
     47             <input class="form-control me-2" type="text" name="station" placeholder="Search" aria-label="Search" value=<?php ?>>
     48             <button class="btn btn-outline-success" type="submit">Search</button>
     49         </form>
     50 
     51         <?php
     52             // verification logic and $_SESSION start
     53             if ($weather_data != null) {?>
     54                 <table class="table table-striped">
     55                     <thead>
     56                     <tr>
     57                         <th> Station name </th>
     58                         <th> Date & Time </th>
     59                         <th> Validated </th>
     60                         <th> Temperature </th>
     61                         <th> Dewpoint </th>
     62                         <th> Sea pressure </th>
     63                         <th> Station pressure </th>
     64                         <th> Visibility </th>
     65                         <th> Wind speed </th>
     66                         <th> Precipitation </th>
     67                         <th> Snow depth </th>
     68                         <th> Events </th>
     69                         <th> Cloud count </th>
     70                         <th> Wind direction </th>
     71                     </tr>
     72                     </thead>
     73                     <tbody>
     74 
     75                     </tbody>
     76                 <?php
     77                     foreach($weather_data as $data) {
     78                     $link = "/search_data?station=" . $data->station_name;
     79                     echo "<tr>";
     80                         echo "<td><a href='" . $link . "'>" . $data->station_name . "</a></td>";
     81                         echo "<td>" . $data->date_time . "</td>";
     82                         echo "<td>" . $data->validated . "</td>";
     83                         echo "<td>" . $data->temperature . "</td>";
     84                         echo "<td>" . $data->dew_point . "</td>";
     85                         echo "<td>" . $data->pressure_sea . "</td>";
     86                         echo "<td>" . $data->pressure_station . "</td>";
     87                         echo "<td>" . $data->visibility . "</td>";
     88                         echo "<td>" . $data->wind_speed . "</td>";
     89                         echo "<td>" . $data->precipitation . "</td>";
     90                         echo "<td>" . $data->snow_depth . "</td>";
     91                         echo "<td>" . $data->events . "</td>";
     92                         echo "<td>" . $data->cloud_count . "</td>";
     93                         echo "<td>" . $data->wind_direction . "</td>";
     94                     echo "</tr>";
     95                     }
     96                 ?>
     97                     </tbody>
     98                     </table>
     99         <?php
    100             } else {
    101                 echo "No data found.";
    102             }
    103         ?>
    104     </body>
    105 </html>