-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathajax_haepaivat.php
More file actions
72 lines (72 loc) · 3 KB
/
ajax_haepaivat.php
File metadata and controls
72 lines (72 loc) · 3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?php
include('connect.php');
//Jos kategoria, palvelu, työntekijä sekä toimipiste on asetettu ja ne postataan -> asetetaan ne muuttujiin.
if(isset($_POST['kategoria'], $_POST['palvelu'], $_POST['tyontekija'], $_POST['toimipiste']) && $_POST['kategoria'] && $_POST['palvelu'] && $_POST['tyontekija'] && $_POST['toimipiste']){
$kategoria=$_POST['kategoria'];
$palvelu=$_POST['palvelu'];
$tyontekija=$_POST['tyontekija'];
$toimipiste=$_POST['toimipiste'];
//Jos työntekijän arvo on kukatahansa
if ($tyontekija == "kukatahansa") {
//Etsitään päivämäärät valituilla arvoilla, jotka ovat vähintään 2 tunnin päässä ja saatavilla.
$sql = $conn->prepare("SELECT paivamaara FROM saatavilla INNER JOIN palvelu ON saatavilla.palvelu = palvelu.id INNER JOIN kategoria on palvelu.kategoria = kategoria.id WHERE palvelu.kategoria = :1 AND palvelu.id = :2 AND saatavilla.toimipiste = :3 AND saatavilla.varattu = :4 AND saatavilla.aikalukujono >= :5");
$sql->bindValue(':1', $kategoria);
$sql->bindValue(':2', $palvelu);
$sql->bindValue(':3', $toimipiste);
$sql->bindValue(':4', "Ei");
$sql->bindValue(':5', strtotime("+2 hours"));
$sql->execute();
$paivamaarat = array();
//Jos päivämääriä löytyi, tehdään niistä lista ja palautetaan se, jonka jälkeen tuhotaan se.
if ($sql->rowCount() > 0) {
while($row = $sql->fetch())
{
array_push($paivamaarat, $row['paivamaara']);
}
echo json_encode($paivamaarat);
unset($paivamaarat);
}
//Jos päivämääriä ei löytynyt, tiedotetaan siitä.
else {
echo "nodates";
}
//Lopuksi katkaistaan tietokantayhteys.
$conn = null;
}
//Jos työntekijävalinta ei ole kuka tahansa, haetaan päivämäärät ja lisätään ehtoihin työntekijä.
else if ($tyontekija != "kukatahansa"){
$sql = $conn->prepare("SELECT paivamaara FROM saatavilla INNER JOIN palvelu ON saatavilla.palvelu = palvelu.id INNER JOIN kategoria on palvelu.kategoria = kategoria.id WHERE palvelu.kategoria = :1 AND palvelu.id = :2 AND saatavilla.tyontekija = :3 AND saatavilla.toimipiste = :4 AND saatavilla.varattu = :5 AND saatavilla.aikalukujono >= :6");
$sql->bindValue(':1', $kategoria);
$sql->bindValue(':2', $palvelu);
$sql->bindValue(':3', $tyontekija);
$sql->bindValue(':4', $toimipiste);
$sql->bindValue(':5', "Ei");
$sql->bindValue(':6', strtotime("tomorrow"));
$sql->execute();
$paivamaarat = array();
//Jos tuloksia löytyy, lisätään ne päivämäärälistaan ja palautetaan se, jonka jälkeen tuhotaan kyseinen lista.
if ($sql->rowCount() > 0) {
while($row = $sql->fetch())
{
array_push($paivamaarat, $row['paivamaara']);
}
echo json_encode($paivamaarat);
unset($paivamaarat);
}
//Jos päivämääriä ei löytynyt, tiedotetaan siitä.
else {
echo "nodates";
}
//Lopuksi katkaistaan tietokantayhteys.
$conn = null;
}
//Jos työntekijän arvo on jokin muu, näytetään virheilmoitus.
else {
echo "errorfile";
}
}
//Jos arvoja ei ole, näytetään virheilmoitus.
else {
echo "errorfile";
}
?>