Foros del Web » Programando para Internet » PHP »

identificar sexo

Estas en el tema de identificar sexo en el foro de PHP en Foros del Web. aun no termino con uno esoty con otro.... Necesito hacer que cuando ingrese un usuario me identifique si es mujer u hombre en el bienvenido ...
  #1 (permalink)  
Antiguo 05/05/2005, 11:56
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
identificar sexo

aun no termino con uno esoty con otro....

Necesito hacer que cuando ingrese un usuario me identifique si es mujer u hombre en el bienvenido (bienvenido o bienvenida)..

al momento de registrarse se le pregunta el sexo

quien me puede ayudar

salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #2 (permalink)  
Antiguo 05/05/2005, 12:12
Avatar de Gabriel0702  
Fecha de Ingreso: febrero-2005
Mensajes: 155
Antigüedad: 19 años, 1 mes
Puntos: 0
Puedes hacerlo así:

Cuando un usuario inicie sesión, que se obtenga en ese momento el sexo del usuario de la base de datos, y ahora que ya lo tienes poner algo así: (lo pongo así porque desconozco los detalles de la información de tu base de datos y tomando en cuenta que ya se realizó la consulta del sexo del usuario)
Código PHP:
$BienFinal=($sexo=='M')?'o':'a';
echo 
"Bienvenid".$BienFinal
Suponiendo que te refieres a Masculino='M' y Femenino='F' y que $sexo es lo que consultaste en la base de datos cuando el usuario inició sesión.
  #3 (permalink)  
Antiguo 05/05/2005, 12:24
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
bueno sexo es M o F, pero no he podido hacer la consulta de $sexo si me puedes ayudar te lo agradeceria muchisimo


salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #4 (permalink)  
Antiguo 05/05/2005, 12:33
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pero .. como indentificas a tu usuario en el sitio? .. donde haces tu consulta SQL para obtener los datos de ese usuario (el longin que derivará en alguna autentificación y de ahí pasará creando alguna variable de sesión/cookie o ??¡? ... a donde tenga que mostrar ese mensaje)

Aporta más datos.

Un saludo,
  #5 (permalink)  
Antiguo 05/05/2005, 12:56
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
les empizo a explicar la historia, estoy trabajando en un a página estilo rara, desde los archivos .php solo llama archivos .tpl (templates), los cuales son millones, y la verdad es mi prmera vez que me toca trabajar en paginas de este estilo y de verdad estoy muy aproblemado, he logrado hacer las modificaciones como he podido asi que disculpenme si no puedo dar toda la informacion requerida en cunato encuentre los puntos les digo
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #6 (permalink)  
Antiguo 05/05/2005, 14:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pues eso .. concreta o busca en la aplicación que estás manteniendo/modificando .. como gestiona los usuarios, busca si crea variables de sesión o cookies que puedas usar en otros scripts o donde poder hacer la consulta pertinente (archivo, BD .. etc) para obtenerlo .. por qué necesitas en función tal vez de un "id/nombre" del registro de ese usuario . .a lo mejor hacer una consulta a tu BD y obtener el "campo sexo" ..

Pero, si no vemos la estructura de datos que maneja la aplicación .. ni como trabaja ese punto es imposible darte alguna recomendación más que un simple "if()" en base a un dato que no conces actualmente tal vez como obtenerlo.

Un saludo,
  #7 (permalink)  
Antiguo 05/05/2005, 14:56
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
Código PHP:
function getUser()
    {
    global 
$idAuth;
    
$db = New DB_SQL;
     
$sql "SELECT userName FROM usuario WHERE idUsuario = $idAuth";
    
$db->query($sql);
    if (
$db->next_record())
        {
        return 
$db->f('userName');
        }
    } 
este el sistema de logeo

por favor ayudenme
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #8 (permalink)  
Antiguo 05/05/2005, 15:39
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
Logre que funcionara pero el script que me dio Gabriel0702 no me funciono ya que siempre dice bienvenidA

salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #9 (permalink)  
Antiguo 05/05/2005, 15:48
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Y que es lo que hicistes para obtener el "sexo" de ese usuario? .. Supongo que creastes una función similar a esa "getUser()" o la modificastes para que te entregue esos datos? ...

Pon el código que usas ahora o el que probastes -completo-. Sobre todo donde muestras ese "Bienvenid...."

Un saludo,
  #10 (permalink)  
Antiguo 05/05/2005, 16:53
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
Este es el codigo solo lo modifique


Código PHP:
function BIEVENIDA()
    {
    global 
$idAuth;
    
$db = New DB_SQL;
     
$sql2 "SELECT sexo FROM usuario Where idUsuario = $idAuth";
    
$db->query($sql2);
    if (
$db->next_record())
        {
        return 
$db->f('sexo');
        } 
Luego en el index.php

puse esto

Código PHP:
if (isset($idAuth))
    {
    
$t->set_var(array(
        
'BIEN' => BIEVENIDA(),
        ));
    
$t->parse("CS""CIERRA_SESION");
    } 
y obviamente solo me arroja una letra M o F, lo que hice fue colocar el codigo aqui

Código PHP:
function BIEVENIDA()
    {
    global 
$idAuth;
    
$db = New DB_SQL;
     
$sql2 "SELECT sexo FROM usuario Where idUsuario = $idAuth";
    
$db->query($sql2);
    if (
$db->next_record())
         
$BienFinal=($sexo=='M')?'o':'a';
echo 
"Bienvenid".$BienFinal; {
        return 
$db->f('sexo');
        }
    } 
me lo arroja el mensaje en la parte superior izq. y siempre dice Bienvanida

salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #11 (permalink)  
Antiguo 05/05/2005, 21:36
 
Fecha de Ingreso: agosto-2004
Mensajes: 95
Antigüedad: 19 años, 7 meses
Puntos: 2
Código PHP:
function BIEVENIDA() 

    global 
$idAuth
    
$db = New DB_SQL
    
$bien['M']="Bienvenido";
    
$bien['F']="Bienvenida";
    
    
$sql "SELECT sexo FROM usuario Where idUsuario = $idAuth"
    
$db->query($sql); 

    if (
$db->next_record()){ 
      return 
$bien[$db->f('sexo')];
    } 

Te recomiendo que el recorrido de los campos los hagas por fuera de las funciones ....ya que estas haciendo conexiones que no son necesarias..

una para saber el sexo y la otra el nombre ... puedes obtener los dos con solo una consulta...


Alternativa

Código PHP:
//nombrar db.inc.php;

<?
class DB_mysql {

var 
$BaseDatos="BD";
var 
$Servidor="localhost";
var 
$Usuario="usuario";
var 
$Clave="pass";
var 
$Conexion_ID 0;
var 
$Consulta_ID 0;

function 
conectar(){
$this->Conexion_ID mysql_connect($this->Servidor$this->Usuario$this->Clave);
if (!
$this->Conexion_ID) {
return 
0;
}
if (!@
mysql_select_db($this->BaseDatos$this->Conexion_ID)) {
return 
0;
}
return 
$this->Conexion_ID;
}

 
function 
consulta($sql ""){
if (
$sql == "") {return 0;}
$this->Consulta_ID = @mysql_query($sql$this->Conexion_ID);
return 
$this->Consulta_ID;
}

 
}
?>
Consulta

Código PHP:
require('db.inc.php');

$mensaje['F']='Bienvenida';
$mensaje['M']='Bienvenido';

$db = new DB_mysql();
$db->conectar();
$sql "SELECT userName,sexo FROM usuario WHERE idUsuario = $idAuth"
$db->consulta($sql);

$resultado = @mysql_fetch_array($db->Consulta_ID))
echo 
$mensaje[$resultado['sexo']].' '.$resultado['userName'];
?> 
__________________
Marco de Arica (Chile)

Última edición por marcomartinez; 05/05/2005 a las 22:08
  #12 (permalink)  
Antiguo 06/05/2005, 08:51
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
GRAAAAAAAAAAAAAAAANDE MASTE ! ! ! ! ! !

te pasaste, aunque no te hice caso me funciono se pasaron y gracias por su paciencia

salu2
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #13 (permalink)  
Antiguo 06/05/2005, 08:52
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
GRAAAAAAAAAAAAAAAANDE MASTER ! ! ! ! ! !

te pasaste marcomartinez, aunque no te hice caso me funciono se pasaron y gracias por su paciencia

salu2 desde SANTIAGO CHILE
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
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:04.