function.php 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. <?php
  2. require_once __DIR__.'/../config.php';
  3. function ucenter_get($userid, $fields = "username")
  4. {
  5. //打开数据库
  6. $dns = _FILE_DB_USERINFO_;
  7. $dbh = new PDO($dns, _DB_USERNAME_,_DB_PASSWORD_, array(PDO::ATTR_PERSISTENT => true));
  8. $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
  9. $query = "SELECT username from "._TABLE_USER_INFO_." where id= ? ";
  10. $stmt = $dbh->prepare($query);
  11. $stmt->execute(array($userid));
  12. $fUser = $stmt->fetchAll(PDO::FETCH_ASSOC);
  13. $dbh = null;
  14. if (count($fUser) > 0) {
  15. return ($fUser[0][$fields]);
  16. } else {
  17. return ("");
  18. }
  19. }
  20. function ucenter_getA($userid, $fields = "nickname")
  21. {
  22. if(empty($userid)){
  23. return "";
  24. }
  25. //打开数据库
  26. $dns = _FILE_DB_USERINFO_;
  27. $dbh = new PDO($dns, _DB_USERNAME_,_DB_PASSWORD_, array(PDO::ATTR_PERSISTENT => true));
  28. $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
  29. $query = "SELECT username,nickname FROM "._TABLE_USER_INFO_." WHERE userid= ? ";
  30. $stmt = $dbh->prepare($query);
  31. $stmt->execute(array($userid));
  32. $fUser = $stmt->fetchAll(PDO::FETCH_ASSOC);
  33. $dbh = null;
  34. if (count($fUser) > 0) {
  35. return ($fUser[0][$fields]);
  36. } else {
  37. return ("");
  38. }
  39. }
  40. class UserInfo
  41. {
  42. private $dbh;
  43. private $buffer;
  44. private $log;
  45. public function __construct()
  46. {
  47. $dns = _FILE_DB_USERINFO_;
  48. $this->dbh = new PDO($dns, _DB_USERNAME_,_DB_PASSWORD_, array(PDO::ATTR_PERSISTENT => true));
  49. $this->dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
  50. $this->buffer = array();
  51. $this->log = "";
  52. }
  53. public function getName($id)
  54. {
  55. if (empty($id)) {
  56. return array("nickname" => "", "username" => "");
  57. }
  58. if (isset($this->buffer[$id])) {
  59. return $this->buffer[$id];
  60. }
  61. if ($this->dbh) {
  62. if(is_integer($id)){
  63. $query = "SELECT nickname,username FROM "._TABLE_USER_INFO_." WHERE id = ? ";
  64. $stmt = $this->dbh->prepare($query);
  65. $stmt->execute(array($id));
  66. }else{
  67. $query = "SELECT nickname,username FROM "._TABLE_USER_INFO_." WHERE userid= ? ";
  68. $stmt = $this->dbh->prepare($query);
  69. $stmt->execute(array($id));
  70. }
  71. $user = $stmt->fetchAll(PDO::FETCH_ASSOC);
  72. if (count($user) > 0) {
  73. $this->buffer[$id] = array("nickname" => $user[0]["nickname"], "username" => $user[0]["username"]);
  74. return $this->buffer[$id];
  75. } else {
  76. $this->buffer[$id] = array("nickname" => "", "username" => "");
  77. return $this->buffer[$id];
  78. }
  79. } else {
  80. $this->buffer[$id] = array("nickname" => "", "username" => "");
  81. return $this->buffer[$id];
  82. }
  83. }
  84. public function getId($uuid)
  85. {
  86. if (empty($uuid)) {
  87. return 0;
  88. }
  89. if ($this->dbh) {
  90. $query = "SELECT id FROM "._TABLE_USER_INFO_." WHERE userid= ? ";
  91. $stmt = $this->dbh->prepare($query);
  92. $stmt->execute(array($uuid));
  93. $user = $stmt->fetch(PDO::FETCH_ASSOC);
  94. if ($user) {
  95. return $user["id"];
  96. }else{
  97. return 0;
  98. }
  99. } else {
  100. return 0;
  101. }
  102. }
  103. public function getUserByName($name)
  104. {
  105. if (empty($name)) {
  106. return false;
  107. }
  108. if ($this->dbh) {
  109. $query = "SELECT id,userid,nickname,username FROM "._TABLE_USER_INFO_." WHERE username= ? ";
  110. $stmt = $this->dbh->prepare($query);
  111. $stmt->execute(array($name));
  112. $user = $stmt->fetch(PDO::FETCH_ASSOC);
  113. if ($user) {
  114. return $user;
  115. }else{
  116. return false;
  117. }
  118. } else {
  119. return false;
  120. }
  121. }
  122. public function getUserList($key){
  123. if ($this->dbh) {
  124. $query = "SELECT id,userid,nickname,username FROM "._TABLE_USER_INFO_." WHERE username like ? ";
  125. $stmt = $this->dbh->prepare($query);
  126. $stmt->execute(array($key."%"));
  127. $user = $stmt->fetchAll(PDO::FETCH_ASSOC);
  128. if ($user) {
  129. return $user;
  130. }
  131. } else {
  132. return false;
  133. }
  134. }
  135. public function check_password($userid,$password){
  136. if ($this->dbh) {
  137. $query = "SELECT username FROM "._TABLE_USER_INFO_." WHERE userid= ? and password = ? ";
  138. $stmt = $this->dbh->prepare($query);
  139. $stmt->execute(array($userid,md5($password)));
  140. $user = $stmt->fetch(PDO::FETCH_ASSOC);
  141. if ($user) {
  142. return true;
  143. } else {
  144. return false;
  145. }
  146. } else {
  147. return false;
  148. }
  149. }
  150. public function signIn($username,$password){
  151. if ($this->dbh) {
  152. $query = "SELECT userid,id FROM "._TABLE_USER_INFO_." WHERE (username= ? and password = ?) or (email= ? and password = ?) ";
  153. $stmt = $this->dbh->prepare($query);
  154. $stmt->execute(array($username,md5($password),$username,md5($password)));
  155. $user = $stmt->fetch(PDO::FETCH_ASSOC);
  156. if ($user) {
  157. return $user;
  158. } else {
  159. $query = "SELECT userid,id,password FROM "._TABLE_USER_INFO_." WHERE username= ?";
  160. $stmt = $this->dbh->prepare($query);
  161. $stmt->execute(array($username));
  162. $user = $stmt->fetch(PDO::FETCH_ASSOC);
  163. if($user){
  164. $this->log .= "username:{$username},pwd:{$user['password']}-".md5($password)."\n";
  165. }else{
  166. $this->log .= "no user:{$username}\n";
  167. }
  168. return false;
  169. }
  170. } else {
  171. return false;
  172. }
  173. }
  174. public function getLog(){
  175. return $this->log;
  176. }
  177. }