Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: tecasoft en 22 Noviembre 2012, 12:01 pm



Título: mysqli
Publicado por: tecasoft en 22 Noviembre 2012, 12:01 pm
SERIA CORRECTO ESTO:

Código:
<?php
session_start();

if(!isset($_SESSION['usuario1']))
{
$usuario=$_POST['usuario'];
$pass=$_POST['contrasena'];


if (strlen($usuario)<8 || strlen($usuario)>15)
{
      echo  "El limite esta entre 8 y 15 caracteres<br>";     
      return false;
   }

//es mejor hacer una lista blanca con caracteres permitidos que una negra, lo que no este aquí simplemente se ignora
   $validos = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789-_@#";
   for ($i=0; $i<strlen($usuario); $i++){
      if (strpos($validos, substr($usuario,$i,1))===false){
         echo  " Contiene caracteres no permitidos<br>";
                                    return false;       
         
      }
   }

$cifrad=hash('sha512',$pass);

}
else
{
$usuario=$_SESSION['usuario1'];
$cifrad=$_SESSION['contrasena'];
}

include("conexionbd.php");

$conexion=mysqli_connect($host,$usu,$pusu) or die ("Error mysqli_connect: ". mysqli_connect_error());

mysqli_select_db($conexion,$bd) or die ("Error mysqli_select_db : ". mysqli_connect_error());

$correcto=0;
$result=mysqli_query($conexion,"select cod_admin,usuario1,contrasena from REC_administradores where usuario1='$usuario' and contrasena='$cifrad'")  or die ("Error mysqli_query: ". mysqli_connect_error());

if($fila1=mysqli_fetch_array($result))
{
$fila1['cod_admin'];
$_SESSION['usuario1']=$fila1['usuario1'];
$_SESSION['contrasena']=$fila1['contrasena'];
$correcto=1;


}

if($correcto==1)
{
echo "Has entrado: ". $fila1['cod_admin'];
}

if($correcto==0)
{
echo "No entras";
unset($_SESSION['usuario1']);
unset($_SESSION['contrasena']);

}

mysqli_close($conexion);
?>


Título: Re: mysqli
Publicado por: Shell Root en 22 Noviembre 2012, 20:30 pm
Correcto en que sentido?
Muestra error? Cual?

Se más especifico.


Título: Re: mysqli
Publicado por: tecasoft en 24 Noviembre 2012, 20:47 pm
pues no habia ninguno pero me estoy dando cuenta y el campo pass le tengo k poner longitud noż? despues del $_POST para que no me hagan un bucle o algo de eso nożżżż?pasaria algo si procesa el hash muchos datos,etc,etcż?