Foros del Web » Programando para Internet » PHP »

sesiones usuarios y panel control

Estas en el tema de sesiones usuarios y panel control en el foro de PHP en Foros del Web. Buenas Tardes amigos, mi duda es la siguiente: Toy terminando una web en php que utiliza seciones de usuarios php una de mis dudas es ...
  #1 (permalink)  
Antiguo 26/02/2008, 13:56
Avatar de jakuam  
Fecha de Ingreso: abril-2007
Mensajes: 354
Antigüedad: 17 años
Puntos: 0
sesiones usuarios y panel control

Buenas Tardes amigos, mi duda es la siguiente:
Toy terminando una web en php que utiliza seciones de usuarios php una de mis dudas es como hacer para que le avise al usuario cuando se va a registrar y pone un nombre que el nombre elegido ya esta en la base de datos.

La otra duda es la como hacer para que una ves iniciada la sesion de usuario le paresca una panel de control o bienvenida en algun lado de la web. Ejemplo es el de este foro que cuando no estas registrado te aparece para que loguees y una vez logueado te aparece bienvenido jakuma... ver panel control, ver mensajes.. ect..

supongo que se puede hacer con un if else ... necesitaria su ayuda

desde ya muchas gracias..
__________________
Jakuam
Reserva Hoteles Online
Turismo San Rafael Mendoza
  #2 (permalink)  
Antiguo 26/02/2008, 14:15
 
Fecha de Ingreso: mayo-2006
Mensajes: 120
Antigüedad: 18 años
Puntos: 3
Re: sesiones usuarios y panel control

1. Siempre antes de registrar un usuario tenes que hacer una consulta a la vace de datos con el campo que lo identifica, para avisarle que está registrado. Con esto logras un mensaje agradable al usario. Por otra parte también podrías definir un índice unique sobre el campo que identifica a los usuarios, por lo que el motor no permitiría que por error se registren dos usuarios distintos. Te recomiendo que hagas las dos cosas.
2. Sí, se podría hacer con un if. Todo el resto lo tendrías que programar, poco a poco.

Saludos, espero que te haya servido.
__________________
programación php
  #3 (permalink)  
Antiguo 26/02/2008, 15:57
(Desactivado)
 
Fecha de Ingreso: febrero-2008
Ubicación: Argentina, Santa Fe, Rosario
Mensajes: 350
Antigüedad: 16 años, 2 meses
Puntos: 5
Re: sesiones usuarios y panel control

Mirá este post...en algo te puede ayudar...



http://mrb.laweb.es/pages/manuales/tutoriales/0001/
  #4 (permalink)  
Antiguo 26/02/2008, 16:08
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Re: sesiones usuarios y panel control

Mira este pequeño tutorial que te puede servir Autentificacion de usuarios en PHP

Saludos.
  #5 (permalink)  
Antiguo 26/02/2008, 16:43
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: sesiones usuarios y panel control

comienza por una DB asi:

CREATE TABLE `usuarios` (
`id` int(11) NOT NULL auto_increment,
`usuario` varchar(20) NOT NULL,
`password` varchar(10) NOT NULL,
`descripcion` text character set utf8 collate utf8_spanish_ci NOT NULL,
`email` varchar(45) character set utf8 collate utf8_spanish_ci default NULL,
`fecha` date NOT NULL,
PRIMARY KEY (`id`)



para mantener al usuario identificado has de comenzar el codigo iniciando una sesion

Código PHP:
session_start(); 

este form para registro:

Código HTML:
<form action="registro.php" method="post">
          <table width="59%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td height="81" colspan="2"><div align="center"><span class="Estilo18">Esta intentando entrar en una zona restringida a usuarios, por favor, registrese, le llevara 30 sg.</span></div></td>
              </tr>
            <tr>
              <td height="81" colspan="2"><div align="center" class="Estilo17">Registro</div></td>
              </tr>
            <tr>
              <td width="43%" height="31" bgcolor="#CCCCCC">Usuario (max 20):</td>
              <td width="49%" bgcolor="#CCCCCC"><input type="text" name="username" size="20" maxlength="20" /></td>
              </tr>
            <tr>
              <td height="29" bgcolor="#CCCCCC">Password (max 10):</td>
              <td bgcolor="#CCCCCC"><input type="password" name="password" size="10" maxlength="10" /></td>
              </tr>
            <tr>
              <td height="29" bgcolor="#CCCCCC">Confirma:</td>
              <td bgcolor="#CCCCCC"><input type="password" name="password2" size="10" maxlength="10" /></td>
              </tr>
            <tr>
              <td height="29" bgcolor="#CCCCCC">Email (max 40): </td>
              <td bgcolor="#CCCCCC"><input type="text" name="email" size="20" maxlength="40" /></td>
              </tr>
            <tr>
              <td height="40" colspan="2"><div align="center">
                <input type="submit" value="Registrar" />
              </div></td>
              </tr>
          </table> 
despues para el registro de user usa este codigo y llamalo registro.php:

Código PHP:
 <?php
session_start
();
//datos para establecer la conexion con la base de mysql.
mysql_connect('localhost','tu_usuario','tu_password')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('registro')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function 
formRegistro(){
?>
          <?php
}
// verificamos si se han enviado ya las variables necesarias.
if (isset($_POST["username"])) {
    
$username $_POST["username"];
    
$password $_POST["password"];
    
$password2 $_POST["password2"];
    
$email $_POST["email"];
    
// Hay campos en blanco
    
if($username==NULL|$password==NULL|$password2==NULL|$email==NULL) {
        echo 
"un campo está vacio.";
        
formRegistro();
    }else{
        
// ¿Coinciden las contraseñas?
        
if($password!=$password2) {
            echo 
"Las contraseñas no coinciden";
            
formRegistro();
        }else{
            
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían
            
$checkuser mysql_query("SELECT usuario FROM usuarios WHERE usuario='$username'");
            
$username_exist mysql_num_rows($checkuser);
            
$checkemail mysql_query("SELECT email FROM usuarios WHERE email='$email'");
            
$email_exist mysql_num_rows($checkemail);
            if (
$email_exist>0|$username_exist>0) {
                echo 
"El nombre de usuario o la cuenta de correo estan ya en uso";
                
formRegistro();
            }else{
                
$query 'INSERT INTO usuarios (usuario, password, email, fecha)
                VALUES (\''
.$username.'\',\''.$password.'\',\''.$email.'\',\''.date("Y-m-d").'\')';
                
mysql_query($query) or die(mysql_error());
                echo 
'El usuario '.$username.' ha sido registrado de manera satisfactoria.<br />';
                echo 
'Ahora puede entrar ingresando su usuario y su password <br />';
                
?>

para mantener al usuario en la sesion y que el sepa que esta logeado usa este codigo en algun sitio de la cabecera por ejemplo:


Código PHP:
    <?php

if (isset($_SESSION['k_username'])) 
{
echo 
'Hola, ';
echo 
'<b>'.$_SESSION['k_username']. '</b>.';


    echo 
'<a href="salir.php">salir</a>';
    }
?>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:39.