Ver Mensaje Individual
  #10 (permalink)  
Antiguo 20/03/2005, 11:46
coyote20
 
Fecha de Ingreso: febrero-2005
Mensajes: 867
Antigüedad: 19 años, 2 meses
Puntos: 3
login.php

<?php
// Inicializamos las variables
$loginCorrecto = false;
unset($_SESSION['id']);
$nickUsuarioL="";
$emailUsuarioL="";
$nombreUsuarioL="";
//Inicializamos el nº de recargas de la página si no está inicializado
if(!isset($_SESSION['recarga'])){
$_SESSION['recarga'] = 0;}
//Inicializamos la variable sid para utilizarla más tarde
$sid = md5(SID);

//Incluimos el script que detecta el navegador y la IP del usuario
include('identificar.inc.php');
//Hayamos la variable que le corresponde al navegador que se está usando
//para luego compararla con la de la base de datos
$identificador = md5(get_full_ip() .'-'. browser_detection());

if(!isset($_COOKIE["Acepta"]))// Comprueba si acepta cookies
{
echo 'Acepto cookies, que pasa?!!??<br>';

// Comprueba que existan las cookies de nick y password
if(isset($_COOKIE["usNick"]) && isset($_COOKIE["usPass"]))
{
// Comprueba q haya un usuario en la BD con esos datos
$result = mysql_query("SELECT * FROM usuarios WHERE nick = '".$_COOKIE["usNick"]."' AND
sid = '".$_COOKIE["usPass"]."' AND identificador = '".$identificador."'");
if($row = mysql_fetch_array($result))
{
$sql = "Update usuarios Set sid = '".$sid."', ultima_visita = NOW() Where id = '".$row['id']."'";
mysql_query($sql) or die (mysql_error());

// Si es que existe regraba las cookies y registra unas cuantas variables q pueden ser utiles
setcookie("usNick",$_COOKIE["usNick"],time()+7776000);
setcookie("usPass",md5(SID),time()+7776000);

$_SESSION['usNick'] = $_COOKIE["usNick"];
$_SESSION['usPass'] = md5(SID);
$_SESSION['id'] = $row['id'];

$loginCorrecto = true;
$nickUsuarioL = $row["nick"];
$emailUsuarioL = $row["email"];
$nombreUsuarioL = $row["nombre"];
}
else
{
// Si no existe, destruimos las cookies.
setcookie("usNick","x",time()-3600);
setcookie("usPass","x",time()-3600);
}
mysql_free_result($result);// Libera la consulta
}
}
else // Si es que no acepta cookies
{
// Comprueba si ya ha probado a escribir la cookie y si ya ha probado es que no se aceptan
if (isset($_COOKIE['Acepta']) && $_SESSION['recarga'] > 1)
{
echo 'No acepto cookies, que pasa?!!??<br>';
}

// Comprueba las variables de nick y password pero esta vez en variables de sesión
if(isset($_SESSION["usNick"]) && isset($_SESSION["usPass"]))
{
// Comprueba q haya un usuario en la BD con esos datos
$result = mysql_query("SELECT * FROM usuarios WHERE nick = '".$_SESSION["usNick"]."' AND
sid = '".$_SESSION["usPass"]."' AND identificador = '".$identificador."'");
if($row = mysql_fetch_array($result))
{
$sql = "Update usuarios Set ultima_visita = NOW() Where id = '".$row['id']."'";
mysql_query($sql) or die (mysql_error());

// Si es que existe registra unas cuantas variables q pueden ser utiles
$_SESSION['id'] = $row['id'];
$loginCorrecto = true;
$nickUsuarioL = $row["nick"];
$emailUsuarioL = $row["email"];
$nombreUsuarioL = $row["nombre"];
}
else
{
// Si no existe destruimos las sesiones.
unset($_SESSION['usNick']);
unset($_SESSION['usPass']);
unset($_SESSION['id']);
}
mysql_free_result($result);// Libera la consulta
}
}
// Esto indica que la ya se ha probado a escribir la cookie
$_SESSION['recarga'] = $_SESSION['recarga']+1;
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>


</body>
</html>

me da el siguiente error

Notice: Undefined variable: _SESSION in d:\inetpub\wwwroot\PRUEBA4\TMP22gbrdnw5u.php on line 4

Notice: Use of undefined constant SID - assumed 'SID' in d:\inetpub\wwwroot\PRUEBA4\TMP22gbrdnw5u.php on line 12

------------------

formulario_login.php

<?
// Inicio de sessión
session_start();

?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<FORM ACTION="ingresar.php?<? echo SID ?>" METHOD="post">
Nick : <INPUT TYPE="text" NAME="nick" SIZE=20 MAXLENGTH=20>
<BR>
Password: <INPUT TYPE="password" NAME="password" SIZE=28 MAXLENGTH=20>
<BR>
<INPUT TYPE="submit" CLASS="boton" VALUE="Ingresar">
</FORM>


</body>
</html>

-----------------
index.php

<?php
// Inicio de sessión
session_start();
// Servidor de la Base de Datos
$servidorBD="localhost";
// Usuario de la Base de Datos
$usuarioBD="dominicana";
// Contraseña de la Base de Datos
$passBD="clave_de_dominicana";
// Nombre de la Base de Datos
$nombreBD="nuevo";
// Conecto con la base de datos
$conectar = mysql_connect($servidorBD,$usuarioBD,$passBD) or die ("Imposible conectar con la base de datos");
// Selecciono la BBDD
mysql_select_db($nombreBD,$conectar) or die ("Imposible conectar con la base de datos");

// Probamos que acepte cookies y grabamos una
setcookie("Acepta","cookies si",time()+7776000);

// Incluye el script que comprueba si ya estás logueado o si tienes una cookie que te permita
// entrar sin hacer login otra vez.
include("login.php");

if($loginCorrecto)
{
echo 'Aqui el contenido solo para usuarios registrados
<p>Estas identificado en el sistema como -- '.$nickUsuarioL.'--
<br>
<a href="logout.php?'. SID .'">logout</a>';
}
else
{
echo 'El sistema no lo ha identificado, solo los usuarios registrados tienen acceso a este area
<br>
<a href="formulario.php?'. SID .'">registro</a>
<br>
<a href="formulario_login.php?'. SID .'">login</a>';
}
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<?php
echo "<p>numero de visitantes " ;
$maestro01 = fopen("contador_base.txt","r");
$leer = fgets($maestro01,9999999);
echo $leer;
fclose($maestro01);
$maestro01 = fopen("contador_base.txt","r+");
$leer=fgets($maestro01,9999999);
rewind($maestro01);
fputs($maestro01,$leer+1);
fclose($maestro01);
?>


</body>
</html>

aqui todo bien
-----------------

eso es todo espero que me ayuden para poder seguir con mi web mil gracias desde ahora