Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/01/2009, 14:20
easy
 
Fecha de Ingreso: diciembre-2008
Mensajes: 454
Antigüedad: 16 años, 3 meses
Puntos: 2
Pregunta problemas con controlar el acceso a una sesion

Amigos el problema que tengo es el siguiente:
Quiero hacer un sistema en el que se pueda controlar una sesion de usuario, y que el contenido del formulario sea también un campo captcha.

tengo lo siguiente:

1- formulario de ingreso con captcha
2- pagina de control de inicio de sesion
3- pagina de control de sesiones para que sean paginas seguras
4- pagina de inicio con acceso restringido
5- pagina de salir y eliminar la sesion
6- pagina del captcha

1-
Código HTML:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="control.php">
  <p>
    <label>
    <input type="text" name="pass" />
    </label>
  </p>
  <p>
    <label>
    <img src="script.php" align="absmiddle"><input type="text" name="code" />
    </label>
  </p>
  <p>
    <label>
    <input type="submit" name="Submit" value="Enviar" />
    </label>
  </p>
</form>
</body>
</html> 
2-
Código PHP:
$conn mysql_connect("dominio""usuario""clave") or die(mysql_error());
mysql_select_db("bd"$conn) or die(mysql_error());

$pass $_POST['pass'];

$ask "SELECT * FROM tabla WHERE campo=(SHA1('$pass'))";

$resultx mysql_query($ask);
$rowq mysql_fetch_array($resultx);

$url $rowq['campo2'];
$level $rowq['campo3'];

if (
mysql_num_rows($resultx)!=0){

    
session_start();
    
$_SESSION['level'] = $level;

if (isset(
$_POST['code']) && strlen($_POST['code']) == && isset($_SESSION['code']) && strtolower($_POST['code'])==$_SESSION['code']) {
    
    
header("Refresh: 2; URL=inicio.php");
    echo 
"Great your going to be redirected to the inicio page";
    
    } elseif (
$_POST['code'] != $_SESSION["code"]) {
    
    
header("Refresh: 2; URL=index.php");
    echo 
"Sorry wrong digits";
    
    } elseif (
$_POST['pass'] != $passw) {
    
    
header("Refresh: 2; URL=index.php");
    echo 
"Sorry wrong password";
    
    } else {
    
    
header("Refresh: 2; URL=index.php");
    echo 
"Sorry nothing typed good";
    
    }
    } 
3-
Código PHP:
session_start();

$conn mysql_connect("dominio""usuario""clave") or die(mysql_error());
mysql_select_db("bd"$conn) or die(mysql_error());

$pass $_SESSION['norte'];

$ask "SELECT * FROM tabla WHERE campo=(SHA1('$pass'))";
$resultx mysql_query($ask) or die (mysql_error());
$rowq mysql_fetch_array($resultx) or die (mysql_error());

if (
$rowq['campo'] != $pass) {
    
//si no existe, envio a la página de autentificacion
    
header("Location: index.php?=denied_access");
    
//ademas salgo de este script
    
exit();

4-
Código PHP:
include"sessioncode.php"
Código HTML:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<p>welcome</p>
<p><a href="salir.php">salir </a></p>
</body>

</html> 
5-
Código PHP:
session_start();
session_destroy(); 
6-
Código PHP:
session_start();

$codigoaleatorio 'E3fhIA4dKjm9irQpN1aZgceTUtwLF6XMnkD5BG7YbJlP8qsR2CHWyouOxs';
        
$code substr($codigoaleatoriomt_rand(0strlen($codigoaleatorio)-1), 4);
$text $code 
$_SESSION["code"] = $text
$height 20
$width 50
 
$image_p imagecreate($width$height); 
$black imagecolorallocate($image_p255255255); 
$white imagecolorallocate($image_p000); 
$font_size 11
 
imagestring($image_p$font_size52$text$white); 
imagejpeg($image_pnull80); 

Mi problema es el siguiente la pagina de control de inicio de sesion (punto 2-) no está haciendo lo que le mando, porque será??

Ayuda porfa