Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <?php
- //Fetch previous search from cookie
- $prev_search = unserialize($_COOKIE["bostadssok"]);
- $host= "localhost";
- $username="root";
- $password="1234";
- $db="labb4";
- $charset="utf8mb4";
- $dsn = "mysql:host=$host;dbname=$db;charset=$charset";
- $opt = [ //??????
- PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
- PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
- PDO::ATTR_EMULATE_PREPARES => false,
- ];
- //Create connection
- $pdo = new PDO($dsn, $username, $password, $opt);
- ?>
- <html>
- <head>
- <title>Söksida för bostäder</title>
- <meta charset="utf-8">
- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
- <script src="sorttable.js"></script>
- <style type="text/css">
- table, th, td {
- border: 1px solid black;
- }
- table{
- border-collapse: collapse;
- width: 100%
- }
- </style>
- </head>
- <body>
- <h1>Välkommen till slemnet!</h1>
- <form id="searchForm" action='result.php' method="post">
- <!--Dynamisk populering från databas-->
- <select name="lan">
- <?php
- $prev_lan = $prev_search["lan"];
- $sql = $pdo->query("SELECT DISTINCT(lan) FROM bostader");
- while($row = $sql->fetch()){
- //If cookie set. Set option to the specified "Län"
- if(($prev_lan!=="")&&$row["lan"]===$prev_lan){
- echo "<option selected=\"selected\" value=\"" . $row["lan"] . "\">" .
- $row["lan"] . "</option>";
- }
- else{
- echo "<option value=\"" . $row["lan"] . "\">" .
- $row["lan"] . "</option>";
- }
- }
- ?>
- </select>
- <select name="objekttyp">
- <?php
- $prev_typ = $prev_search["objekttyp"];
- $sql = $pdo->query("SELECT DISTINCT(objekttyp) FROM bostader");
- while($row = $sql->fetch()){
- //If cookie set. Set option to the specified "Län"
- if(($prev_typ!=="")&&$row["objekttyp"]===$prev_typ){
- echo "<option selected=\"selected\" value=\"" . $row["objekttyp"] . "\">" .
- $row["objekttyp"] . "</option>";
- }
- else{
- echo "<option value=\"" . $row["objekttyp"] . "\">" . $row["objekttyp"] . "</option>";
- }
- }
- ?>
- </select>
- <input type="text" name="adress" placeholder=Adress>
- <div>
- <input type="text" name="MinArea" placeholder="Min area" value=
- <?php
- if($prev_search["MinArea"]!=""){
- echo $prev_search["MinArea"];
- }
- ?>>
- <input type="text" name="MaxArea" placeholder="Max area" value=
- <?php
- if($prev_search["MaxArea"]!=""){
- echo $prev_search["MaxArea"];
- }
- ?>>
- <input type="text" name="MinRum" placeholder="Min rum" value=
- <?php
- if($prev_search["MinRum"]!=""){
- echo $prev_search["MinRum"];
- }
- ?>>
- <input type="text" name="MaxRum" placeholder="Max rum" value=
- <?php
- if($prev_search["MaxRum"]!=""){
- echo $prev_search["MaxRum"];
- }
- ?>>
- </div>
- <div>
- <input type="text" name="MinPris" placeholder="Min pris" value=
- <?php
- if($prev_search["MinPris"]!=""){
- echo $prev_search["MinPris"];
- }
- ?>>
- <input type="text" name="MaxPris" placeholder="Max pris" value=
- <?php
- if($prev_search["MaxPris"]!=""){
- echo $prev_search["MaxPris"];
- }
- ?>>
- <input type="text" name="MinAvgift" placeholder="Min avgift" value=
- <?php
- if($prev_search["MinAvgift"]!=""){
- echo $prev_search["MinAvgift"];
- }
- ?>>
- <input type="text" name="MaxAvgift" placeholder="Max avgift" value=
- <?php
- if($prev_search["MaxAvgift"]!=""){
- echo $prev_search["MaxAvgift"];
- }
- ?>>
- </div>
- <input type="submit" id="searchBtn" value="Sök bostad">
- </form>
- <div id="result"></div>
- <script>
- //AJAX POST-requests to result.php
- var onDone = function(data){
- $("#result").html(data);
- //Client side table sorting needs the file sortable.js from https://www.kryogenix.org/code/browser/sorttable/#ajaxtables
- var newTableObject = document.getElementById("searchTable");
- sorttable.makeSortable(newTableObject);
- };
- $("#searchForm").submit(function(e) {
- $.ajax({
- type: "POST",
- url: "result.php",
- data: $(this).serialize()
- }).done(onDone);
- return false;
- });
- //Server side table sorting
- /*
- //Helper object
- var sortState = {
- lan:"DESC",
- objekttyp:"DESC",
- adress:"DESC",
- area:"DESC",
- rum:"DESC",
- pris:"DESC",
- avgift:"DESC"
- };
- $("#result").on("click", "th", function(e) {
- var attribute = $(e.currentTarget).html();
- var order;
- if(sortState[attribute]=="DESC"){
- sortState[attribute]="ASC";
- order = "ASC";
- }
- else{
- sortState[attribute]="DESC";
- order = "DESC";
- }
- $.ajax({
- url: "result.php",
- type: "GET",
- data: {
- by: attribute,
- order: order
- }
- }).done(onDone);
- });
- */
- //***Server side table sorting ends here***
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement