runnerjp Posted May 30, 2007 Share Posted May 30, 2007 this is what is happening when i try and log in... for some reason it comes up with this error Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: NO) in /home/runnerse/public_html/website/login/include/mysql.inc.php on line 36 Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: NO) in /home/runnerse/public_html/website/login/include/mysql.inc.php on line 36 Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/runnerse/public_html/website/login/include/mysql.inc.php on line 76 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/runnerse/public_html/website/login/include/auth.inc.php on line 52 below i have added the files associated with it config.php <?PHP // Protect from direct access if(ereg('config.php', $HTTP_SERVER_VARS['REQUEST_URI'])) die('You are not allowed to access this page directly.'); $db['server'] = 'localhost'; $db['user'] = 'runnerse'; $db['pass'] = ''; $db['name'] = 'runnerse_login'; $db['table'] = 'users'; $pg['name'] = 'RunnersElite'; $pg['admin'] = 'admin'; $pg['pass'] = ''; $pg['email'] = 'admin@runnerselite.com'; // Member's page (if more than one, the first they see) $pg['page'] = './members.php'; // Login page $pg['login'] = './login.php'; // Allow new signup's (true / false) $pg['signup'] = true; $pg['weburl'] = 'http://runnerselite.com'; $pg['siteurl'] = 'http://runnerselite/login/'; e: // Enable security code on signup (true / false) $pg['code'] = true; // Security code length (max: 7) $pg['codeLen'] = 5; // Allow multiple admins (true / false) // If enabled, users set as admins will have full rights on admin.php $pg['addadmin'] = true; // Default level // Level (from 1 to 99) that is set to the news users when they signup $pg['userlevel'] = 1; // Minimum level required to be able to see the user list // (0 to disable it) $pg['userlist'] = 0; // Allow users to contact you and other users? // 0: No; 1: Only registered users; 2: All visitors $pg['usermail'] = 2; // No security codes for admins // If enabled, admins won't be asked for a security code anywhere $pg['adminCode'] = true; // User Profiles // 0: Disabled; 1: Only admin's can see them; 2: Only registered users can see them; 3: Enabled $pg['profiles'] = 2; // Set a minimum and maximum of characters when sending an email (10 and 1000, respectively) $pg['mailLength'] = true; // Encryptation Method // Available Options: 'sha1', 'md5' // Warning: Don't change this if you already installed the script, it would break all accounts! $pg['encrypt'] = 'md5'; // **************************************************************** // DO NOT CHANGE! // Restore table name, if deleted if(empty($db['table'])) $db['table'] = 'plus_signup'; // Decrease "security code length" if higher than 7 if($pg['codeLen'] > 7) $pg['codeLen'] = 7; // Set the value of 'usermail' to 0 if it's incorrect if($pg['usermail'] < 0 || $pg['usermail'] > 2) $pg['usermail'] = 0; // **************************************************************** // **************************************************************** // DO NOT CHANGE! // URL Management $GET = array(); foreach($HTTP_GET_VARS as $name => $value) { $GET[$name] = htmlspecialchars(strip_tags($value)); } // **************************************************************** ?> mysql.inc <?PHP // Data Access Layer Class class dal { var $host; var $port; var $user; var $pass; var $db; var $tbl; var $sql_error; // holds last mysql_error() var $connection; // hold connection link // Get database access information function dal($host, $port, $user, $pass, $db, $tbl) { $this->host = $host; $this->port = $port; $this->user = $user; $this->pass = $pass; $this->db = $db; $this->tbl = $tbl; } // Connect To MySQL function connect() { if($this->connection) { return 1; } if($this->port != "") { $host = $this->host.":".$this->port; } else { $host = $this->host; } if($this->connection=mysql_connect($host, $this->user, $this->pass)) { if($this->selectdb($this->db)) { return 1; } else { return 0; } } else { $this->sql_error = mysql_error(); return 0; } } // Select MySQL Database function selectdb($db) { if(mysql_select_db($db, $this->connection)) { return 1; } else { $this->sql_error = mysql_error(); return 0; } } // For SQL querys that don't get any data // (you will get the number of affected rows if it works, or -1 if it fails) function sql($sql) { if(empty($connection)) $this->connect(); if(mysql_query($sql, $this->connection)) { $affected_records = mysql_affected_rows(); return $affected_records; } else { $this->sql_error = mysql_error(); return -1; } } // For SQL queries you use to retrieve data (1 if it works, -1 if it fails) function selectsql($sql) { if(empty($connection)) $this->connect(); if($result = mysql_query($sql, $this->connection)) { return $result; } else { $this->sql_error = mysql_error(); return -1; } } function freeresult($result) { if(mysql_free_result($result)) { return 1; } else { $this->sql_error = mysql_error(); return 0; } } // String escape function function clear($string) { return (get_magic_quotes_gpc()) ? $string : mysql_real_escape_string($string); } // Closes MySQL Connection function close() { if(mysql_close($this->connection)) { return 1; } else { $this->sql_error = mysql_error(); return 0; } } } ?> auth.inc <?PHP // Members Handling Class class auth { // Linked to the $_db class and $pg configuration array var $_db; var $pg; // Login information var $username; var $encrypted_password; // Array holding all the user's data var $userdata = array(); // Is the user logged in? var $logged = false; var $lastLogin; // Constructor function auth(&$_db, &$pg) { // Set a link the $_db class $this->_db = &$_db; $this->pg = &$pg; } // encrypt a string (password) function encrypt($str) { if($pg['encrypt'] === 'md5') { return md5($str); } else { return sha1($str); } } // Check if a string (password) is encrypted function isencrypted($str) { return (strlen($str) === 40) ? true : false; } // Check if a username exists and, if needed, get it's password // (Parameters should already be cleared) function isUser($username, $getPass = 'false') { $this->_db->connect(); if(!$getPass) { // Check if the username exists and return bool. return ($_db->sql("SELECT COUNT(*) FROM `".$_db->tbl."` WHERE `username`='".$username."'") === 1) ? true : false; } else { // Check if the username exists and return its encrypted password or false. $query = $this->_db->selectsql("SELECT `password` FROM `".$this->_db->tbl."` WHERE `username`='".$username."'"); if($row = mysql_fetch_array($query)) { $this->_db->freeresult($query); return $row['password']; } else { // Username doesn't exist return false; } } } // Check login information and proceed with login proccess if applicable // (Parameters should already be cleared) function login($username, $password) { // Check if the password is already encrypted; if not, do it. if(!$this->isencrypted($password)) $password = $this->encrypt($password); // Check if the username exists $getPass = $this->isUser($username, true); if(!$getPass) return -1; // Check if the password is correct if($getPass !== $password) return -2; // It seems everything is correct, log in $this->username = $username; $this->encrypted_password = $password; $this->logged = true; // Save current timestamp as `last_login` $this->_db->connect(); $this->_db->sql("UPDATE `".$this->_db->tbl."` SET `last_login`='".time()."' WHERE `username`='".$username."' && `password`='".$password."'"); $this->lastLogin = time(); return true; } // Retrieve current user's data and save it in an array function loadData() { if(!$this->logged) return false; $this->_db->connect(); $query = $this->_db->selectsql("SELECT * FROM `".$this->_db->tbl."` WHERE `username`='".$this->username."' && `password`='".$this->encrypted_password."'"); if($row = mysql_fetch_array($query, MYSQL_ASSOC)) { $this->userdata = $row; return true; } else return false; } // Returns an array with the current user's data; if needed, runs loadData() before function getData($what='') { // Check if the user is logged in if(!$this->logged) return false; // If needed, run loadData() if(empty($this->userdata)) $this->loadData(); // If everything worked fine, return the array if(empty($what)) { return (is_array($this->userdata)) ? $this->userdata : false; } else if(array_key_exists($what, $this->userdata)) { return $this->userdata[$what]; } else { return false; } } // Retrieves and returns an array with the data of another user function getDataById($id) { $this->_db->connect(); $query = $this->_db->selectsql("SELECT * FROM `".$this->_db->tbl."` WHERE `id`='".$id."' LIMIT 1"); if($row = mysql_fetch_array($query)) { $this->_db->freeresult($query); return $row; } else return false; } // Returns the ID of a user from it's username function getIdByUser($username) { $this->_db->connect(); $query = $this->_db->selectsql("SELECT `id` FROM `".$this->_db->tbl."` WHERE `username`='".$username."'"); return (($row = mysql_fetch_array($query)) && $this->_db->freeresult($query)) ? $row['id'] : false; } // Logout function logout() { // Destroy variables $this->username = null; $this->encrypted_password = null; $this->userdata = null; // Kill Session session_destroy(); return true; } // Check if it's the config-admin-user function isRoot($username, $password) { if($this->pg['admin'] !== $username) return -1; if($this->pg['pass'] !== $password) return -2; return true; } // Check if it's a admin-user function isAdmin($username='', $password='') { if(!$this->isencrypted($password)) $password = $this->encrypt($password); if(empty($username)) { $user = $this->getData(); } else { $this->login($username, $password); $this->loadData(); } return ($this->userdata['admin']) ? true : false; } // Check if a username has a valid format function checkName($username) { if(empty($username)) return -1; if(strlen($username) < 3) return -2; if(strlen($username) > 15) return -3; return 1; } } ?> Quote Link to comment https://forums.phpfreaks.com/topic/53549-error-with-login-scriptysql_connect-access-denied-for-user-rootlocalhost/ Share on other sites More sharing options...
OmarHaydoor Posted May 30, 2007 Share Posted May 30, 2007 Hello.. create user with password and try again Bye Quote Link to comment https://forums.phpfreaks.com/topic/53549-error-with-login-scriptysql_connect-access-denied-for-user-rootlocalhost/#findComment-264644 Share on other sites More sharing options...
thegod Posted May 30, 2007 Share Posted May 30, 2007 plus can i short and use it as an include_once and your pages Quote Link to comment https://forums.phpfreaks.com/topic/53549-error-with-login-scriptysql_connect-access-denied-for-user-rootlocalhost/#findComment-264646 Share on other sites More sharing options...
runnerjp Posted May 30, 2007 Author Share Posted May 30, 2007 plus can i short and use it as an include_once and your pages i dont get you Quote Link to comment https://forums.phpfreaks.com/topic/53549-error-with-login-scriptysql_connect-access-denied-for-user-rootlocalhost/#findComment-264649 Share on other sites More sharing options...
runnerjp Posted May 30, 2007 Author Share Posted May 30, 2007 even if i try and register a new user i get Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: NO) in /home/runnerse/public_html/website/login/include/mysql.inc.php on line 46 Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: NO) in /home/runnerse/public_html/website/login/include/mysql.inc.php on line 46 Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/runnerse/public_html/website/login/include/mysql.inc.php on line 86 Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/runnerse/public_html/website/login/include/auth.inc.php on line 59 You have to write your full name. so its not connecting to the db but i dont get why :S Quote Link to comment https://forums.phpfreaks.com/topic/53549-error-with-login-scriptysql_connect-access-denied-for-user-rootlocalhost/#findComment-264651 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.