Cita:
y se procesa en el siguiente script validar_usuario.php:<form action="validar_usuario.php" method="post">
<div id="usuario"> <input type="text" name="usuario" size="25" class= "estilotextarea" /></div>
<div id="password"><input type="password" name="password" size="25" class= "estilotextarea" /></div>
<div id="bt_registro"><a href="formulario1.html"><img src="images/registrate_ahora.png" width="109" height="23" border="0"/></a></div>
<div id="bt_enviar"><input type="image" src="images/entrar.png" /></div>
</form>
<div id="usuario"> <input type="text" name="usuario" size="25" class= "estilotextarea" /></div>
<div id="password"><input type="password" name="password" size="25" class= "estilotextarea" /></div>
<div id="bt_registro"><a href="formulario1.html"><img src="images/registrate_ahora.png" width="109" height="23" border="0"/></a></div>
<div id="bt_enviar"><input type="image" src="images/entrar.png" /></div>
</form>
Cita:
hasta aqui todo bien he imprimido en pantalla el contenido de $_SESSION['user'] = $row["usuario"] y todo bien, el detalla esta cuando quiero engresar a una pag "restringida"...para eso tengo lo siguiente, archivo.php :<?php
@session_start();
mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('xpomundo')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function quitar($mensaje)
{
$nopermitidos = array("'",'\\','<','>',"\"");
$mensaje = str_replace($nopermitidos, "", $mensaje);
return $mensaje;
}
if(trim($HTTP_POST_VARS["usuario"]) != "" && trim($HTTP_POST_VARS["password"]) != "")
{
$visita = $_POST['usuario'];
$password = $_POST["password"];
$result = mysql_query('SELECT usuario,password FROM visitantes WHERE usuario=\''.$usuario.'\'');
if($row = mysql_fetch_array($result)){
if($row["password"] == $password){
$_SESSION['user'] = $row["usuario"];
echo "secion iniciada.....redireccionando...";
print "<meta http-equiv=Refresh content=\"2 ; url=index.php\">";
}
else{
echo "<script> alert (\"Password incorrecto.\"); </script>";
print "<meta http-equiv=Refresh content=\"2 ; url=index.php#login\">";
}
}
else{
echo "<script> alert (\"El usuario no existe en la Base de Datos... porfavor Registrate es .\"); </script>";
print "<meta http-equiv=Refresh content=\"2 ; url=index.php#login\">";
}
mysql_free_result($result);
}else{
echo "<script> alert (\"Es necesario que hagas login; pon tu nombre de usuario (mail) y tu password en los cuadros de texto del formulario de login.\"); </script>";
echo "<script language=Javascript> location.href=\"index.php\"; </script>";
}
mysql_close();
?>
@session_start();
mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('xpomundo')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function quitar($mensaje)
{
$nopermitidos = array("'",'\\','<','>',"\"");
$mensaje = str_replace($nopermitidos, "", $mensaje);
return $mensaje;
}
if(trim($HTTP_POST_VARS["usuario"]) != "" && trim($HTTP_POST_VARS["password"]) != "")
{
$visita = $_POST['usuario'];
$password = $_POST["password"];
$result = mysql_query('SELECT usuario,password FROM visitantes WHERE usuario=\''.$usuario.'\'');
if($row = mysql_fetch_array($result)){
if($row["password"] == $password){
$_SESSION['user'] = $row["usuario"];
echo "secion iniciada.....redireccionando...";
print "<meta http-equiv=Refresh content=\"2 ; url=index.php\">";
}
else{
echo "<script> alert (\"Password incorrecto.\"); </script>";
print "<meta http-equiv=Refresh content=\"2 ; url=index.php#login\">";
}
}
else{
echo "<script> alert (\"El usuario no existe en la Base de Datos... porfavor Registrate es .\"); </script>";
print "<meta http-equiv=Refresh content=\"2 ; url=index.php#login\">";
}
mysql_free_result($result);
}else{
echo "<script> alert (\"Es necesario que hagas login; pon tu nombre de usuario (mail) y tu password en los cuadros de texto del formulario de login.\"); </script>";
echo "<script language=Javascript> location.href=\"index.php\"; </script>";
}
mysql_close();
?>
Cita:
la cosa es que, escribo nombre de usuario y password en el formulario, doy enviar, me redirecciona a index.php y al pulsar el boton que lleva a archivo.php me dice que no he iniciado seccion, intento esto 2 o 3 veces y me permite el acceso, o hay veces que no me da acceso... por que hace esto? que tengo mal en el codigo? <?php
@session_start();
if(isset($_SESSION['user'])){
?>
<html>
<head>
--------algunos <javascript></script>
</head>
<body>
contenido de la pag
</body>
</html>
<?php
}else{
echo "No ha iniciado secion";
}
?>
@session_start();
if(isset($_SESSION['user'])){
?>
<html>
<head>
--------algunos <javascript></script>
</head>
<body>
contenido de la pag
</body>
</html>
<?php
}else{
echo "No ha iniciado secion";
}
?>