Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/10/2010, 16:46
bobymar
 
Fecha de Ingreso: octubre-2009
Mensajes: 39
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Insertar sistema de usuarios en web

Gracias, pero sigo con la duda. Mira mis codigos son estos:

login.php

Código PHP:
 <?
session_start
();
if(isset(
$SESSION)){
header("location:user.php"); /* Si ha iniciado la sesion, vamos a user.php */
} else { 
/* Cerramos la parte de codigo PHP porque vamos a escribir bastante HTML y nos será mas cómodo así que metiendo echo's */
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Identificaci&oacute;n </title>
</head>
<body>
<h1>Dani</h1>
  <h2>Identificaci&oacute;n </h2>
<form action="comprueba.php" method="POST" class="miform">
Login: <input type="text" name="login"><br>
Password: <input type="password" name="pass"><br><br>
<input type="submit" value="Entrar" class="boton">
</form>
</body></html>
<?
/* Y cerramos el else */ 
?>
comprueba.php

Código PHP:
  <?php 
session_start
();
// 
    
include("config.php");
    
$login htmlspecialchars(trim($_POST['login']));
    
$pass sha1(md5(trim($_POST['pass']))); // encriptamos en MD5 para despues comprar (Modificado)
    // $query="SELECT * FROM usuarios WHERE login='$login'"; Antes
    
$link=mysql_connect($server,$dbuser,$dbpass);
 
    
$query sprintf("SELECT usuarios.login,
                             usuarios.nombre,
                              usuarios.apaterno, 
                             usuarios.amaterno,
                             usuarios.email
                       FROM usuarios WHERE usuarios.login='%s' && usuarios.password = '%s'"
,  // Ahora
               
mysql_real_escape_string($login),mysql_real_escape_string($pass));       
      
$result=mysql_db_query($database,$query,$link);
      
// if(mysql_num_rows($result)==0){ // antes
      
if(mysql_num_rows($result)){ // nos devuelve 1 si encontro el usuario y el password
      
        
$array=mysql_fetch_array($result);
         
//  if($array["password"]==crypt($pass,"semilla") ){ // Antes
          /* Comprobamos que el password encriptado en la BD coincide con el password que nos han dado al encriptarlo. Recuerda usar semilla para encriptar los dos passwords. */
         
$_SESSION["login"]=$array["login"];
         
$_SESSION["nombre"]=$array["nombre"];
         
$_SESSION["apaterno"]=$array["apaterno"];
         
$_SESSION["amaterno"]=$array["amaterno"];
         
$_SESSION["email"]=$array["email"];
         
$_SESSION["ola"]=$array["ola"]; // Agrgado Nuevo
         
header("Location:user.php");
       }  else {
         echo 
"Login o Password Incorrectos";  // Ahora
      

       
?>

crea_usuarios.php

Código PHP:
 <?
// 
include("config.php"); /*Traemos el archivo config*/
/*Recibimos las variables por el metodo POST*/
$login htmlspecialchars(trim($_POST['login']));
$pass1 trim($_POST['pass1']);
$pass2 trim($_POST['pass2']);
$nombrehtmlspecialchars(trim($_POST['nombre']));
$apaternohtmlspecialchars(trim($_POST['apaterno']));
$amaternohtmlspecialchars(trim($_POST['amaterno']));
$email htmlspecialchars(trim($_POST['email']));
$ola htmlspecialchars(trim($_POST['ola']));
/*Hacemos la consulta */
// $query="SELECT * FROM usuarios WHERE login='$login'"; //ANTES

$link=mysql_connect($server,$dbuser,$dbpass);
$query sprintf("SELECT login FROM usuarios WHERE usuarios.login='%s'",  // Ahora
       
mysql_real_escape_string($login)); 
$result=mysql_db_query($database,$query,$link);
if(
mysql_num_rows($result)){
  echo 
"El usuario ya existe en la BD";
} else {
mysql_free_result($result);
/* Ahora comprovamos que los dos pass coinciden */
  
if($pass1!=$pass2) {

      echo 
"Los passwords deben coincidir";

      echo 
'Click <a href="form.html">aquí</a> para volver al formulario';

  } else {

    
/* Encriptamos "Ciframos" el password

    // $pass1=crypt($pass2, "semilla"); // ANTES */

    
$pass1=sha1(md5($pass1)); // Ahora
    
    /* $query="INSERT INTO usuarios (login, nombre, apaterno, amaterno, password, email) VALUES ('$login','$nombre','$apaterno', '$amaterno','$pass1','$email')"; */  // Antes
  
    
$query  =  sprintf("INSERT INTO usuarios (login, nombre, apaterno, amaterno, password, email) VALUES ('%s','%s','%s', '%s','%s','%s')",  // Ahora
                
mysql_real_escape_string($login),   mysql_real_escape_string($nombre),
                
mysql_real_escape_string($apaterno),mysql_real_escape_string($amaterno), 
                
mysql_real_escape_string($pass1),   mysql_real_escape_string($email));       
    

    
$result=mysql_db_query($database,$query,$link);

    if(
mysql_affected_rows()){
                
    echo 
"Usuario introducido correctamente";

    } else {

    echo 
"Error introduciendo el usuario";

    } 
/* Cierre del else */

  
/* Cierre del else que corresponde a if(mysql_affected_rows.....) */
/* Cierre del else que corresponde a if(mysql_num_rows...) */
?>
User.php
Código PHP:
  <?
session_start
();
if(!isset(
$_SESSION["login"])){
header("location:login.php");
} else {
echo 
"<html><body>";
echo 
"<h1>SectorWeb.net</h1>";
echo 
"Bienvenido al Area de usurios: <strong>";
echo 
$_SESSION["nombre"]." ".$_SESSION["apaterno"]." ".$_SESSION["amaterno"]." ";
echo 
"</strong><br>Has entrado con el nick: <strong> ";
echo 
$_SESSION["login"];
echo 
"</strong><br>conseguido: <strong> ";
echo 
$_SESSION["ola"];
echo 
"</strong><br>Para cerrar la sesión, pulsa: <a href='logout.php'>Aqui</a>";
echo 
"</body></html>".isset($_SESSION);
}
?>

Quisiera implementar ese sistema a mi web. Pero no encuentro la manera. He probado con iframes y eso.