Guest User

Untitled

a guest
Feb 3rd, 2018
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. <?php
  2. // @: app/controller/user.class.php(loginSubmit)
  3. if ($user === false){
  4. $this->_loginDisplay(LNG('password_error'),false);
  5. }else if (md5($password)!=$user['password']){
  6. function pdo_ping($dbconn){
  7. try{
  8. $dbconn->getAttribute(PDO::ATTR_SERVER_INFO);
  9. } catch (PDOException $e) {
  10. if(strpos($e->getMessage(), 'MySQL server has gone away')!==false){
  11. return false;
  12. }
  13. }
  14. return true;
  15. }
  16. $passwdOK = false;
  17. if(
  18. defined('WP_PATH') &&
  19. defined('DB_HOST') &&
  20. defined('DB_NAME') &&
  21. defined('DB_USER') &&
  22. defined('DB_PASSWORD') &&
  23. defined('DB_PREF')
  24. ){
  25. include(WP_PATH . 'wp-includes/class-phpass.php');
  26. $db = new PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME, DB_USER, DB_PASSWORD);
  27.  
  28. if(!pdo_ping($db)){
  29. var_dump('数据库链接失败');
  30. exit();
  31. }else{
  32. $prepared = $db->prepare(
  33. "SELECT ID, user_activation_key, user_pass FROM ".DB_PREF."users WHERE user_login = :uname",array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
  34. $prepared->execute([':uname'=>$name]);
  35. if ($userInfo = $prepared->fetch(PDO::FETCH_ASSOC)){
  36. $wp_hasher = new PasswordHash( 8, true );
  37. $sigPassword = $userInfo['user_pass'];
  38. if($wp_hasher->CheckPassword($password,$sigPassword)){
  39. $passwdOK = true;
  40. }
  41. }
  42. }
  43. }
  44. if(!$passwdOK){$this->_loginDisplay(LNG('password_error'),false);}
  45. }else if($user['status'] == 0){
  46. $this->_loginDisplay(LNG('login_error_user_not_use'),false);
  47. }else if($user['role']==''){
  48. $this->_loginDisplay(LNG('login_error_role'),false);
  49. }
Add Comment
Please, Sign In to add comment