Hola a todos, bueno, mi duda es la siguiente: tengo un script de registro de usuarios y un login con SHA1, pero tengo un gran problema, según yo, mi script debería de insertar los valores en la DB las contraseñas en SHA1 y todo en mayúsculas, por ejemplo:
0247B192C2FAF3D3B7537C0EFC9332E57F7EAA84
Y mi script por una rara razón, cuando la inserta las pone así:
d091e41e368bdfa90dec9f17e55af2f72aba5503
Pero quisiera que se pusieran en mayúsculas, anexo aquí el código:
Código PHP:
<?php
include ("config.php");
$page = '<?xml version="1.0" encoding="utf-8" ?>
<form method="post" action="' . $_SERVER["SCRIPT_NAME"] . '">
<p style="text-align:left;">
<font color="#FFFFFF" size="2" face="verdana">Nombre de usuario</font>
<br /><input name="username" type="text" maxlength="12" style="border: 1px solid #000; background: #FFF; font-family: verdana; font-size: 9pt; color:#000; font-color: #000; width:300px; height:25px;"/><br />
<font color="#FFFFFF" size="2" face="verdana">Contraseña</font>
<br /><input name="password" type="password" maxlength="12" style="border: 1px solid #000; background: #FFF; font-family: verdana; font-size: 9pt; color:#000; font-color: #000; width:300px; height:25px;"/><br />
<font color="#FFFFFF" size="2" face="verdana">E-mail:</font>
<br /><input name="email" type="text" maxlength="255" style="border: 1px solid #000; background: #FFF; font-family: verdana; font-size: 9pt; color:#000; font-color: #ffffff; width:300px; height:25px;"/>
<br />
<button type="submit" class="boton_cuenta.png" style=" -webkit-border-top-left-radius: 5px;
-webkit-border-top-right-radius: 5px;
-webkit-border-bottom-left-radius: 5px;
-webkit-border-bottom-right-radius: 5px;-moz-box-shadow:0 0px 10px #333;
-webkit-box-shadow: 0 0px 10px #333;
box-shadow: 0 0px 10px #333;
-webkit-border-top-left-radius: 5px;
-webkit-border-top-right-radius: 5px;
-webkit-border-bottom-left-radius: 5px;
-webkit-border-bottom-right-radius: 5px;border: 0px; background-color:black;"><b><img src="images/boton_cuenta.png"></img></b></button>
<br /><br />
set realmlist <b>' . $realmlist . '</b>
</p>
</form>
';
function error_s ($text) {
echo("<p align='center'>" . $text);
}
$Username_chars = "#[^a-zA-Z0-9_\-]#";
$email_chars = "/^[^0-9][A-z0-9_]+([.][A-z0-9_]+)*[@][A-z0-9_]+([.][A-z0-9_]+)*[.][A-z]{2,4}$/";
$con = @mysql_connect($Hostname, $Username, $Password);
if (!$con) {
error_s("No se puede conectar: " . mysql_error());
};
if (!empty($_POST)) {
if ((empty($_POST["username"]))||(empty($_POST["password"]))||(empty($_POST["email"]))) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('No pusiste toda la información necesaria'));</script>");
exit();
} else {
$Usernamename = strtoupper($_POST["username"]);
$Passwordword = strtoupper($_POST["password"]);
$email = strtoupper($_POST["email"]);
$expansion = $_POST["expansion"];
if (strlen($Usernamename) < 5) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('Nombre de usuario demasiado corto'));</script>");
exit();
};
if (strlen($Usernamename) > 14) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('Nombre de usuario demasiado largo'));</script>");
exit();
};
if (strlen($Passwordword) < 8) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('Contraseña demasiado corta'));</script>");
exit();
};
if (strlen($Passwordword) > 12) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('Contraseña demasiado larga'));</script>");
exit();
};
if (strlen($email) < 4) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('E-Mail demasiado corto'));</script>");
exit();
};
if (strlen($email) > 255) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('E-Mail demasiado largo'));</script>");
exit();
};
if (preg_match($Username_chars,$Usernamename)) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('El nombre de usuario contiene caracteres ilegales'));</script>");
exit();
};
if (preg_match($Username_chars,$Passwordword)) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('La contraseña tiene caracteres ilegales'));</script>");
exit();
};
if (!preg_match($email_chars,$email)) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('El E-Mail tiene un formato incorrecto'));</script>");
exit();
};
$Usernamename = mysql_real_escape_string($Usernamename);
$Passwordword = mysql_real_escape_string($Passwordword);
$email = mysql_real_escape_string($email);
$qry = @mysql_query("select username from " . mysql_real_escape_string($RealmDatabase) . ".account where username = '" . $Usernamename . "'", $con);
if (!$qry) {
error_s("Error consultando la base de datos: " . mysql_error());
};
if ($existing_username = mysql_fetch_assoc($qry)) {
foreach ($existing_username as $key => $value) {
$existing_username = $value;
};
};
$existing_username = strtoupper($existing_username);
if ($existing_username == strtoupper($_POST['username'])) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('El nombre de usuario está siendo utilizado'));</script>");
exit();
};
unset($qry);
$qry = @mysql_query("select email from " . mysql_real_escape_string($RealmDatabase) . ".account where email = '" . $email . "'", $con);
if (!$qry) {
error_s("Error consultando la base de datos: " . mysql_error());
};
if ($existing_email = mysql_fetch_assoc($qry)) {
foreach ($existing_email as $key => $value) {
$existing_email = $value;
};
};
if ($existing_email == $_POST['email']) {
error_s("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('El E-Mail está siendo utilizado'));</script>");
exit();
};
unset($qry);
$sha_pass_hash = sha1(strtoupper($Usernamename) . ":" . strtoupper($Passwordword));
$register_sql = "insert into " . mysql_real_escape_string($RealmDatabase) . ".account (username, sha_pass_hash, email, expansion) values (upper('" . $Usernamename . "'),'" . $sha_pass_hash . "','" . $email . "','2')";
$qry = @mysql_query($register_sql, $con);
if (!$qry) {
error_s("Error creando la cuenta: " . mysql_error());
};
echo("<script language='JavaScript' type='text/javascript'>javascript:location.reload(alert('Creación de cuenta completada'));</script>");
exit();
};
} else {
echo($page);
};
?>
Disculpen si el código no está bien estructurado, no soy muy bueno en PHP y ese código no lo hice yo, solamente lo modifiqué, pero si alguien puede arreglarlo para que inserte los valores en mayúsculas se lo agradecería bastante
.
De antemano, gracias.