coop_put.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. //查询term字典
  3. require_once "../path.php";
  4. require_once "../public/_pdo.php";
  5. require_once '../public/function.php';
  6. require_once '../ucenter/function.php';
  7. require_once '../group/function.php';
  8. require_once "../redis/function.php";
  9. require_once "../collect/function.php";
  10. $respond['status']=0;
  11. $respond['message']="成功";
  12. if(isset($_POST["res_id"])){
  13. $redis = redis_connect();
  14. PDO_Connect(_FILE_DB_USER_SHARE_);
  15. $PDO->beginTransaction();
  16. $query = "INSERT INTO share_cooperator ('id','res_id','res_type','cooperator_id','cooperator_type','power','create_time','modify_time','is_deleted') VALUES (null,?,?,?,?,?,?,?,?) ";
  17. $sth = $PDO->prepare($query);
  18. $data = json_decode($_POST["user_info"]);
  19. foreach ($data as $key => $user) {
  20. # code...
  21. $sth->execute(array($_POST["res_id"],
  22. $_POST["res_type"],
  23. $user->id,
  24. $user->type,
  25. $_POST["power"],
  26. mTime(),
  27. mTime(),
  28. 0
  29. ));
  30. }
  31. $PDO->commit();
  32. if (!$sth || ($sth && $sth->errorCode() != 0)) {
  33. /* 识别错误且回滚更改 */
  34. $PDO->rollBack();
  35. $error = PDO_ErrorInfo();
  36. $respond['status']=1;
  37. $respond['message']=$error[2];
  38. echo json_encode($respond, JSON_UNESCAPED_UNICODE);
  39. exit;
  40. }
  41. else{
  42. $respond['status']=0;
  43. $respond['message']="成功";
  44. if($redis){
  45. switch ((int)$_POST["res_type"]) {
  46. case 1:
  47. # pcs
  48. $redis->del("power://pcs/".$_POST["res_id"]);
  49. break;
  50. case 2:
  51. # channel
  52. $redis->del("power://channel/".$_POST["res_id"]);
  53. break;
  54. case 3:
  55. # code...
  56. $redis->del("power://article/".$_POST["res_id"]);
  57. break;
  58. case 4:
  59. # 文集
  60. $redis->del("power://collection/".$_POST["res_id"]);
  61. # 删除文章列表权限缓存
  62. $collection = new CollectInfo($redis);
  63. $articleList = $collection->getArticleList($_POST["res_id"]);
  64. foreach ($articleList as $key => $value) {
  65. # code...
  66. $redis->del("power://article/".$value);
  67. }
  68. break;
  69. default:
  70. # code...
  71. break;
  72. }
  73. }
  74. }
  75. echo json_encode($respond, JSON_UNESCAPED_UNICODE);
  76. }
  77. else{
  78. $respond['status']=1;
  79. $respond['message']="no res id";
  80. echo json_encode($respond, JSON_UNESCAPED_UNICODE);
  81. }
  82. ?>