Tema: Login PHP
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/04/2012, 22:42
MarkiiAk
 
Fecha de Ingreso: enero-2011
Ubicación: Del otro lado del monitor
Mensajes: 43
Antigüedad: 13 años, 3 meses
Puntos: 0
Login PHP

Código PHP:
<?php
// Se hace la conecion a la base de datos
$host "localhost"// nombre del Host
$user "root"// Usuario
$psw  ""// Contraseña
$db   "usuarios"// Nombre de la base de datos
function Conectarse() 

global 
$host$user$psw$db;
   if (!(
$link=mysql_connect("$host","$user","$psw"))) 
   { 
      echo 
"Error conectando a la base de datos."
      exit(); 
   } 
   if (!
mysql_select_db("$db",$link))
   { 
      echo 
"Error seleccionando la base de datos."
      exit(); 
   } 
   return 
$link


$link Conectarse();
// Recuperacion y creacion de variables
$a$_POST['a'];
$nombrehtmlspecialchars ($_POST['nombre']) ;
$passwordmd5 (htmlspecialchars($_POST['password']));

function 
form(){ 
echo 
"<body scroll=\"auto\">
<SCRIPT LANGUAGE=\"JavaScript\">
function llenar() {
   if (form.nombre.value == \"\") {
   alert ('Debes llenar el campo de Nombre');
   return false;
   }
   if (form.password.value == \"\") {
   alert ('Debes de ingresar tu contraseña');
   return false;
   }
   return true;
}
</SCRIPT>
<form action=\"$PHP_SELF\" method=\"POST\" name=\"form\" onSubmit=\"return llenar()\"><input type=\"hidden\" name=\"a\" value=\"1\">
  <table width=\"70%\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\" class=\"windowbg2\">
    <tr> 
      <td><div align=\"center\"> 
          <table width=\"65%\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">
            <tr> 
              <td colspan=\"2\">Bienvenido al sistema por favor llena 
                los siguientes campos... </td>
            </tr>
            <tr> 
              <td>Nombre</td>
              <td><input name=\"nombre\" type=\"text\" class=\"colour1\"></td>
            </tr>
            <tr> 
              <td>Contrase&ntilde;a</td>
              <td><input name=\"password\" type=\"password\" class=\"colour1\"></td>
            </tr>
            <tr> 
              <td><input name=\"enviar\" type=\"submit\" value=\"Enviar datos\" class=\"button\"></td>
              <td><input name=\"borrar\" type=\"reset\" value=\"Borrar formulario\" class=\"button\"></td>
            </tr>
          </table>
        </div></td>
    </tr>
  </table>
  <br>
</form>
<SCRIPT language=\"JavaScript\">
<!--
document.forms[0].nombre.focus();
//-->
</SCRIPT>
</table>"

}
switch (
$a) {
   case 
1:
         
         
//Sentencia SQL para buscar un usuario con esos datos 
         
$c_usuario "SELECT * FROM usuarios WHERE usuario='$nombre' and password='$password'"
         
//Ejecuto la sentencia 
         
$r_usuario mysql_query("$c_usuario",$link) or die(mysql_error()); 
         
$r_ok mysql_fetch_array($r_usuario);
         
////////////////////////////////////////////////////////
      
if($r_ok['usuario'] != $nombre && $r_ok['password'] != $password){
         
$acceso "no";
         echo 
"<center>Nombre de usuario o contraseña incorrecta<br>
              por favor <b>intena de nuevo</b></a></center>"
;
         
form();
         }
      else{
         
$user_dat mysql_query("SELECT * FROM usuarios WHERE ID='$user_ID'") or die(mysql_error());
         
$datos mysql_fetch_array($user_dat);
         
$user_ID $r_ok['ID'];
         
$user $r_ok['usuario'];
         
$acceso "ok";
         
setcookie("nombre",$user_ID,time()+3600);
         
setcookie("password",$password,time()+3600);
         
header("LOCATION: acceso.php"); // Aqui en lugar de "acceso.php" pones el archivo que quieras que salga despues de que se ingesen bien los datos
         
}
         
   break;
   default:
   
$acceso "no";
      
form ();
   break;
}
mysql_close($link); //cierra la conexion 
?>
Me marca estos errores pero no entiendo por que me podrian ayudar:


Notice: Undefined index: a in C:\Program Files\EasyPHP-5.3.8.1\www\login.php on line 25
Que seria:"$a= $_POST['a'];"

Notice: Undefined index: nombre in C:\Program Files\EasyPHP-5.3.8.1\www\login.php on line 26
Que seria: "$nombre= htmlspecialchars ($_POST['nombre']) ;"

Notice: Undefined index: password in C:\Program Files\EasyPHP-5.3.8.1\www\login.php on line 27
Que seria:"$password= md5 (htmlspecialchars($_POST['password']));"

Notice: Undefined variable: PHP_SELF in C:\Program Files\EasyPHP-5.3.8.1\www\login.php on line 76
Que seria:"</table>""