channal_list.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. require_once "../public/function.php";
  3. require_once "../path.php";
  4. require_once '../channal/function.php';
  5. require_once '../ucenter/function.php';
  6. $_data = array();
  7. $output = array();
  8. if(isset($_POST["data"])){
  9. $_data = json_decode($_POST["data"],true);
  10. }
  11. else{
  12. echo json_encode($output, JSON_UNESCAPED_UNICODE);
  13. exit;
  14. }
  15. $_userinfo = new UserInfo();
  16. $_channal = new Channal();
  17. $dns = "sqlite:"._FILE_DB_SENTENCE_;
  18. $db_trans_sent = new PDO($dns, "", "",array(PDO::ATTR_PERSISTENT=>true));
  19. $db_trans_sent->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
  20. $channal = array();
  21. foreach ($_data as $key => $value) {
  22. # code...
  23. $id = $value["id"];
  24. $arrInfo = str_getcsv($value["data"],"@");
  25. $arrSent = str_getcsv($arrInfo[0],"-");
  26. $bookId=$arrSent[0];
  27. $para=$arrSent[1];
  28. $begin=$arrSent[2];
  29. $end=$arrSent[3];
  30. //find out translation
  31. $tran="";
  32. try{
  33. $query="SELECT channal FROM sentence WHERE book= ? AND paragraph= ? AND begin= ? AND end= ? AND strlen >0 group by channal limit 0 ,20 ";
  34. $stmt = $db_trans_sent->prepare($query);
  35. $stmt->execute(array($bookId,$para,$begin,$end));
  36. $Fetch = $stmt->fetchAll(PDO::FETCH_ASSOC);
  37. foreach ($Fetch as $key => $value) {
  38. # code...
  39. if(isset($value["channal"])){
  40. $channal[$value["channal"]] ++;
  41. }
  42. else{
  43. $channal[$value["channal"]] = 1;
  44. }
  45. }
  46. }
  47. catch (Exception $e) {
  48. $tran = $e->getMessage();
  49. //echo 'Caught exception: ', $e->getMessage(), "\n";
  50. }
  51. }
  52. foreach ($channal as $key => $value) {
  53. # code...
  54. $channalInfo = $_channal->getChannal($key);
  55. $name = $_userinfo->getName($channalInfo["owner"]);
  56. $channalInfo["username"] = $name["username"];
  57. $channalInfo["nickname"] = $name["nickname"];
  58. $channalInfo["count"] = $value;
  59. $channalInfo["all"] = count($_data);
  60. $output[]= $channalInfo;
  61. }
  62. echo json_encode($output, JSON_UNESCAPED_UNICODE);
  63. ?>