Ver Mensaje Individual
  #28 (permalink)  
Antiguo 14/10/2005, 12:35
coyote20
 
Fecha de Ingreso: febrero-2005
Mensajes: 867
Antigüedad: 19 años, 1 mes
Puntos: 3
ingresar.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";
// Nombre de la Base de Datos
$nombreBD="formulario";
// 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 (mysql_error());

include('identificar.inc.php');

//Inicializamos la variable sid para utilizarla más tarde
$sid = md5(SID);

function quitar($mensaje)
{
$mensaje = str_replace("<","&lt;",$mensaje);
$mensaje = str_replace(">","&gt;",$mensaje);
$mensaje = str_replace("\'","'",$mensaje);
$mensaje = str_replace('\"',"&quot;",$mensaje);
$mensaje = str_replace("\\\\","&#92",$mensaje);
return $mensaje;
}

if(trim($_POST["nick"]) != "" && trim($_POST["password"]) != "")
{
$nickN = quitar($_POST["nick"]);
$passN = quitar($_POST["password"]);

$result = mysql_query("SELECT id_usuario, password FROM usuarios WHERE nick='$nickN'");
if($row = mysql_fetch_array($result))
{
if($row["password"] == md5($passN))
{
//Introduce en la BD los datos encriptados de IP,Host,y navegador
$identificador = md5(get_full_ip() .'-'. browser_detection());
$sql = "Update usuarios Set sid = '".$sid."', identificador = '".$identificador."',
ultima_visita = NOW() Where id_usuario = '".$row['id_usuario']."'";
mysql_query($sql) or die (mysql_error());
//90 dias dura la cookie
// setcookie("usNick",$nickN,time()+7776000);
// setcookie("usPass",$sid,time()+7776000);
setcookie("usNick",$nickN,time()+7776000,"/","localhost");
setcookie("usPass",$passN,time()+7776000,"/","localhost");


//También las de sesión
$_SESSION['usNick'] = $nickN;
$_SESSION['usPass'] = $sid;
$_SESSION['id_usuario'] = $row['id_usuario'];
?>
<SCRIPT LANGUAGE="javascript">
location.href = "index.php?<? echo SID ?>";
</SCRIPT>
<?
}
else
{
echo 'Password incorrecto
<br>
<a href="formulario_login.php?">Login</a>
';
}
}
else
{
echo 'Usuario no existente en la base de datos
<br>
<a href="formulario_login.php?'. SID .'">Login</a>
';
}
mysql_free_result($result);
}
else
{
echo 'Debe especificar un nick y password
<br>
<a href="formulario_login.php?">Login</a> ';
}
mysql_close();
?>

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

en la parte
include("login.php");
que esta en index.php valida el login despues del ingreso vuelve a la pagina index.php

login.php

<?php
// Inicializamos las variables
$loginCorrecto = false;
unset($_SESSION['id_usuario']);
$nickUsuarioL="";
$emailUsuarioL="";
$nombreUsuarioL="";
$apellidoUsuarioL="";
//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_usuario = '".$row['id_usuario']."'";
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_usuario'] = $row['id_usuario'];

$loginCorrecto = true;
$nickUsuarioL = $row["nick"];
$emailUsuarioL = $row["email"];
$nombreUsuarioL = $row["nombre"];
$apellidoUsuarioL = $row["apellido"];
}
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_usuario = '".$row['id_usuario']."'";
mysql_query($sql) or die (mysql_error());

// Si es que existe registra unas cuantas variables q pueden ser utiles
$_SESSION['id_usuario'] = $row['id_usuario'];
$loginCorrecto = true;
$nickUsuarioL = $row["nick"];
$emailUsuarioL = $row["email"];
$nombreUsuarioL = $row["nombre"];
$apellidoUsuarioL = $row["apellido"];
}
else
{
// Si no existe destruimos las sesiones.
unset($_SESSION['usNick']);
unset($_SESSION['usPass']);
unset($_SESSION['id_usuario']);
}
mysql_free_result($result);// Libera la consulta
}
}
// Esto indica que la ya se ha probado a escribir la cookie
$_SESSION['recarga'] = $_SESSION['recarga']+1;
?>

despues el sistema me saluda con un Bienvenido y el nombre del usuario ahi se que se logia pefectamente opteniendo todos los permisos

------------------------------------
todo a la perfecion hasta aqui

luego si el usuario quiere poner un anuncio en el rubro de computadora esta lo siguiente