term_post.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <?php
  2. /*
  3. 修改术语
  4. */
  5. require_once "../path.php";
  6. require_once "../public/_pdo.php";
  7. require_once '../public/function.php';
  8. require_once "../redis/function.php";
  9. $redis = redis_connect();
  10. #未登录不能修改
  11. if (isset($_COOKIE["userid"]) == false) {
  12. $respond['status'] = 1;
  13. $respond['message'] = "not yet log in";
  14. echo json_encode($respond, JSON_UNESCAPED_UNICODE);
  15. exit;
  16. }
  17. $respond = array("status" => 0, "message" => "");
  18. PDO_Connect("" . _FILE_DB_TERM_);
  19. if ($_POST["id"] != "") {
  20. #更新
  21. $query = "UPDATE term SET meaning= ? ,other_meaning = ? , tag= ? ,channal = ? , language = ? , note = ? , receive_time= ?, modify_time= ? where guid= ? and owner = ? ";
  22. $stmt = @PDO_Execute($query,
  23. array($_POST["mean"],
  24. $_POST["mean2"],
  25. $_POST["tag"],
  26. $_POST["channal"],
  27. $_POST["language"],
  28. $_POST["note"],
  29. mTime(),
  30. mTime(),
  31. $_POST["id"],
  32. $_COOKIE["userid"],
  33. ));
  34. if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
  35. $error = PDO_ErrorInfo();
  36. $respond['status'] = 1;
  37. $respond['message'] = $error[2] . $query;
  38. } else {
  39. $respond['status'] = 0;
  40. $respond['message'] = $_POST["word"];
  41. }
  42. } else {
  43. #新建
  44. $parm[] = UUID::v4();
  45. $parm[] = $_POST["word"];
  46. $parm[] = pali2english($_POST["word"]);
  47. $parm[] = $_POST["mean"];
  48. $parm[] = $_POST["mean2"];
  49. $parm[] = $_POST["tag"];
  50. $parm[] = $_POST["channal"];
  51. $parm[] = $_POST["language"];
  52. $parm[] = $_POST["note"];
  53. $parm[] = $_COOKIE["userid"];
  54. $parm[] = 0;
  55. $parm[] = mTime();
  56. $parm[] = mTime();
  57. $parm[] = mTime();
  58. $query = "INSERT INTO term (id, guid, word, word_en, meaning, other_meaning, tag, channal, language,note,owner,hit,create_time,modify_time,receive_time )
  59. VALUES (NULL, ? , ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) ";
  60. $stmt = @PDO_Execute($query, $parm);
  61. if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
  62. $error = PDO_ErrorInfo();
  63. $respond['status'] = 1;
  64. $respond['message'] = $error[2] . $query;
  65. } else {
  66. $respond['status'] = 0;
  67. $respond['message'] = $_POST["word"];
  68. }
  69. }
  70. #更新 redis
  71. if ($redis != false) {
  72. {
  73. # code...
  74. $query = "SELECT id,word,meaning,other_meaning,note,owner,language from term where word = ? ";
  75. $stmt = $PDO->prepare($query);
  76. $stmt->execute(array($_POST["word"]));
  77. if ($stmt) {
  78. $Fetch = $stmt->fetchAll(PDO::FETCH_ASSOC);
  79. $redisWord=array();
  80. foreach ($Fetch as $one) {
  81. # code...
  82. $redisWord[] = array($one["id"],
  83. $one["word"],
  84. "",
  85. "",
  86. "",
  87. $one["meaning"]."$".$one["other_meaning"],
  88. $one["note"],
  89. "",
  90. "",
  91. 1,
  92. 100,
  93. $one["owner"],
  94. "term",
  95. $one["language"]
  96. );
  97. }
  98. $redis->hSet("dict://term",$_POST["word"],json_encode($redisWord,JSON_UNESCAPED_UNICODE));
  99. }
  100. }
  101. }
  102. #更新redis结束
  103. echo json_encode($respond, JSON_UNESCAPED_UNICODE);