Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/09/2009, 16:28
paulkees
 
Fecha de Ingreso: octubre-2004
Mensajes: 768
Antigüedad: 19 años, 6 meses
Puntos: 3
Proteger página con E-mail activado

Estimados...!!!

Tengo la pagina "listado.php" con un listado de usuarios y sus correos. El listado proviene de una BD con los campos "email" y "estado". El campo "estado" tiene un valor "0" ó "1" dependiendo de si el usuario que se registró, activó o no su cuenta ("0" es activado).

Ahora bien, ésta pagina del listado, la quiero proteger, es decir, que sólo la puedan ver aquellos usuarios que se han registrado y activado su e-mail. Para ésto he realizado (con mis poquísimos conocimientos) un formulario "login_user.php" donde el usuario ingresa su e-mail y lo envía, lo recibe el archivo "verificar_login_user.php" donde hace el siguiente trabajo:

1.- Verifica si el campo e-mail no está en blanco.
2.- Verifica si el e-mail introducido está en la BD.
3.- Verifica si el e-mail introducido tiene el campo "estado" activado ("0")

... y ahí me quedé. No me doy cuenta como seguir para proteger la página "listado.php", es decir, que poner en listado.php para que al llamarla, primero se muestre el formulario login_user.php y si todo es correcto muestre el listado.

No se si me explñiqué bien, pero ojalá alguien me pueda ayudar!

Saludos.

Formulario: login_user.php
Código HTML:
<form method="post" action="verificar_login_user.php">
          <table>
            <tbody>
              <tr>
                <td><input class="input"  name="email" type="text" value="" /></td>
              </tr>                          
              <tr>
                <td>
                <input type="submit" value="Enviar">&nbsp;&nbsp;<input type="reset" value="Borrar"/></div>
                </td>
              </tr>
            </tbody>
          </table>
</form> 
verificar_login_user.php
Código PHP:
<?php include($_SERVER['DOCUMENT_ROOT']."Conexión"); ?>

<?php
//datos para establecer la conexion con la base mysql.
MySQL5();

function 
formVerificar(){
?>


<?php
}

// verificamos si se ha enviado la variable necesaria, la que tenemos en nuestro form.
if (isset($_POST["email"])) {
    
$email $_POST["email"];
    echo 
"<div style='text-align:center;font-weight:bold;font-size:250%;color:#005784;margin-top:200px;'>";
    echo 
$email;
    echo 
"</div>";
    
// Comprobamos si el campos E-mail esta en blanco
    
if($email==NULL) {
        echo 
"<div style='font-size:250%;text-align:center;font-weight:bold;color:#B40404;'>Debe ingresar su dirección de correo</div>";
        
formVerificar();
        }else{
            
// Comprobamos si la cuenta de correo existe
            
$checkemail mysql_query("SELECT email FROM encuentro WHERE email='$email'");
            
$email_no_existe mysql_num_rows($checkemail);
            if (
$email_no_existe==NULL) {
                echo 
"<div style='font-size:130%;text-align:center;font-weight:bold;color:#B40404;'>Su E-mail no esta registrado</div>";
                
formVerificar();
        }else{
            
// Comprobamos si la cuenta de correo esta activada
            
$checkestado mysql_query("SELECT email, estado FROM encuentro WHERE email='$email'AND estado='0'");
            
$estado_no_activado mysql_num_rows($checkestado);
            if (
$estado_no_activado==0) {
                echo 
"<div style='font-size:130%;text-align:center;font-weight:bold;color:#B40404;'>Su Email no esta activado</div>";
                
formVerificar();
        }
        }
        }
        }
        
?>