Comunidad de diseño web y desarrollo en internet online

Pasar los datos del login a los campos de la bienvenida

Citar            
MensajeEscrito el 15 Nov 2006 06:41 pm
Amigos, tengo un problema, creo que sencillo, pero no logro dar con la forma de resolverlo: tengo una base de datos sencilla y puedo introducir los datos de los usuarios y sus claves, y cuando se usa el login la base de datos me dá la entrada, pero cuando quiero que el nombre y los datos de la persona que que le ha sido permitida la entrada, se reflejen en una bienvenida a la página, no se refleja nada en los campos que tengo en la parte que uso para eso. Me explico: el login está en un cuadro de la película (swf) y una vez que el usuario ha sido admitido por la BD , pasa a otro cuadro donde tengo la bienvenida y los campos de: nombre, e-mail etc., el php de "entrada" no funciona porque no refleja los datos del php "pase" del login. He tratado con el mysql_fetch_array, pero no sé como decirle que son los datos de la persona que acaba de entrar los que quiero que refleje en los campos. He uasado el "include", para incluir el php "pase", ahora estoy usando el "require_once" y nada. Por supuesto que sé que no lo estoy haciendo bien y de allí este S.O.S. Cualquiera que entienda lo que quiero decir, por favor mándeme un tip a ver si salgo de esta. Gracias a todos.

Por zapata

46 de clabLevel



Genero:Masculino  

Venezuela

msie
Citar            
MensajeEscrito el 15 Nov 2006 07:09 pm

Por dmvalverde

150 de clabLevel



Genero:Masculino  

Extremadura

firefox
Citar            
MensajeEscrito el 16 Nov 2006 05:11 am
gracias dm, entré en el tutorial y es lo mismo que he conseguido en otras búsquedas. Mi problema radica en que no encuentro la forma de decirle al php de "entrada" que coloque los datos de la fila del usuario que acaba de entrar. El php de "pase" tiene los datos de nombre y contraseña para ser aceptado y cuando pasa al siguiente cuadro, donde entra a funcionar el php de "entrada", no se reflejan los datos del usuario que acaba de recibir la autorización. El tutorial que me recomendaste te dice como hacer para que entren los usuarios usando su login y contraseña, pero solo hasta ahí, pareciera suficiente para entrar a una página en general, pero no a un lugar especifico dentro de la página. Pienso que debe haber una forma de decirle al php de "entrada" que utilice la fila del ususario que acaba de recibir la autorización para entrar con el php de "pase".

Por zapata

46 de clabLevel



Genero:Masculino  

Venezuela

msie
Citar            
MensajeEscrito el 16 Nov 2006 11:35 pm
:roll: No se si te entiendo bien, pero lo que puedes hacer es cuando estás accediendo con el login puedes pasarles los datos que tu quieras del php a flash. Por ejemplo:

(consulta.php)

Código :

...
} else{
                   //usuario y pass correctos
                   echo 'datos correctos<br>';
                   ?>&opcion=2&
                   &tipo=<? echo $sql2[1]; ?>&<?
                   // aquí le pasas mas datos como el nombre, apellidos, vamos lo que tengas 
                   //  en tu BD y quieras mostrar en la pantalla.
               }
           }
           mysql_close($conn);
      }
?>


Luego lo recuperas en flash y las guardas por ejemplo en unas variables o se las asignas directamente a los campos de texto donde se mostrarán esos datos.

Esto sería una forma de hacerlo, si te entendio bien... :wink:

Un saludo.

Por dmvalverde

150 de clabLevel



Genero:Masculino  

Extremadura

firefox
Citar            
MensajeEscrito el 17 Nov 2006 07:11 am
te paso mi sistema de usuarios creo que es lo que necesitas:

index.php (ingreso a la zona restringida y login) :

Código :

<?php
session_start();
// Mostrar error de Autentificación
require_once("../conn/conn.php");
if(isset($_POST["nick"])){
    require_once("permisos/validar.php");

};
if(isset($_SESSION["nivel_acceso"])){
     echo '
    <script language="JavaScript">
         var pagina="inicio/index.php"
         function redireccionar() 
             {  
              
                 parent.location.href=pagina
             } 
          setTimeout ("redireccionar()", 1000);
     </script>
    ';
}
else{
echo '
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title> administración web</title>
<meta name="generator" content="editplus">
<meta name="author" content="">
<meta name="keywords" content="">
<meta name="description" content="">
</head>

<body bgcolor="#3399FF">
<div style="position: absolute; top:200px; left: 50px;"> 
    <form action="index.php" method="post">
        <table width="200">
        <tr>
            <td colspan="2"><font size="5" color="#FFFFCC">Esta usted entrando a una zona restringida</font></td>
         </tr>
         <tr>
            <td> Usuario:</td>
            <td>Password:</td>
         </tr>
         <tr>
            <td><input type="text" name="nick"></td>
            <td><input type="password" name="password"></td>
         </tr>
        <tr>
            <td colspan="2"><input type="submit" value="entrar"></td>
         </tr>
         </table> 
          
    </form>
</div>

</body>
</html>
';

};
?>

validar.php

Código :

<?php
session_start();
mysql_select_db($database_conn, $conn);
$sql= 'SELECT * FROM `usuarios` WHERE `nick` = \''.$_POST["nick"].'\' AND `password` = \''.$_POST["password"].'\' LIMIT 0, 30 ';
    $matriz_verifica = mysql_query($sql, $conn) or die(mysql_error());
    $fila_verifica = mysql_fetch_assoc($matriz_verifica);
    if($fila_verifica["nick"] == $_POST["nick"] && $fila_verifica["password"] == $_POST["password"] ) {
       $_SESSION['nivel_acceso']= $fila_verifica["nivel_acceso"]; 
      $_SESSION['nick']= $fila_verifica["nick"]; 
      
    } 
    else {
       echo "<h1>Su contraseña o password es incorrectos<h1>";
    }
?>

salir.php

Código :

<?php
session_start();
unset($_SESSION['nivel_acceso']); 
unset($_SESSION['nick']); 
ob_start();
    header ("Location: ../../index.php"); 
ob_end_flush(); 
?>


y en cada pagina restringida colocas este codigo para validar si el usuario tiene permiso

Código :

//-- se verifica la sesion --//
session_start();
if($_SESSION['nivel_acceso']<10 && isset($_SESSION['nivel_acceso']) )
{
//acciones que suceden cuando el usuario es permitido por ejemplo incluir la conexión a la db
}
else{
// usuario denegado se le manda a paseo
ob_start();
    header ("Location: ../index.php"); 
ob_end_flush(); 
}; 
//-- /se verifica sesion --//


disculpen las tablas pero en esto no me importo (ni conocia los estandares)
además si existe algun hoyo de seguridad hagan el favor de avisar

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA



Ultima edición por Inyaka el 17 Nov 2006 04:00 pm, editado 2 veces

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 17 Nov 2006 03:19 pm
Tu aporte está muy bien, lo que más me ha gustado ha sido la parte en la que mandas a paseo a los que no estan autentificados... Gracias. :)

Por Sisco

BOFH

3700 de clabLevel

12 tutoriales
4 articulos

Genero:Masculino   Bastard Operators From Hell

Catalunya

firefox
Citar            
MensajeEscrito el 17 Nov 2006 03:48 pm
entonces lo posteo a la biblioteca de aportes, que bien que te halla gustado ^^

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 20 Nov 2006 07:38 am
inyaka gracias por tu aporte, estoy seguro que lo voy a tener en cuenta para mis proximas BDs con autentificación....usarlo ahora significa hacer todo el trabajo nuevamente.....aquí pongo el código de php "entrada" que estoy usando y es el que quiero que refleje los datos del usuario que acaba de ser admitido por php "pase".....la contraseña y la BD existen..........


<?

$host = "localhost";
$user = "zapata";
$pass = "";
$bbdd = "";

$conexio = mysql_connect($host,$user,$pass) or die(mysql_error());
mysql_select_db($bbdd,$conexio) or die(mysql_error());


$res = mysql_query("SELECT * FROM invitados WHERE nombre = ('$nombre') AND email = ('$email') AND signo ('$signo')" Limit 1)

echo "<zapata>";
while($val=mysql_fetch_array($res)){
echo "<datos nombre=\"".$val[nombre]."\" email=\"".$val[email]."\" signo=\"".$val[signo]."\" />";
}
echo "</zapata>";

?>

Por zapata

46 de clabLevel



Genero:Masculino  

Venezuela

msie
Citar            
MensajeEscrito el 27 Oct 2008 09:48 pm
Hola inyaka. Como me dijiste publico en este post los códigos de mi sistema de registro ya que no sabia que tenia esos bugs tan feos:

control.php

Código :

<?php 
session_start();     
$usuario = $_POST['usuario']; 
$_SESSION['usuario'] = $usuario;  
//conecto con la base de datos   
$conn = mysql_connect("localhost","usuario","clave");   
//selecciono la BBDD   
mysql_select_db("mibasededatos",$conn); 

//Sentencia SQL para buscar un usuario con esos datos   
$ssql = "SELECT * FROM mitabla WHERE nombre_usuario='$usuario' and clave_usuario='$contrasena'";   
  
//Ejecuto la sentencia   
$rs = mysql_query($ssql,$conn);   
  
//vemos si el usuario y contraseña es váildo   
//si la ejecución de la sentencia SQL nos da algún resultado   
//es que si que existe esa conbinación usuario/contraseña   
if (mysql_num_rows($rs)!=0){   
    //usuario y contraseña válidos   
    //defino una sesion y guardo datos   
    session_start();   
    session_register("autentificado");   
    $autentificado = "SI";   
    header ("Location: aplicacion.php");   
}else {   
    //si no existe le mando otra vez a la portada   
    header("Location: index.php?errorusuario=si");   
}   
mysql_free_result($rs);   
mysql_close($conn);   
?> 


seguridad.php

Código :

<?   
//Inicio la sesión   
session_start();   
  
//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO 
if ($_SESSION["autentificado"] != "SI") {   
    //si no existe, envio a la página de autentificacion   
    header("Location: index.php");   
    //ademas salgo de este script   
    exit();   
}   
?> 


aplicacion.php

Código :

<?include ("seguridad.php");?>   
<?php   
// Inicializamos sesion   
session_start();   
// Comprovamos si existe la variable   
if ( isset ( $_SESSION['usuario'] ) ) { // cambiarlo por $_SESSION['usuario']   
// Si existe   
echo $_SESSION['usuario'];   
} else {   
// Si no existe   
echo 'desconocido';   
}   
?>

Por xematick

50 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 27 Oct 2008 10:27 pm
el bug al que me refiero es el de poner directamente variables del tipo POST dentro del sql, sin antes validarlas, ahora no tengo tiempo de crear el ejemplo, espero a la noche darme el animo

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.