/lenasys/0.1

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/lenasys/0.1

« back to all changes in this revision

Viewing changes to trunk/DuggaSys/quizSystem/search/index.php

  • Committer: Henrik G.
  • Date: 2013-03-26 23:22:55 UTC
  • Revision ID: henrik.gustavsson@his.se-20130326232255-ik6snyatlbkf3zs1
First seed of Lenasys ... Needs to be Organized Further

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<?php
 
2
///In development...
 
3
 
 
4
$content = "search/search.html.php";
 
5
$pagetitle.=" - Sökresultat";
 
6
 
 
7
// function getColNames($tableName, $pdo) {
 
8
    // $columns = array();
 
9
    // foreach ($pdo->query("SHOW COLUMNS FROM " . $tableName . ";") as $columnInfo) {
 
10
        // array_push($columns, $columnInfo['Field']);
 
11
    // }
 
12
    // return $columns;
 
13
// }
 
14
 
 
15
function searchTable($tableToSearch, $searchString, $pdo) {
 
16
    $columns = getColNames($tableToSearch, $pdo);
 
17
    $searchWords = explode(" ", $searchString);
 
18
    $counter = 0;
 
19
    $querystring = "SELECT * FROM " . $tableToSearch . " WHERE ";
 
20
    foreach ($columns as $colName) {
 
21
        $querystring.="(";
 
22
        foreach ($searchWords as $word) {
 
23
            $querystring.=" " . $colName . " LIKE :SSTRING" . $counter . " OR";
 
24
            $counter++;
 
25
        }
 
26
        $querystring = substr($querystring, 0, strlen($querystring) - 2);
 
27
        $querystring.=") OR ";
 
28
    }
 
29
    $querystring = substr($querystring, 0, strlen($querystring) - 3);
 
30
    $querystring.=";";
 
31
    $stmt = $pdo->prepare($querystring);
 
32
 
 
33
    $j = 0;
 
34
    for ($i = 0; $i <= $counter - 1; $i++) {
 
35
 
 
36
        $sstring = "%" . $searchWords[$j] . "%";
 
37
        $stmt->bindValue(':SSTRING' . $i, $sstring);
 
38
        $j++;
 
39
        if ($j >= sizeof($searchWords)) {
 
40
            $j = 0;
 
41
        }
 
42
    }
 
43
 
 
44
    $stmt->execute();
 
45
 
 
46
    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
 
47
    return $result;
 
48
}
 
49
 
 
50
function displaySearchResult($tableData, $tableCaption, $identifyingColumns, $hiddenFields, $searchString=null) {
 
51
    if (isset($searchString)) {
 
52
        $searchWords = explode(" ", $searchString);
 
53
        $replaceWords = array();
 
54
        foreach ($searchWords as $sWord) {
 
55
            array_push($replaceWords,"~".$sWord."^");
 
56
        }
 
57
    }
 
58
 
 
59
        $idString="";
 
60
        foreach($identifyingColumns as $id){
 
61
                $idString.=$id;
 
62
        }
 
63
        
 
64
    echo "<table class='dataTable'>";
 
65
    echo "<thead>";
 
66
    echo "<caption>" . $tableCaption . "</caption>";
 
67
    if (sizeof($tableData) > 0) {
 
68
        echo "<tr class='headerRow'>";
 
69
        foreach($studentList[0] as $columnName=>$data){
 
70
                                echo "<th>".$columnName."</th>";
 
71
                }
 
72
                // foreach ($columnNames as $colName) {
 
73
            // echo "<th>" . $colName . "</th>";
 
74
        // }
 
75
        echo "</tr>";
 
76
        echo "</thead>";
 
77
        foreach ($tableData as $row) {
 
78
            echo "<tr class='dataRow'>";
 
79
            echo "<form name='" . $tableCaption . $idString . "' action='.' method='post' >";
 
80
            foreach($identifyingColumns as $name){
 
81
                                echo "<input type='hidden' name='".$name."' value='" . $row[$name] . "' />";
 
82
                        }
 
83
                        foreach($hiddenFields as $name=>$value){
 
84
                                echo "<input type='hidden' name='".$name."' value='" . $value . "' />";
 
85
                        }
 
86
            foreach ($row as $value) {
 
87
                echo "<td onclick='document[\"" . $tableCaption . $idString . "\"].submit();return false;'>"; // . htmlsafe($value) . "</td>";
 
88
                if (isset($searchWords)) {
 
89
                   $value=str_replace($searchWords, $replaceWords, htmlsafe($value));
 
90
                   $value=str_replace("~","<strong>",$value);
 
91
                   echo str_replace("^","</strong>",$value);
 
92
                } else {
 
93
                    output($value);
 
94
                }
 
95
                echo "</td>";
 
96
            }
 
97
            echo "</form>";
 
98
            echo "</tr>";
 
99
        }
 
100
    } else {
 
101
        echo "</thead>";
 
102
        echo "<tr>";
 
103
        echo "<td>";
 
104
        echo "No matches for the search string";
 
105
        echo "</td>";
 
106
        echo "</tr>";
 
107
    }
 
108
    echo "</table>";
 
109
}
 
110
 
 
111
if (!empty($_POST['searchString'])) {
 
112
 
 
113
    // $queryString="SHOW TABLES;";
 
114
        // $stmt = $pdo->prepare($queryString);
 
115
        // $stmt->execute();
 
116
    // $tableNames = $stmt->fetchAll(PDO::FETCH_ASSOC);
 
117
        // $resultsArray=array();
 
118
        // foreach($tableNames as $table){
 
119
                // foreach($table as $tableName){
 
120
                        // $result = searchTable($tableName, $_POST['searchString'], $pdo);
 
121
                        // array_push($resultsArray,array($tableName=>$result));
 
122
                // }
 
123
        // }
 
124
        
 
125
        $AssignedQuizzesResult = searchTable("AssignedQuizzes", $_POST['searchString'], $pdo);
 
126
        
 
127
        // $aliensResult = searchTable("AllaAliens", $_POST['searchString'], $pdo);
 
128
    // $incidentsResult = searchTable("incident", $_POST['searchString'], $pdo);
 
129
    // $shipsResult = searchTable("skepp", $_POST['searchString'], $pdo);
 
130
    // $speciesResult = searchTable("AllaRaser", $_POST['searchString'], $pdo);
 
131
    // $weaponsResult = searchTable("vapen", $_POST['searchString'], $pdo);
 
132
 
 
133
    // if (isset($_SESSION['userType']) && $_SESSION['userType'] == "admin") {
 
134
        // $usersResult = searchTable("anvandare", $_POST['searchString'], $pdo);
 
135
    // }
 
136
} else {
 
137
    $errorMsg = "No search string entered";
 
138
}
 
139
?>
 
 
b'\\ No newline at end of file'