Foros del Web » Programando para Internet » PHP »

Mostrar datos de usuario

Estas en el tema de Mostrar datos de usuario en el foro de PHP en Foros del Web. Hola, soy nuevo en esto de la creación de webs y ando bastante perdido. Mi consulta es la siguiente: Tengo este login creado con dreamweaver: ...
  #1 (permalink)  
Antiguo 26/10/2010, 07:00
Avatar de ernest_mataro  
Fecha de Ingreso: octubre-2010
Ubicación: Mataró(Barcelona)
Mensajes: 26
Antigüedad: 13 años, 6 meses
Puntos: 0
Mostrar datos de usuario

Hola, soy nuevo en esto de la creación de webs y ando bastante perdido. Mi consulta es la siguiente:
Tengo este login creado con dreamweaver:
<?php require_once('Connections/conexion.php'); ?><?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}

$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_GET['accesscheck'])) {
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}

if (isset($_POST['correoelectronico'])) {
$loginUsername=$_POST['correoelectronico'];
$password=$_POST['contrasena'];
$MM_fldUserAuthorization = "";
$MM_redirectLoginSuccess = "1.php";
$MM_redirectLoginFailed = "fallo_login.html";
$MM_redirecttoReferrer = false;
mysql_select_db($database_conexion, $conexion);

$LoginRS__query=sprintf("SELECT correoelectronico, contrasena FROM usuario WHERE correoelectronico='%s' AND contrasena='%s'",
get_magic_quotes_gpc() ? $loginUsername : addslashes($loginUsername), get_magic_quotes_gpc() ? $password : addslashes($password));

$LoginRS = mysql_query($LoginRS__query, $conexion) or die(mysql_error());
$loginFoundUser = mysql_num_rows($LoginRS);
if ($loginFoundUser) {
$loginStrGroup = "";

//declare two session variables and assign them
$_SESSION['MM_Username'] = $loginUsername;
$_SESSION['MM_UserGroup'] = $loginStrGroup;

if (isset($_SESSION['PrevUrl']) && false) {
$MM_redirectLoginSuccess = $_SESSION['PrevUrl'];
}
header("Location: " . $MM_redirectLoginSuccess );
}
else {
header("Location: ". $MM_redirectLoginFailed );
}
}
lo que me gustaria es como introduciendo el correo electronico y la contraseña se me pueden mostrar el resto de los datos de la base de datos(nombre, apellidos, sexo...) en una nueva pagina. Merci por adelantado, espero que me entendais.
  #2 (permalink)  
Antiguo 26/10/2010, 08:19
 
Fecha de Ingreso: febrero-2010
Mensajes: 47
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: Mostrar datos de usuario

Hola ernest_mataro , no se si he entendido bien lo que quieres hacer, pero si tu tienes almacenados el correo electronico y la contraseña en la base de datos, esos datos irán asociados a un usuario. Por ahí puedes sacarlos... yo lo que haría es una vez obtenido el correo electronico (por ejemplo), haces una consulta y le dices que te saque todos los datos del cliente que tenga ese email.

Ejemplo:

//////////////

$email= $_POST['email'];

$query = "select nombre, direccion, ciudad
from usuario where email= $email ";

*** y luego lo muestras en pantalla o haces con esos datos lo que veas oportuno...

/////////////

Date cuenta que tu tomas el dato que el usuario te ha dado, lo metes en una variable y luego al hacer una consulta en la base de datos, le dices que busque en la base de datos que busque ese dato, y que al mismo tiempo muestre todos los demás que le acompañen. No se si te sirve o si es lo que buscabas....
  #3 (permalink)  
Antiguo 26/10/2010, 09:27
Avatar de ernest_mataro  
Fecha de Ingreso: octubre-2010
Ubicación: Mataró(Barcelona)
Mensajes: 26
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Mostrar datos de usuario

ok, muchisimas gracias TheCarmen, lo probaré a ver que tal. Y ya se que soy un inutil, pero como lo muestro en pantalla?
  #4 (permalink)  
Antiguo 26/10/2010, 09:36
 
Fecha de Ingreso: junio-2009
Mensajes: 85
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Mostrar datos de usuario

Hola Ernesto

Con qué versión de DW estas trabajando? dependiendo de la version, lo podes hacer creando un juego de registros (Recordset) y luego llamando esos datos desde el panel vinculaciones (bindings)

Si me das la version tal vez pueda ayudarte un poco mas. Si bien no es lo optimo, Dreamweaver tiene algunas funciones preestablecidas para los manejos mas comunes con php y mysql

Saludos!
  #5 (permalink)  
Antiguo 26/10/2010, 09:41
Avatar de ernest_mataro  
Fecha de Ingreso: octubre-2010
Ubicación: Mataró(Barcelona)
Mensajes: 26
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Mostrar datos de usuario

Dreamweaver 8, bambuweb, con el juego de registro si que me sale casi todo, pero como he dicho soy un principiante total y no se vincular paginas;

Última edición por ernest_mataro; 26/10/2010 a las 09:46
  #6 (permalink)  
Antiguo 26/10/2010, 10:07
 
Fecha de Ingreso: junio-2009
Mensajes: 85
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Mostrar datos de usuario

Bueno, lo que tendrias que hace en este caso, es lo siguiente:

una vez que creaste el inicio de sesion y demas, tenes que pensar en esto:

Si la pagina va a estar protegida, ya tenes una parte hecha, sino espera el segundo paso.

Si la pagina esta protegida:

Basta con que armes el diseño de como se van a mostrar los datos, y despues en el panel de vinculaciones (bindings) en DW, buscas el juego de registros que armas, lo desplegas y vas a ver que estan todas las filas de la tabla que elegiste con el recordset. Simplemente arrastras y soltas la fila que quieras mostrar como dato dentro de la linea de codigo donde queres que se muestre, y listo.

Ahora, si la pagina no esta protegida, vas a tener que hacer lo siguiente:

En la linea 1 de la pagina que vas a mostrar, agrega esto:

Código PHP:
Ver original
  1. if (!isset($_SESSION)) {
  2. }

Despues, armas todo tal y cual el paso anterior, pero lo envolves en estes codigo:

Código PHP:
Ver original
  1. <?php if ($_SESSION['MM_Username`]) { ?>
  2. <aca va tu codigo>
  3. <?php } ?>

Esto hace que si el usuario NO esta logueado, esa seccion simplemente no se muestre

Espero hayas entendido, y contame tus resultados

Última edición por bambuweb; 26/10/2010 a las 10:14
  #7 (permalink)  
Antiguo 26/10/2010, 10:53
Avatar de ernest_mataro  
Fecha de Ingreso: octubre-2010
Ubicación: Mataró(Barcelona)
Mensajes: 26
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Mostrar datos de usuario

Perdona pero es que me estoy liando jejeje. A ver te explico en esta pagina tengo un login con dos campos correo electronico y contraseña:
Código PHP:
<?php require_once('Connections/conexion.php'); ?><?php

// *** Validate request to login to this site.
if (!isset($_SESSION)) {
  
session_start();
}

$loginFormAction $_SERVER['PHP_SELF'];
if (isset(
$_GET['accesscheck'])) {
  
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}

if (isset(
$_POST['correoelectronico'])) {
  
$loginUsername=$_POST['correoelectronico'];
  
$password=$_POST['contrasena'];
  
$MM_fldUserAuthorization "";
  
$MM_redirectLoginSuccess "1.php";
  
$MM_redirectLoginFailed "fallo_login.html";
  
$MM_redirecttoReferrer false;
  
mysql_select_db($database_conexion$conexion);
  
  
$LoginRS__query=sprintf("SELECT correoelectronico, contrasena FROM usuario WHERE correoelectronico='%s' AND contrasena='%s'",
    
get_magic_quotes_gpc() ? $loginUsername addslashes($loginUsername), get_magic_quotes_gpc() ? $password addslashes($password)); 
   
  
$LoginRS mysql_query($LoginRS__query$conexion) or die(mysql_error());
  
$loginFoundUser mysql_num_rows($LoginRS);
  if (
$loginFoundUser) {
     
$loginStrGroup "";
    
    
//declare two session variables and assign them
    
$_SESSION['MM_Username'] = $loginUsername;
    
$_SESSION['MM_UserGroup'] = $loginStrGroup;          

    if (isset(
$_SESSION['PrevUrl']) && false) {
      
$MM_redirectLoginSuccess $_SESSION['PrevUrl'];    
    }
    
header("Location: " $MM_redirectLoginSuccess );
  }
  else {
    
header("Location: "$MM_redirectLoginFailed );
  }
}
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>login</title>
<style type="text/css">
<!--
.Estilo10 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-weight: bold;
}
body {
    background-color: #FFFFFF;
}
.Estilo11 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 14px;
    font-weight: bold;
}
.Estilo33 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; font-weight: bold; color: #FFFFFF; }
-->
</style>
<script type="text/JavaScript">
<!--


function validar(formulario) {
    if ((formulario.correoelectronico.value.indexOf ('@',0) == -1)||(formulario.correoelectronico.value.indexOf ('.',0) == -1)||(formulario.correoelectronico.value.length < 5)) {
    alert("Escriba una dirección de correo válida en el campo \"Dirección de correo\".");
    return (false);
    }    
   if (formulario.contrasena.value.length < 6) {
    alert("Escriba por lo menos 6 caracteres en el campo \"Contraseña\".");
    formulario.contrasena.focus();
    return (false);
  }
 return(true);
 }

//-->
</script>
</head>

<body>

<form ACTION="<?php echo $loginFormAction?>" method="POST" name="form1" id="form1" onSubmit = "return validar(this)">
  <table width="391" height="109" border="0" align="right">


    <tr>
      <td width="135" height="38" bgcolor="#00FF00"><span class="Estilo33">Correo electr&oacute;nico: </span></td>
      <td width="182"><input name="correoelectronico" type="text" id="correoelectronico" size="30" maxlength="30" /></td>
      <td width="60" rowspan="2"><div align="center"><input name="" type="image" title="Enviar" src="Imagenes/boton_enviar.jpg" alt="Enviar formulario" width="58" height="64" /> 
      </div></td>
    </tr>
    <tr>
      <td height="36" bgcolor="#00FF00"><span class="Estilo33">Contrase&ntilde;a:</span></td>
      <td><input name="contrasena" type="password" id="contrasena" size="30" maxlength="16" /></td>
    </tr>
    <tr>
      <td height="27" colspan="3"><div align="right"><a href="pagina_registro.php" class="Estilo11">&iexcl;Reg&iacute;strate!</a></div></td>
    </tr>
  </table>
  
  
  <p align="right" class="Estilo10">&nbsp;</p>
  <p align="right" class="Estilo10">&nbsp;</p>
  <p align="right" class="Estilo10"></p>
  <blockquote>
    <p align="right" class="Estilo10"><a href="pagina_registro.php"></a> </p>
  </blockquote>
</form>
</body>
</html>
y en esta otra tengo el juego de registro con un filtro "correoelectronico", donde se mostrará los datos.
Código PHP:
<?php require_once('Connections/conexion.php'); ?>
<?php
$colname_Recordset1 
"-1";
if (isset(
$_SESSION['correoelectronico'])) {
  
$colname_Recordset1 = (get_magic_quotes_gpc()) ? $_SESSION['correoelectronico'] : addslashes($_SESSION['correoelectronico']);
}
mysql_select_db($database_conexion$conexion);
$query_Recordset1 sprintf("SELECT nombre, apellidos, correoelectronico, pais, provincia, poblacion, sexo, dianacimiento, mesnacimiento, anonacimiento FROM usuario WHERE correoelectronico = '%s'"$colname_Recordset1);
$Recordset1 mysql_query($query_Recordset1$conexion) or die(mysql_error());
$row_Recordset1 mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 mysql_num_rows($Recordset1);
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<table border="1">
  <tr>
    <td>nombre</td>
    <td>apellidos</td>
    <td>correoelectronico</td>
    <td>pais</td>
    <td>provincia</td>
    <td>poblacion</td>
    <td>sexo</td>
    <td>dianacimiento</td>
    <td>mesnacimiento</td>
    <td>anonacimiento</td>
  </tr>
  <?php do { ?>
    <tr>
      <td><?php echo $row_Recordset1['nombre']; ?></td>
      <td><?php echo $row_Recordset1['apellidos']; ?></td>
      <td><?php echo $row_Recordset1['correoelectronico']; ?></td>
      <td><?php echo $row_Recordset1['pais']; ?></td>
      <td><?php echo $row_Recordset1['provincia']; ?></td>
      <td><?php echo $row_Recordset1['poblacion']; ?></td>
      <td><?php echo $row_Recordset1['sexo']; ?></td>
      <td><?php echo $row_Recordset1['dianacimiento']; ?></td>
      <td><?php echo $row_Recordset1['mesnacimiento']; ?></td>
      <td><?php echo $row_Recordset1['anonacimiento']; ?></td>
    </tr>
    <?php } while ($row_Recordset1 mysql_fetch_assoc($Recordset1)); ?>
</table>
</body>
</html>
<?php
mysql_free_result
($Recordset1);
?>
lo que me gustaria es que la introducir los datos de registro en la pagina login, es decir el correo electronico y la contraseña, al enviarlo me haga el filtro y solo se vean los datos del usuario registrado.
Perdona, no se si me he explicado, MErci por la paciencia.
  #8 (permalink)  
Antiguo 26/10/2010, 11:33
 
Fecha de Ingreso: junio-2009
Mensajes: 85
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Mostrar datos de usuario

Ok, vamos entendiendo. Para hacer eso, en principio esta pagina esta bien.

Ahora, supongamos que despues de presionar "ingresar" en login.php (esta pagina que mostras) vamos a index.php.

En index.php tenes que crear otro juego de registros, que utilice la tabla donde estan los datos de los usuarios. A este juego de registros tenes que filtrarlo por algun parametro (variable de sesion, o cookie) para que solo traiga los datos del usuario en cuestion, y no otros.

Una vez hecho este recordset, vas al panel de vinculaciones (bindings) y simplemente arrastras y soltas los diferentes datos que queres mostrar.

De todas maneras, te recomiendo que para recibir mejor ayuda, podes usar los foros de adobe. Estan en ingles, pero si entendes un poquito, te pueden ayudar mucho

http://forums.adobe.com/

Saludos!
  #9 (permalink)  
Antiguo 26/10/2010, 13:26
Avatar de ernest_mataro  
Fecha de Ingreso: octubre-2010
Ubicación: Mataró(Barcelona)
Mensajes: 26
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Mostrar datos de usuario

¡¡¡¡ok muchas gracias!!!

Etiquetas: usuarios
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 22:54.