Advertisement
Guest User

Main Class

a guest
Feb 12th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.01 KB | None | 0 0
  1. <?php
  2. class KuliahCoding {
  3. public $config;
  4. public $db;
  5.  
  6. public function __construct($config){
  7. $this->config = $config;
  8. $this->db();
  9. }
  10.  
  11. public function db(){
  12. $this->db = mysql_connect($this->config['host'],$this->config['username'],$this->config['password']);
  13. if($this->db){
  14. mysql_select_db($this->config['name'],$this->db) or die ("Database '".$this->config['name']."' tidak ditemukan !");
  15. return $this->db;
  16. }
  17.  
  18. }
  19.  
  20. public function tampilkan ($table){
  21. $query = mysql_query("SELECT * FROM $table", $this->db);
  22.  
  23. return $query;
  24. }
  25.  
  26. function tampilkan_per_id($id){
  27. $query = mysql_query("SELECT * FROM mahasiswa WHERE id_mahasiswa=$id",$this->db);
  28. return $query;
  29. }
  30.  
  31. public function add_mahasiswa($username, $password, $nama, $prodi){
  32. $password = md5($password);
  33. $query = mysql_query("INSERT INTO mahasiswa (username_mahasiswa, pass_mahasiswa, nama_mahasiswa, prodi) VALUES ('$username', '$password', '$nama', '$prodi')",$this->db);
  34. // return $this->run($query);
  35. return $query;
  36. }
  37.  
  38. public function delete($table, $idx){
  39. $query = mysql_query("DELETE FROM $table WHERE id_mahasiswa=".$idx, $this->db);
  40. return $query;
  41. }
  42.  
  43. public function tambah_kategori($nama_kategori){
  44. $query = mysql_query("INSERT INTO kategori (nama_kategori) VALUES ('$nama_kategori')",$this->db);
  45. // return $this->run($query);
  46. }
  47.  
  48. public function run($query){
  49. if(mysql_query($this->db, $query)) return true;
  50. else return false;
  51. }
  52.  
  53. // public function escape($data){
  54. // return(mysql_real_escape_string($this->db, $data));
  55. // }
  56.  
  57.  
  58.  
  59. public function getData($table,$option = ""){
  60. $query = mysql_query("SELECT * FROM {$table} {$option}",$this->db);
  61. if($query){
  62. $data = array();
  63. while($row = mysql_fetch_assoc($query)){
  64. $data[] = $row;
  65. }
  66. return $data;
  67. } else {
  68. return mysql_error($this->db);
  69. }
  70. }
  71.  
  72. public function updateData($table,$data,$option){
  73. $var = array();
  74. foreach($data as $key => $value){
  75. $var[] = $key." = '".$value."'";
  76. }
  77. $update = implode(", ",$var);
  78. $query = mysql_query("UPDATE {$table} SET {$update} {$option}");
  79. if($query){
  80. return true;
  81. } else {
  82. return mysql_error($this->db);
  83. }
  84. }
  85.  
  86. public function deleteData($table,$option){
  87. $query = mysql_query("DELETE FROM {$table} {$option}");
  88. if($query){
  89. return true;
  90. } else {
  91. return mysql_error($this->db);
  92. }
  93. }
  94.  
  95. public function lastid(){
  96. return mysql_insert_id($this->db);
  97. }
  98.  
  99.  
  100. public function insertData($table,$data){
  101. $columnkey = array();
  102. $columnvalue = array();
  103. foreach($data as $key => $value){
  104. $columnkey[] = $key;
  105. $columnvalue[] = $value;
  106. }
  107. $key = " (".implode(",",$columnkey).")";
  108. $value = "VALUES ('".implode("','",$columnvalue)."')";
  109. $query = mysql_query("INSERT INTO {$table} {$key} {$value}");
  110. if($query){
  111. return true;
  112. } else {
  113. return mysql_error($this->db);
  114. }
  115. }
  116.  
  117. public function countData($table,$option){
  118. $query = mysql_query("SELECT * FROM {$table} {$option}",$this->db);
  119. if($query){
  120. return mysql_num_rows($query);
  121. } else {
  122. return mysql_error($this->db);
  123. }
  124. }
  125.  
  126. public function statusContent($status){
  127. switch($status){
  128. case 1:
  129. return "<i class='fa fa-unlock fa-fw'></i>";
  130. break;
  131. case 0:
  132. return "<i class='fa fa-lock fa-fw'></i>";
  133. break;
  134. }
  135. }
  136.  
  137. public function includePageMahasiswa($file){
  138. if(file_exists("template/mahasiswa/".$file.".php")){
  139. return "template/mahasiswa/".$file.".php";
  140. }
  141. }
  142.  
  143. public function includePageAdmin($file){
  144. if(file_exists("template/admin/".$file.".php")){
  145. return "template/admin/".$file.".php";
  146. }
  147. }
  148.  
  149. public function login($username,$password,$type = "mahasiswa"){
  150. switch($type){
  151. case "mahasiswa":
  152. $password = md5($password);
  153. if($this->countData("mahasiswa","WHERE username = '{$username}' AND password = '{$password}'") > 0){
  154. $_SESSION['LOGIN'] = true;
  155. $_SESSION['TYPE'] = "mahasiswa";
  156. return true;
  157. } else {
  158. return false;
  159. }
  160. break;
  161. case "dosen":
  162. $password = md5($password);
  163. if($this->countData("dosen","WHERE username = '{$username}' AND password = '{$password}'") > 0){
  164. $_SESSION['LOGIN'] = true;
  165. $_SESSION['TYPE'] = "dosen";
  166. return true;
  167. } else {
  168. return false;
  169. }
  170.  
  171. break;
  172. }
  173.  
  174. }
  175.  
  176. public function getMateri($id){
  177. $data = $this->getData("materi","WHERE id = '{$id}'");
  178. return @$data[0];
  179. }
  180.  
  181. public function getCourse($id){
  182. $data = $this->getData("course","WHERE id = '{$id}'");
  183. return @$data[0];
  184. }
  185.  
  186. public function getKategori($id){
  187. $data = $this->getData("kategori","WHERE id = '{$id}'");
  188. return @$data[0];
  189. }
  190.  
  191. public function getMahasiswa($id){
  192. $data = $this->getData("mahasiswa","WHERE id = '{$id}'");
  193. return @$data[0];
  194. }
  195.  
  196. public function getTugas($id){
  197. $data = $this->getData("tugas","WHERE courseid = '{$id}'");
  198. return @$data[0];
  199. }
  200.  
  201. public function userDir($id,$project = "",$dir = ""){
  202. if($project == ""){
  203. if(!is_dir("userfiles\user_".substr(md5($id),0,6))){
  204. mkdir("userfiles\user_".substr(md5($id),0,6));
  205. }
  206. } else {
  207. if(!is_dir("userfiles\user_".substr(md5($id),0,6)."\\".$project."\\".$dir)){
  208. mkdir("userfiles\user_".substr(md5($id),0,6)."\\".$project."\\".$dir);
  209. }
  210. }
  211. }
  212.  
  213. function getDir($id,$project = "", $dir = ""){
  214. if($project == ""){
  215. if(is_dir("userfiles\user_".substr(md5($id),0,6))){
  216. return "userfiles\user_".substr(md5($id),0,6);
  217. }
  218. } else {
  219. if(is_dir("userfiles\user_".substr(md5($id),0,6)."\\".$project."\\".$dir)){
  220. return "userfiles\user_".substr(md5($id),0,6)."\\".$project."\\".$dir;
  221. }
  222. }
  223. }
  224.  
  225. public function getFile($id,$file){
  226. if(file_exists("userfiles\user_".substr(md5($id),0,6)."\\".$file)){
  227. return htmlspecialchars(htmlentities(file_get_contents("userfiles\user_".substr(md5($id),0,6)."\\".$file)));
  228. }
  229. }
  230.  
  231. public function disable($table,$id){
  232. $data = array("status"=>0);
  233. return $this->updateData($table,$data,"WHERE id = '{$id}'");
  234. }
  235.  
  236. public function enable($table,$id){
  237. $data = array("status"=>1);
  238. return $this->updateData($table,$data,"WHERE id = '{$id}'");
  239. }
  240.  
  241. public function scanDir($dir,$c = "",$m = "",$p = ""){
  242. $handle = opendir($dir);
  243. if($handle){
  244. $files = array();
  245. while($file = readdir($handle)){
  246. if($file != "." && $file != ".."){
  247. if(is_dir($dir."\\".$file)){
  248. array_push($files,"<li style='display:block'><i class='fa fa-folder-open-o fa-fw'></i><a href='?p=code&c={$c}&m={$m}&d={$p}\\{$file}'>".$file."</a></li>");
  249. } else {
  250. array_push($files,"<li style='display:block'><i class='fa fa-file-o fa-fw'></i><a href='?p=code&c={$c}&m={$m}&d={$p}&f={$file}'>".$file."</a></li>");
  251. }
  252. }
  253. }
  254.  
  255. closedir($handle);
  256. return $files;
  257. } else {
  258. return false;
  259. }
  260. }
  261.  
  262. public function prodi($prodi){
  263. switch($prodi){
  264. case 1:
  265. return "S1";
  266. break;
  267. case 2:
  268. return "D3";
  269. break;
  270. }
  271. }
  272.  
  273. function statistik($user){
  274. $course = $this->getData("course");
  275. foreach($course as $c){
  276. $materi = $this->getData("class","WHERE courseid = '{$c['id']}'");
  277. $jumlah = count($materi);
  278. $count = 0;
  279. foreach($materi as $m){
  280. if($this->countData("history_materi","WHERE status = '1' AND userid = '{$user}' AND materiid = '{$m['materiid']}'") == 1){
  281. $count++;
  282. }
  283. }
  284. $persen = $persen = ($count > 0 ? ($count/$jumlah)*100 : 0);
  285. $condition = "";
  286. if($persen < 50){
  287. $condition = "danger";
  288. } else if($persen > 50 && $persen < 70){
  289. $condition = "warning";
  290. } else {
  291. $condition = "success";
  292. }
  293.  
  294. echo '<div class="progress progress-striped active" style="display:block;">
  295. <div class="progress-bar progress-bar-'.$condition.'" role="progressbar" aria-valuenow="'.$persen.'" aria-valuemin="0" aria-valuemax="100" style="width: '.$persen.'%"><b><span style="text-align: center;color:black;position: absolute;">'.$c['judul'].' ('.$persen.'%)</span></b></div>
  296.  
  297. </div>';
  298. }
  299. }
  300. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement