PageRenderTime 65ms CodeModel.GetById 35ms RepoModel.GetById 1ms app.codeStats 0ms

/usr_chk1.php

https://bitbucket.org/krishna2793/aces
PHP | 439 lines | 324 code | 57 blank | 58 comment | 38 complexity | 0c630905189239c5bb5fba41d180645b MD5 | raw file
  1. <?php
  2. error_reporting(E_ALL);
  3. ini_set('display_errors', '1');
  4. require_once ('Auth_stu.php');
  5. session_start();
  6. $auth = new Auth_stu();
  7. if (!isset($_SESSION['user_id']))
  8. {
  9. //Not logged in, send to login page.
  10. header( 'Location: login.php' );
  11. }
  12. else
  13. {
  14. //Check we have the right user
  15. $logged_in = $auth->checkSession();
  16. if(empty($logged_in)){
  17. //Bad session, ask to login
  18. $auth->logout();
  19. header( 'Location: login.php' );
  20. }
  21. else
  22. {
  23. //User is logged in, show the page
  24. ?>
  25. <!DOCTYPE html>
  26. <html>
  27. <head>
  28. <title>ACES : HOME</title>
  29. <!-- Include the bootstrap stylesheets -->
  30. <link rel="stylesheet" href="bootstrapnew.css"/>
  31. </head>
  32. <body>
  33. <!-- Navbar
  34. ================================================== -->
  35. <div class="navbar navbar-fixed-top">
  36. <div class="navbar-inner">
  37. <div class="container">
  38. <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
  39. <span class="icon-bar"></span>
  40. <span class="icon-bar"></span>
  41. <span class="icon-bar"></span>
  42. </a>
  43. <a class="brand" href="http://www.amrita.edu/">AMRITA</a>
  44. <div class="nav-collapse" id="main-menu">
  45. <ul class="drop" id="main-menu-left">
  46. <li><a onclick="pageTracker._link(this.href); return false;" href="http://news.bootswatch.com">News</a></li>
  47. <li><a id="swatch-link" href="/stu_score.php">Scores</a></li>
  48. <li class="dropdown" id="test-menu">
  49. <a class="dropdown-toggle" data-toggle="" href="#">Test Offered <b class="caret"></b></a>
  50. <ul id="take_test" class="dropdown-toggle" >
  51. <li><a href="/stu_test.php">Test Code</a></li>
  52. <li><a href="/student_mcq.php">MCQs</a></li>
  53. <li><a href="/stu_test.php">Test Query</a></li>
  54. </ul>
  55. </li>
  56. </ul>
  57. </li>
  58. </ul>
  59. <ul class="nav pull-right" id="main-menu-right">
  60. <Li> <form class="navbar-search pull-left">
  61. <input type="text" class="search-query span2" placeholder="Search">
  62. </form></Li>
  63. <li><a rel="tooltip" href="#"><?php echo date("d.m.Y") ;?> <i class="icon-share-alt"></i></a></li>
  64. <li><a rel="tooltip" href="#">Welcome <?php echo $_POST['login']; ?> <i class="icon-share-alt"></i></a></li>
  65. <li><a rel="tooltip" href="/logout.php">Logout <i class="icon-share-alt"></i></a></li>
  66. </ul>
  67. </div>
  68. </div>
  69. </div>
  70. </div>
  71. <div class="container">
  72. <div class="container">
  73. <p> </p>
  74. <h1 style="font-size:46px" align="center" >&nbsp;</h1>
  75. <h1 style="font-size:46px" align="center" >&nbsp;</h1>
  76. <h1 style="font-size:46px" align="center" >ACES</h1>
  77. <h4 align="center"> Automated Code Evaluation System</h4>
  78. <p></p>
  79. <h6 align="left">AMRITA SCHOOL OF ENGINEERING</h6>
  80. <h6 align="left" >COIMBATORE <small></h6>
  81. <!-- Forms
  82. ================================================== -->
  83. <section id="forms">
  84. <div class="page-header">
  85. <h1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </h1>
  86. </div>
  87. <div class="row">
  88. <div class="span10 offset1">
  89. <form class="form-horizontal well" action="response.php" method="post" enctype="multipart/form-data">
  90. <fieldset>
  91. <legend> Student Home </legend>
  92. </fieldset>
  93. <h2> Query Submitted </h2>
  94. <?php if(($_SESSION['iter']+1)<$_SESSION['no_of_ques'])
  95. {
  96. echo '
  97. <input type="submit" class="btn btn-primary" name="next" value="Next" />';
  98. }?>
  99. <p><a href = "/query_score.php">See Scores</a></p>
  100. </form>
  101. </div>
  102. </div>
  103. </section>
  104. <!-- Footer
  105. ================================================== -->
  106. <hr>
  107. <footer id="footer">
  108. <p class="pull-right"><a href="#">Back to top</a></p>
  109. <div class="links"></div>
  110. Made by <a href="http://www.amrita.edu">Amrita</a>. Contact him <a href="mailto:amrita.edu">hello@admin_asec</a>.<br/>
  111. Based on <a target="_blank" href="http://twitter.github.com/bootstrap/">Bootstrap</a>. Icons from <a target="_blank" href="http://glyphicons.com/">Glyphicons</a>. Web fonts from <a target="_blank" href="http://www.google.com/webfonts">Google</a>.</p>
  112. </footer>
  113. </body>
  114. </html>
  115. <?php
  116. //echo 'Success... ' . $mysqli->host_info . "<br />";
  117. //echo 'Retrieving dumpfile' . "<br />";
  118. //echo "...............".$_SESSION['TRY'];
  119. //echo "......<br>";
  120. $prob_id = $_SESSION['ARR'][$_SESSION['iter']];
  121. echo $_SESSION['iter'].':----------------------:'.$prob_id;
  122. $con = mysql_connect('localhost','root','mysql');
  123. if (!$con)
  124. {
  125. die('Could not connect: ' . mysql_error());
  126. }
  127. mysql_select_db("aces", $con) or die('db con faild');
  128. $qry =mysql_query("SHOW TABLES;");
  129. //echo "<br /> all tables deleted <br />";
  130. $ty = mysql_query("select answer from problem_pool where pid = '$prob_id'");
  131. //echo mysql_result($ty,0);
  132. //echo '<br>';
  133. $q_op = mysql_query("select * from problem_pool where pid='$prob_id'") or die(':('.mysql_error());
  134. //echo 'prob_pool query done:)';
  135. //echo 'here....';
  136. $username = $_SESSION['name'];
  137. mysql_query("drop database if exists $username;");
  138. mysql_query("create database $username;") or die('database creation failed!!');
  139. mysql_select_db("$username",$con) or die('db con failure!!');
  140. //echo 'Success... ' . $mysqli->host_info . "<br />";
  141. //echo 'Retrieving dumpfile' . "<br />";
  142. //echo "...............".$_SESSION['TRY'];
  143. //echo "......<br>";
  144. //$prob_id = $_SESSION['TRY'];
  145. //$con = mysql_connect('localhost','root','kolam16f');
  146. //if (!$con)
  147. {
  148. //die('Could not connect: ' . mysql_error());
  149. }
  150. $mysqli = new mysqli('127.0.0.1', 'root', 'mysql', $username);
  151. if (mysqli_connect_error()) {
  152. die('Connect Error (' . mysqli_connect_errno() . ') '
  153. . mysqli_connect_error());
  154. }
  155. if(mysql_num_rows($q_op) == 1)
  156. {
  157. $info = mysql_fetch_array($q_op);
  158. $testquery =file_get_contents($info['answer']);
  159. echo $testquery;
  160. /*echo '<br>';
  161. echo ":)".$info['url'].":( :(";
  162. echo '<br>';*/
  163. }
  164. //echo $testquery;
  165. $sql = file_get_contents($info['url']);
  166. if (!$sql){
  167. die ('Error opening file');
  168. }
  169. //echo '<br>'.$sql.'<br>';
  170. mysqli_multi_query($mysqli,$sql) or die('wrong');
  171. $t3 = str_replace("("," ",$testquery);
  172. $chars = preg_split('/ /',$t3,-1,PREG_SPLIT_OFFSET_CAPTURE);
  173. //echo '<br>';
  174. //print_r($chars);
  175. //echo '<br>';
  176. mysql_query("start transaction;") or die('transaction failed!!');
  177. mysql_query("savepoint t;") or die('savepoint failed!!');
  178. if($chars[0][0]=='update')
  179. {
  180. $data = $chars[1][0];
  181. $u1 = mysql_query($testquery);
  182. $testquery = "select * from $data;";
  183. //echo 'inside update';
  184. }
  185. else if($chars[0][0]=='insert'||$chars[0][0]=='delete')
  186. {
  187. $data = $chars[2][0];
  188. //echo '.........inside insert';
  189. $u1 = mysql_query($testquery);
  190. $testquery = "select * from $data;";
  191. }
  192. //echo $testquery;
  193. if($chars[0][0] == 'create')
  194. {
  195. //echo 'inside else';
  196. $data = $chars[2][0];
  197. $u1 = mysql_query($testquery);
  198. $testquery = "describe $data";
  199. //echo $testquery;
  200. }
  201. //echo $chars[0][0];
  202. //echo $chars[1][0];
  203. //echo 'nothing here____';
  204. if($chars[0][0] == 'alter')
  205. {
  206. //echo 'i am here!!!___';
  207. $temptab = 'temp';
  208. $table = $chars[2][0];
  209. $query = "create table $temptab as select * from $table ";
  210. mysql_query($query);// or die(mysql_error());
  211. $testquery = str_replace($chars[2][0],$temptab,$testquery);
  212. $u1 = mysql_query($testquery) or die(mysql_error());
  213. $testquery = "describe $temptab";
  214. }
  215. //echo $testquery;
  216. $t2=mysql_query($testquery) or die('test query failed!!'.mysql_error());
  217. $num1 = mysql_num_rows($t2);
  218. //echo $num1;
  219. $i=0;
  220. while($info2 = mysql_fetch_array($t2))
  221. {
  222. $j=0;
  223. $t_a[$i] = $info2;
  224. //print_r($t_a[$i]);
  225. //echo '<br>';
  226. $i++;
  227. }
  228. if($chars[0][0]=='create')
  229. {
  230. $table= $chars[2][0];
  231. $dropquery = "drop table $table";
  232. mysql_query($dropquery) or die('drop query failed!!'.mysql_error());
  233. }
  234. else if($chars[0][0]=='alter')
  235. {
  236. $dropquery = "drop table $temptab";
  237. mysql_query($dropquery) or die('drop query failed alter!!'.mysql_error());
  238. //echo 'in place!!_______________';
  239. }
  240. else
  241. {
  242. mysql_query("rollback to savepoint t;") or die('roll back failed!!');
  243. mysql_query("release savepoint t;") or die('release failed!!');
  244. }
  245. $flags=0;
  246. mysql_query("start transaction;") or die('transaction failed!!');
  247. mysql_query("savepoint t;") or die('savepoint failed!!');
  248. $userquery = $_POST['ques'];
  249. echo $userquery.'___';
  250. //echo $userquery;
  251. $u3 = str_replace("("," ",$userquery);
  252. $uchars = preg_split('/ /',$u3,-1,PREG_SPLIT_OFFSET_CAPTURE);
  253. //if($uchars[0][0]!='create'&&$uchars[0][0]!='alter'&&$uchars[0][0]!='drop')
  254. //{
  255. //if($uchars[0][0]!='select')
  256. if($uchars[0][0]=='update')
  257. {
  258. $data = $uchars[1][0];
  259. $u1=mysql_query($userquery);// or die('user query failed!!');
  260. if(!$u1)
  261. {
  262. $flags = 1;
  263. }
  264. $userquery = "select * from $data;";
  265. //echo 'inside update';
  266. }
  267. else if($uchars[0][0]=='insert'||$uchars[0][0]=='delete')
  268. {
  269. $data = $chars[2][0];
  270. $u1=mysql_query($userquery);// or die('user query failed!!');
  271. if(!$u1)
  272. {
  273. $flags = 1;
  274. }
  275. $userquery = "select * from $data;";
  276. //echo 'inside insert';
  277. }
  278. //echo $selectquery;
  279. if($uchars[0][0] == 'create')
  280. {
  281. //echo 'inside else';
  282. $data = $chars[2][0];
  283. $u1=mysql_query($userquery);// or die('user query failed!!');
  284. if(!$u1)
  285. {
  286. $flags = 1;
  287. }
  288. $userquery = "describe $data";
  289. //echo $testquery;
  290. }
  291. if($uchars[0][0] == 'alter')
  292. {
  293. $temptab = 'temp';
  294. $table = $chars[2][0];
  295. $query = "create table $temptab as select * from $table ";
  296. mysql_query($query) or die(mysql_error());
  297. $userquery = str_replace($chars[2][0],$temptab,$userquery);
  298. $u1 = mysql_query($userquery);// or die(mysql_error());
  299. if(!$u1)
  300. {
  301. $flags = 1;
  302. }
  303. $userquery = "describe $temptab";
  304. }
  305. //echo $userquery;
  306. $t2=mysql_query($userquery); //or die('select query failed!!');
  307. if(!$t2)
  308. {
  309. $flags = 1;
  310. }
  311. $num2 = mysql_num_rows($t2);
  312. //echo $num2;
  313. $j=0;
  314. while($uinfo2 = mysql_fetch_array($t2))
  315. {
  316. $u_a[$j] = $uinfo2;
  317. //print_r($u_a[$j]);
  318. //echo '<br>';
  319. $j++;
  320. }
  321. $flag=0;
  322. $y=0;
  323. while($y<$num1)
  324. {
  325. $v = array_diff($u_a[$y],$t_a[$y]);
  326. $v1 = array_diff($t_a[$y],$u_a[$y]);
  327. //print_r($v);
  328. if(!(empty($v))||!(empty($v1)))
  329. {
  330. $flag=1;
  331. break;
  332. }
  333. $y++;
  334. }
  335. $result = 0;
  336. if($flag==0&&$flags!=1)
  337. {
  338. $result++;
  339. }
  340. echo $result;
  341. if($uchars[0][0]=='create')
  342. {
  343. $table= $chars[2][0];
  344. $dropquery = "drop table $table";
  345. mysql_query($dropquery) or die('drop query failed!!'.mysql_error());
  346. }
  347. else if($uchars[0][0]=='alter')
  348. {
  349. $dropquery = "drop table $temptab";
  350. mysql_query($dropquery) or die('drop query failed alter!!'.mysql_error());
  351. }
  352. else
  353. {
  354. mysql_query("rollback to savepoint t;") or die('roll back failed!!');
  355. mysql_query("release savepoint t;") or die('release failed!!');
  356. }
  357. mysql_select_db("aces", $con) or die('db con faild');
  358. mysql_query("use aces")or die('here it is!!');
  359. $temp_iter=$_SESSION['ARR'][$_SESSION['iter']];
  360. echo "====".$_SESSION['ARR'][$_SESSION['iter']]."====".$_SESSION['user_id']."====".$_SESSION['test_id']."====";
  361. mysql_query("insert into each_query_score(stu_id,test_id,prob_id,score) values ('$_SESSION[user_id]','$_SESSION[test_id]','$temp_iter','$result')") or die('aaaa'.mysql_error());
  362. echo 'crossed insert!!!!!!!!!';
  363. //store score in user_gradebook_coding
  364. if(($_SESSION['iter']+1)==$_SESSION['no_of_ques'])
  365. {
  366. $scores_fetch=mysql_query("select score from each_query_score where test_id='$_SESSION[test_id]' and stu_id='$_SESSION[user_id]'");
  367. $score_avg=0;
  368. while($score = mysql_fetch_array ($scores_fetch))
  369. {
  370. $score_avg += $score['score'];
  371. }
  372. $score_avg = $score_avg/$_SESSION['no_of_ques'];
  373. $score_avg *=100;
  374. mysql_query("update user_gradebook_Query set score_percentage=$score_avg where test_id='$_SESSION[test_id]' and stu_id='$_SESSION[user_id]' ");
  375. }
  376. mysql_query("drop database $username") or die(mysql_error());
  377. $mysqli->close();
  378. ?>
  379. <?php
  380. }
  381. }
  382. ?>