Foros del Web » Programando para Internet » PHP »

Imagen por defecto??

Estas en el tema de Imagen por defecto?? en el foro de PHP en Foros del Web. Hola! Tengo una duda haber si pudiesen echarme una mano. Tengo un registro de usuarios y tengo una opcion de que cada usuario al registrarse ...
  #1 (permalink)  
Antiguo 07/05/2008, 13:14
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 7
Antigüedad: 16 años
Puntos: 0
Imagen por defecto??

Hola!
Tengo una duda haber si pudiesen echarme una mano.
Tengo un registro de usuarios y tengo una opcion de que cada usuario al registrarse ponga la direccion url de una imagen que se vera como avatar al iniciar sesion, lo que me preguntaba es si la gente que no ponga al registrarse la direccion podria asignarles, si el campo imagen del formulario esta vacio, una imagen por defecto.

Gracias de ante mano!!
Salu2!
  #2 (permalink)  
Antiguo 07/05/2008, 14:13
 
Fecha de Ingreso: noviembre-2007
Ubicación: Córdoba
Mensajes: 70
Antigüedad: 16 años, 5 meses
Puntos: 1
Re: Imagen por defecto??

Hola.

Eso que comentas es muy fácil. Suponemos que sabes realizar consultas a la base de datos y en la variable $user_image obtienes el valor del campo de la BBDD donde se guarda el nombre de la imagen del usuario SI este ha subido alguna. Si no la ha subido, ese campo contendrá en valor NULL.

Dicho esto, sólo te queda hacer un
Código PHP:
$image = (empty($user_image)) ? 'http://misitio.com/default.png' $user_image
Eso es un operador ternario. Evalúa lo que hay a la izquierda del ? y si es verdadero asigna a la variable image la evaluación de lo que existe a la derecha de ?. Si es falso, asigna a image la evaluación de lo que hay a la derecha de :.

Ya luego puedes imprimirla con algo así:
Código PHP:
echo "<img src=\"$image\" />"
Saludos.
  #3 (permalink)  
Antiguo 07/05/2008, 14:15
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 17 años, 11 meses
Puntos: 50
Re: Imagen por defecto??

Supongo que usted lo que hace es algo asi:
  • Select de la url de la imagen del usuario
  • Ahora verifique si el campo que llego de la consulta esta vacio haga esto o sino muestre la del usuario.
    if ($CapLlego == "")
    echo "<src img=Rutapordefecto>";
    else
    echo "<src img=".$CapLlego.">";


Suerte
  #4 (permalink)  
Antiguo 07/05/2008, 16:40
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Imagen por defecto??

BUHE!!!.. hazlo directamente en la tabla de esa db.. ejemplo
Código PHP:

    CREATE  TABLE  
`usuario`.`usuarios` ( `idINT11  )  NOT  NULL  AUTO_INCREMENT ,
 `
nombreCHAR15  )  NOT  NULL ,
 `
usuarioCHAR15  )  NOT  NULL ,
 `
claveCHAR32  )  NOT  NULL ,
 `
imagenVARCHAR255  )  NOT  NULL DEFAULT  'imagen_defecto.jpg',
 
PRIMARY  KEY (  `id`  ) 
ENGINE  =  MYISAM 
como veras imagen tiene 255 caracteres y no puede ser nulo asi que entonces por defecto si este no se llena insertara automáticamente imagen_defecto.jpg obviamente imagen_defecto.jpg es solo un nombre tu deberas especificarle la ruta a dicha imagen..
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #5 (permalink)  
Antiguo 07/05/2008, 18:43
Avatar de farra  
Fecha de Ingreso: marzo-2008
Ubicación: Aqui estoy
Mensajes: 574
Antigüedad: 16 años, 1 mes
Puntos: 20
De acuerdo Re: Imagen por defecto??

Cita:
Iniciado por eddwinpaz Ver Mensaje
BUHE!!!.. hazlo directamente en la tabla de esa db.. ejemplo
Código PHP:

    CREATE  TABLE  
`usuario`.`usuarios` ( `idINT11  )  NOT  NULL  AUTO_INCREMENT ,
 `
nombreCHAR15  )  NOT  NULL ,
 `
usuarioCHAR15  )  NOT  NULL ,
 `
claveCHAR32  )  NOT  NULL ,
 `
imagenVARCHAR255  )  NOT  NULL DEFAULT  'imagen_defecto.jpg',
 
PRIMARY  KEY (  `id`  ) 
ENGINE  =  MYISAM 
como veras imagen tiene 255 caracteres y no puede ser nulo asi que entonces por defecto si este no se llena insertara automáticamente imagen_defecto.jpg obviamente imagen_defecto.jpg es solo un nombre tu deberas especificarle la ruta a dicha imagen..

esa seria una solucion facil, solo que vas a llenar tu base de datos con datos repetidos...

yo lo haria de la siguiente manera:
Código PHP:

<?php if (file_exists("avatar/avatar_".$idimagen.".jpg")) { // si existe esta foto mostrar ?>
<img src="Avatar/avatar_<?php echo $idimagen?>.jpg" />
<?php } else { // si no existe, mostrar esta otra ?>
<img src="perfil/default.jpg" />
<?php // fin de mostrar foto ?>
  #6 (permalink)  
Antiguo 07/05/2008, 18:49
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Imagen por defecto??

MySQL toma el default 1 sola vez... no lo multiplica.. toma http://dev.mysql.com/doc/refman/5.0/...-defaults.html Documentate.
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #7 (permalink)  
Antiguo 07/05/2008, 19:32
Avatar de farra  
Fecha de Ingreso: marzo-2008
Ubicación: Aqui estoy
Mensajes: 574
Antigüedad: 16 años, 1 mes
Puntos: 20
Re: Imagen por defecto??

ups! no sabia eso...
jeje bue... todos los dias se aprende algo nuevo... y hay que leer las documentaciones por mas que sea aburrido hacerlo...

Gracias eddwinpaz...!
  #8 (permalink)  
Antiguo 10/05/2008, 08:54
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 7
Antigüedad: 16 años
Puntos: 0
Re: Imagen por defecto??

Gracias a todos por responder mi duda, al final he escogido la opcion de editar la base de datos añadiendo la prodiedad default: "image...jpg" en la tabla de usuarios al campo imagen. Las demas soluciones son tambien interesantes pero prefiero editar la tabla antes que el codigo.
Gracias de Nuevo a Todos!!

Salu2!
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 07:27.