Ver Mensaje Individual
  #5 (permalink)  
Antiguo 09/01/2013, 18:19
MatiDeve
 
Fecha de Ingreso: enero-2013
Mensajes: 40
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: Que le pongo para que haga lo que quiero a este codigo en PHP

Tené cuidado, con ese metodo te pueden realizar un injeccion SQL facilmente..

Te conviene tener un solo archivo con la conexionde base de datos para que cuando tengas que subirlo a un hosting no tengas que hacerte mucho lio.

./include/dbconnect.php

Código PHP:
<?

$conexion 
mysql_connect('localhost','root','');
mysql_select_db('nombre de la base de datos'$conexion);

?>
./action/login.php

Código PHP:
<?php

//error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING); esto ponelo cuando este todo listo asi no saltan errores.

session_start();

include(
'../include/dbconnect.php');

$usuario $_POST['nombre'];
$password $_POST['pass'];

$error = array();
$success = array();

if (empty(
$usuario) OR empty($password)){
    
$error[] = "Los campos están vacíos. ";
}

if(!
ereg("^[A-Za-z0-9]{3,}$"$usuario)){ 
    
$error[] = "El usuario contiene caracteres invalidos. ";
}

if(!
ereg("^[A-Za-z0-9]{3,}$"$password)){ 
    
$error[] = "La contraseña contiene caracteres invalidos. ";
}

if(empty(
$error)){
    
$query "SELECT * FROM usuario WHERE nombre_usuario = '$usuario' LIMIT 1";
    
$resultado mysql_query($query$conexion) or die(mysql_error());
    
$totalmysql_num_rows($resultado);

    if (
$total>0) {
        while (
$fila mysql_fetch_assoc($resultado)){
            
$sqlpwd $fila['contrasenna'];
            
$sqlid $fila['id_usuario'];
        }
    }

    if(
$password == $sqlpwd){        
        
$_SESSION['userId'] = $sqlid;
        
header("Location:../index.php");
    }else{
        
$error[] = "El usuario o la contraseña no son correctas";

        
$message '';

        foreach (
$error as $e
        {
          
$message .= "$e";
        }

        
$_SESSION['notification_login_error'] = $message;
        
header("Location: ../index.php");
    }
}else{

    
$message '';

    foreach (
$error as $e
    {
      
$message .= "<li>$e</li>";
    }

    
$_SESSION['notification_login_error'] = $message;
    
header("Location: ../index.php");
}
?>
Edit: Cesar que eso? nunca lo vi mysql_real_escape_string