-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfetchProblem.php
executable file
·56 lines (56 loc) · 1.39 KB
/
fetchProblem.php
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
<?
include_once("databaseManager.php");
$con=new DatabaseManager();
$sql="SELECT problems.title,problems.number";
$sql.=" FROM problems";
$sql.=" inner join problemchapter on problems.number=problemchapter.fk_problem";
if($_SERVER["REQUEST_METHOD"]=="GET")
{
$filter = filterStrGet();
if($filter!="")
{
$filter_json=json_decode($filter,true);
}
if($filter!='')
{
$chapter=$filter_json[1]["value"];
//chapter title is "all"
if($chapter==24)
{
$course=$filter_json[0]["value"];
$sql.=" inner join chapters on problemchapter.fk_chapter=chapters.chapterId";
$sql.=" WHERE chapters.fk_pcourse=" . $course ;
}
else{
$sql.=" WHERE problemchapter.fk_chapter=" . $chapter ;
}
$sql.=" ORDER BY problems.number";
}
}
$result=$con->Query($sql);
if(mysql_num_rows($result)>0){
while($obj=mysql_fetch_object($result)){
$arr[]=$obj;
}
}
$con->Dispose();
Echo json_encode($arr);
function formatStr($str)
{
return trim(str_replace("'","''",$str));
}
function filterStrGet()
{
$a = explode('&',$_SERVER["REQUEST_URI"]);
$i = 0;
while ($i < count($a)) {
$b = split('=', $a[$i]);
if(htmlspecialchars(urldecode($b[0]))=="filter")
{
$filter=urldecode($b[1]);
return $filter;
}
$i++;
}
}
?>