Advertisement
Guest User

Untitled

a guest
Apr 30th, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.08 KB | None | 0 0
  1. <?php
  2.  
  3. // Configuration.
  4. // Realm database.
  5. $r_db = "realmd";
  6. // IP (and port).
  7. $ip = "127.0.0.1:3306";
  8. // Username.
  9. $user = "username";
  10. // Password.
  11. $pass = "password";
  12. // Site title.
  13. $title = "Servidor Privado de WoW. WoW Private Server.";
  14. $title2 = "server name";
  15. // End config.
  16.  
  17. function error_s ($text) {
  18. echo("<br><br><p style=\"color:#555555;font-family:Tahoma;font-size:13\">" . $text);
  19. };
  20.  
  21. $user_chars = "#[^a-zA-Z0-9_\-]#";
  22. //$email_chars = "/^[^0-9][A-z0-9_]+([.][A-z0-9_]+)*[@][A-z0-9_]+([.][A-z0-9_]+)*[.][A-z]{2,4}$/";
  23. $email_chars = "/^[^0-9][A-z0-9_\-]+([.][A-z0-9_\-]+)*[@][A-z0-9\-]+([.][A-z0-9\-]+)*[.][A-z]{2,4}$/";
  24. $pass_chars = "/^(?=.*[a-z])(?=.*\\d).{8,12}$/i";
  25.  
  26. $con = @mysql_connect($ip, $user, $pass);
  27. if (!$con) {
  28. error_s("Unable to connect to database: " . mysql_error());
  29. };
  30.  
  31. if (!empty($_POST)) {
  32. if ((empty($_POST["username"]))||(empty($_POST["password"]))||(empty($_POST["email"])) ) {
  33. error_s("No has introducido todos los campos necesarios. Please fill in all form fields.");
  34. exit();
  35. } else {
  36. $username = strtoupper($_POST["username"]);
  37. $password = strtoupper($_POST["password"]);
  38. $email = strtoupper($_POST["email"]);
  39. if (strlen($username) < 5) {
  40. error_s("Nombre de usuario demasiado corto. Username is too short. Tiene que ser minimo de 5 caracteres");
  41. exit();
  42. };
  43. if (strlen($username) > 14) {
  44. error_s("Nombre de usuario demasiado largo. Username is too long. Tiene que ser maximo de 14 caracteres");
  45. exit();
  46. };
  47. if (strlen($password) < 8) {
  48. error_s("Contraseña demasiado corta. Password is not long enough. Tiene que ser minimo de 8 caracteres");
  49. exit();
  50. };
  51. if (strlen($password) > 12) {
  52. error_s("Contraseña demasiado larga. Password is very long. Tiene que ser maximo de 12 caracteres");
  53. exit();
  54. };
  55. if (strlen($email) < 9) {
  56. error_s("Email demasiado corto. Is your email really that short?. Tiene que ser minimo de 9 caracteres");
  57. exit();
  58. };
  59. if (strlen($email) > 50) {
  60. error_s("Email demasiado largo. Is your email really that long?. Tiene que ser maximo de 50 caracteres");
  61. exit();
  62. };
  63. if (preg_match($user_chars,$username)) {
  64. error_s("El nombre de usuario contiene caracteres no permitidos. Invalid characters in username.");
  65. exit();
  66. };
  67. if (preg_match($pass_chars,$password)) {
  68. error_s("La contraseña contiene caracteres no permitidos. Invalid characters in password.");
  69. exit();
  70. };
  71. if (!preg_match($email_chars,$email)) {
  72. error_s("El correo electronico tiene un formato erroneo. Email has a non-allowed format.");
  73. exit();
  74. };
  75. $tbc = "2";
  76. $username = mysql_real_escape_string($username);
  77. $password = mysql_real_escape_string($password);
  78. $email = mysql_real_escape_string($email);
  79. $qry = @mysql_query("select username from " . mysql_real_escape_string($r_db) . ".account where username = '" . $username . "'", $con);
  80. if (!$qry) {
  81. error_s("Error querying database: " . mysql_error());
  82. };
  83. if ($existing_username = mysql_fetch_assoc($qry)) {
  84. foreach ($existing_username as $key => $value) {
  85. $existing_username = $value;
  86. };
  87. };
  88. $existing_username = strtoupper($existing_username);
  89. if ($existing_username == strtoupper($_POST['username'])) {
  90. error_s("Ese nombre de usuario ya existe. Username already exists.");
  91. exit();
  92. };
  93. unset($qry);
  94. $qry = @mysql_query("select email from " . mysql_real_escape_string($r_db) . ".account where email = '" . $email . "'", $con);
  95. if (!$qry) {
  96. error_s("Error querying database: " . mysql_error());
  97. };
  98. /* if ($existing_email = mysql_fetch_assoc($qry)) {
  99. foreach ($existing_email as $key => $value) {
  100. $existing_email = $value;
  101. };
  102. };
  103. if ($existing_email == $_POST['email']) {
  104. error_s("That email is already in use.");
  105. exit();
  106. }; */
  107. unset($qry);
  108. $sha_pass_hash = sha1(strtoupper($username) . ":" . strtoupper($password));
  109. $register_sql = "insert into " . mysql_real_escape_string($r_db) . ".account (username, sha_pass_hash, email, expansion, last_login,last_ip) values (upper('" . $username . "'),'" . $sha_pass_hash . "','" . $email . "','" . $tbc . "', NOW(),'" . $_SERVER['REMOTE_ADDR'] ."')";
  110. $qry = @mysql_query($register_sql, $con);
  111. if (!$qry) {
  112. error_s("Error creating account: " . mysql_error());
  113. };
  114. echo("Cuenta creada. Account has been created. ");
  115. echo($username);
  116. unset($qry);
  117. $qry = @mysql_query("select id from " . mysql_real_escape_string($r_db) . ".account where username = '" . $username . "'", $con);
  118. if (!$qry) {
  119. error_s("Error querying database: " . mysql_error());
  120. };
  121. if ($account_id = mysql_fetch_assoc($qry)) {
  122. foreach ($account_id as $key => $value) {
  123. $account_id = $value;
  124. };
  125. };
  126. $register_sql = "insert into " . mysql_real_escape_string($r_db) . ".rbac_account_groups (accountId, groupId, realmId) SELECT ".$account_id.", groupId, -1 FROM " . mysql_real_escape_string($r_db) . ".rbac_security_level_groups WHERE secId = 0";
  127. $qry = @mysql_query($register_sql, $con);
  128. if (!$qry) {
  129. error_s("Error creating account: " . mysql_error());
  130. };
  131. exit();
  132. };
  133. } else {
  134. echo($page);
  135. };
  136.  
  137. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement