Guest User

Untitled

a guest
Dec 1st, 2017
360
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.41 KB | None | 0 0
  1. <?php
  2. date_default_timezone_set('Europe/London');
  3. $debug = false;// false for live website
  4. $contact_email = "rhyslaval@gmail.com";
  5.  
  6. # **************************** #
  7. # ***** ERROR MANAGEMENT ***** #
  8. // Create the error handler.
  9. function my_error_handler ($e_number, $e_message, $e_file, $e_line, $e_vars) {
  10.  
  11. global $debug, $contact_email;
  12.  
  13. // Build the error message.
  14. $message = "An error occurred in script '$e_file' on line $e_line: \n<br />$e_message\n<br />";
  15.  
  16. // Add the date and time.
  17. $message .= "Date/Time: " . date('n-j-Y H:i:s') . "\n<br />";
  18.  
  19. // Append $e_vars to the $message.
  20. $message .= "<pre>" . print_r ($e_vars, 1) . "</pre>\n<br />";
  21.  
  22. if ($debug) { // Show the error.
  23.  
  24. echo '<p class="error">' . $message . '</p>';
  25.  
  26. } else {
  27.  
  28. // Log the error:
  29. error_log ($message, 1, $contact_email); // Send email.
  30.  
  31. // Only print an error message if the error isn't a notice or strict.
  32. if ( ($e_number != E_NOTICE) && ($e_number < 2048)) {
  33. echo '<p class="error">A system error occurred. We apologize for the inconvenience.</p>';
  34. }
  35.  
  36. } // End of $debug IF.
  37.  
  38. } // End of my_error_handler() definition.
  39. // Use my error handler:
  40. set_error_handler ('my_error_handler');
  41.  
  42. # **************************** #
  43. # ***** MYSQL CONNECTION ***** #
  44. $mysql_hostname = ("mysql-50.int.mythic-beasts.com");
  45. $mysql_database = ("rhyslaval2");
  46. $mysql_username = ("rhyslaval2");
  47. $mysql_password = ("");
  48. @mysql_connect($mysql_hostname, $mysql_username, $mysql_password)
  49. or exit("MySQL Connection Error");
  50. @mysql_selectdb($mysql_database)
  51. or exit("MySQL Database Selection Error, please check your details!");
  52.  
  53.  
  54. function generate_salt()
  55. {
  56. // Declare $salt
  57. $salt = '';
  58. // And create it with random chars
  59. for ($i = 0; $i < 3; $i++)
  60. {
  61. $salt .= chr(rand(40, 126));
  62. }
  63. return $salt;
  64. }
  65.  
  66. function user_register($username, $password)
  67. {
  68. // Get a salt using our function
  69. $salt = generate_salt();
  70. // Now encrypt the password using that salt
  71. $encrypted = md5(md5($password).$salt);
  72. // And lastly, store the information in the database
  73. $query = "INSERT INTO `bombay_customers` (`user-name`, `password`, `salt`) VALUES ('$username', '$encrypted', '$salt')";
  74. mysql_query ($query) or die ("Could not create user.{$query}");
  75. }
  76. function user_logout()
  77. {
  78. // End the session and unset all vars
  79. session_unset ();
  80. session_destroy ();
  81. }
  82. function is_authed()
  83. {
  84. // Check if the encrypted username is the same
  85. // as the unencrypted one, if it is, it hasn't been changed
  86. if (isset($_SESSION['username']) && isset($_SESSION['encrypted_name']) && (md5($_SESSION['username']) == $_SESSION['encrypted_name']))
  87. {
  88. return true;
  89. }
  90. else
  91. {
  92. return false;
  93. }
  94. }
  95. function user_login($username, $password)
  96. {
  97. // Try and get the salt from the database using the username
  98. $query = "SELECT `salt` FROM `bombay_customers` WHERE `user-name`='$username' LIMIT 1";
  99. $result = mysql_query($query);
  100. if (mysql_num_rows($result) > 0)
  101. {
  102. // Get the user
  103. $user = mysql_fetch_array($result);
  104. // Using the salt, encrypt the given password to see if it
  105. // matches the one in the database
  106. $encrypted_pass = md5(md5($password).$user['salt']);
  107.  
  108. // Try and get the user using the username & encrypted pass
  109. $query = "SELECT `id`, `user-name` FROM `bombay_customers` WHERE `user-name`='$username' AND `password`='$encrypted_pass'";
  110. $result = mysql_query($query);
  111. if (mysql_num_rows($result) > 0)
  112. {
  113. $user = mysql_fetch_array($result);
  114.  
  115. // Now encrypt the data to be stored in the session
  116. $encrypted_id = md5($user['id']);
  117. $encrypted_name = md5($user['user-name']);
  118. // Store the data in the session
  119. $_SESSION['userid'] = $user['id'];
  120. $_SESSION['username'] = $user['user-name'];
  121. $_SESSION['encrypted_id'] = $encrypted_id;
  122. $_SESSION['encrypted_name'] = $encrypted_name;
  123.  
  124. // Return ok code
  125. return true;
  126. }
  127. else
  128. {
  129. return false;
  130. }
  131. }
  132. else
  133. {
  134. return false;
  135. }
  136. }
  137. ?>
Add Comment
Please, Sign In to add comment