Foros del Web » Programando para Internet » PHP »

PHP OO Tener Sensibilidad De Mayusculas Y Minusculas En PHP

Estas en el tema de Tener Sensibilidad De Mayusculas Y Minusculas En PHP en el foro de PHP en Foros del Web. Hola amigos del web, el dia de hoy tengo un grave probloema y es que, mis usuarios de un juego que tengo en internet me ...
  #1 (permalink)  
Antiguo 30/03/2014, 02:05
 
Fecha de Ingreso: marzo-2014
Mensajes: 1
Antigüedad: 10 años, 8 meses
Puntos: 0
Pregunta Tener Sensibilidad De Mayusculas Y Minusculas En PHP

Hola amigos del web, el dia de hoy tengo un grave probloema y es que, mis usuarios de un juego que tengo en internet me dicen que tienen problemas para loguearse porque cuando se registran la cantraseña que ponen ya sea en mayuscula o minuscula no coincide, porque en el register.php hay una string que hace que todo se vuelva en minuscula, ( if( strtolower($_POST['code'])!= strtolower($_SESSION['texto'])){ ) aqui les dejo el codigo para que me ayuden a que cuando un nuevo usuario se registre, en el campo contraseña y usuario sea como ellos lo ponen osea que no lleve ninguna modificacion, aqui esta el codigo:

<?
session_start();
?>
<? include('header.php'); ?>



<?

if(isset($_COOKIE["usNick"]) && isset($_COOKIE["usPass"]))
{

?>

<b><a href="#" onClick="window.location.reload()">Reload Page</a></b>

<? include('footer.php'); ?>


<? exit(); } ?>



<?



// incluimos archivos necesarios

require('config.php');
//require('admin/funciones.php');

if (isset($_POST["username"])) {

if( strtolower($_POST['code'])!= strtolower($_SESSION['texto'])){

echo "<br><br>SECURITY CODE ERROR... ";

include('footer.php'); exit();
}


// Declaramos las variables

$username = $_POST["username"];
$password = $_POST["password"];
$cpassword = $_POST["cpassword"];
$email = $_POST["email"];
$cemail = $_POST["cemail"];
$pemail = $_POST["pemail"];
$country = $_POST["country"];


// comprobamos que no haya campos en blanco

if($username==NULL|$password==NULL|$cpassword==NUL L|$email==NULL|$cemail==NULL|$pemail==NULL|$countr y==NULL) {
echo "All Fields Required";
}else{


// sanitizamos las variables

$username = uc($username);
$password = uc($password);
$cpassword = uc($cpassword);
$email = limpiar($email);
$cemail = limpiar($cemail);
$pemail = limpiar($pemail);
$country = limpiar($country);


// limitamos el numero de caracteres

$username=limitatexto($username,15);
$password=limitatexto($password,15);
$cpassword=limitatexto($cpassword,15);
$email=limitatexto($email,100);
$cemail=limitatexto($cemail,100);
$pemail=limitatexto($pemail,100);
$country=limitatexto($country,15);


// comprobamos que tengan un minimo de caracteres

minimo($username);
minimopass($password);


// ¿Coinciden las contraseñas?
if($password!=$cpassword) {
echo "Passwords Do Not Match";
}else{


// ¿Coinciden los emails?
if($email!=$cemail) {
echo "Emails Do not Match";
}else{


// Comprobamos que sea un email valido
ValidaMail($email);


// Comprobamos que sea un email valido
ValidaMail($pemail);





// Comprobamos que no se haya creado otra cuenta desde la misma ip

$laip = getRealIP();


if($laip!="127.0.0.1")
{

$checkip = mysql_query("SELECT ip FROM tb_users WHERE ip='$laip'");
$ip_exist = mysql_num_rows($checkip);

}

if ($ip_exist>0) {
echo "Error: You have created an account.";
}else{


// Comprobamos que el nombre de usuario, email y el email de paypal no existan

$checkuser = mysql_query("SELECT username FROM tb_users WHERE username='$username'");
$username_exist = mysql_num_rows($checkuser);

$checkemail = mysql_query("SELECT email FROM tb_users WHERE email='$email'");
$email_exist = mysql_num_rows($checkemail);

$checkpemail = mysql_query("SELECT pemail FROM tb_users WHERE pemail='$pemail'");
$pemail_exist = mysql_num_rows($checkpemail);

if ($email_exist>0|$username_exist>0) {
echo "Username or Email Already in Use.";
}else{

if ($pemail_exist>0) {
echo "Your Paypal Address It's Already in Use.";
}else{


// Si se ha introducido un referer comprobamos que exista

if ($_POST["referer"] != "") {

// Sanitizamos la variable

$referer = limpiar($_POST["referer"]);
$referer=limitatexto($referer,15);

$checkref = mysql_query("SELECT username FROM tb_users WHERE username='$referer'");
$referer_exist = mysql_num_rows($checkref);

if ($referer_exist<1) {
// En caso de no existir el referer damos un mensaje de error
echo "Error: The referer User Doesn't Exists"; include('footer.php');exit();
}else{
// Si todo parece correcto procedemos con la inserccion
$sqlz = "SELECT * FROM tb_users WHERE username='$referer'";
$resultz = mysql_query($sqlz);
$myrowz = mysql_fetch_array($resultz);

$numero=$myrowz["referals"];

$sqlex = "UPDATE tb_users SET referals='$numero' +1 WHERE username='$referer'";
$resultex = mysql_query($sqlex);
}

}


// Si todo parece correcto procedemos con la inserccion

$joindate=time();

$query = "INSERT INTO tb_users (username, password, ip, email, pemail, referer, country, joindate) VALUES('$username','$password','$laip','$email','$ pemail','$referer','$country','$joindate')";
mysql_query($query) or die(mysql_error());

echo "You have been registered correctly <b>$username</b>. Now you can <a href=\"login.php\">login</a>.";


}
}
}
}
}
}

// En caso de no haber sido enviado los datos mostramos el formulario

}else{

?>
<div align="center"><div id="form">

<form action="register.php" method="POST">
<fieldset><legend>&nbsp;All Fields Are Required&nbsp;</legend>

<table width="400" border="0" align="center">
<tr>
<td width="150" align="left"><p><label>Username</label></p></td>
<td width="250" align="left"><input type='text' size='15' maxlength='25' name='username' autocomplete="off" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left"><p><label>Password</label></p></td>
<td width="250" align="left"><input type="password" size="25" maxlength="15" name="password" autocomplete="off" class="field" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left"><p><label>Confirm Pass</label></p></td>
<td width="250" align="left"><input type="password" size="25" maxlength="15" name="cpassword" autocomplete="off" class="field" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left"><p><label>Email Address</label></p></td>
<td width="250" align="left"><input type="text" size="25" maxlength="100" name="email" autocomplete="off" class="field" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left"><p><label>Confirm Email</label></p></td>
<td width="250" align="left"><input type="text" size="25" maxlength="100" name="cemail" autocomplete="off" class="field" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left"><p><label>PayPal E-mail</label></p></td>
<td width="250" align="left"><input type="text" size="25" maxlength="100" name="pemail" autocomplete="off" class="field" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left"><p><label>Country</label></p></td>
<td width="250" align="left"><input type="text" size="25" maxlength="100" name="country" autocomplete="off" class="field" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left"><p><label>Referrer</label></p></td>
<td width="250" align="left"><input type="text" size="25" maxlength="15" name="referer" value="<? echo limpiar($_GET["r"]); ?>" autocomplete="off" class="field" value="" tabindex="1" /></td>
</tr>

<tr>
<td width="150" align="left"><p><label>Security code:</label></p></td>
<td width="250" align="left"><input type="text" size="5" maxlength="5" name="code" autocomplete="off" class="securitycode" value="" tabindex="1" /></td>
</tr>
<tr>
<td width="150" align="left">&nbsp;</td>
<td width="250" align="left"><img src="image.php?<?php echo $res; ?>" /></td>
</tr>
<tr>
<td width="150" align="left">&nbsp;</td>
<td width="250" align="right"><input type="submit" value="Enter" class="submit" tabindex="4" />
</td>
</tr>
</table>
</form>
</fieldset>
</div></div>

<?
}
?>






<? include('footer.php'); ?>


Aqui la pregunta es, que debo de quitar o modificar para que cuando se registren los datos sean como ellos quieren??tengo configurado en el server el collate utf8_bin ,Muchas gracias y espero su ayuda su amigo Jose!!!

Última edición por tutu1983; 30/03/2014 a las 02:16
  #2 (permalink)  
Antiguo 30/03/2014, 02:58
Avatar de MaNuX0218  
Fecha de Ingreso: marzo-2014
Mensajes: 787
Antigüedad: 10 años, 9 meses
Puntos: 67
Respuesta: Tener Sensibilidad De Mayusculas Y Minusculas En PHP

Te aconsejo encriptar la contraseña en md5 así será tal como la escribierón cuando se registrarón.

Código PHP:
Ver original
  1. $query = "INSERT INTO tb_users (username, password, ip, email, pemail, referer, country, joindate) VALUES('$username','md5($password)','$laip','$email','$ pemail','$referer','$country','$joindate')";
  2. mysql_query($query) or die(mysql_error());

Etiquetas: formulario, mayusculas, minusculas, mysql, select, sql, tener, usuarios, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:44.