Foros del Web » Programando para Internet » PHP »

elseif dentro de un echo :(

Estas en el tema de elseif dentro de un echo :( en el foro de PHP en Foros del Web. hola mirad mi problema es que estoy haciendo un foro y en caso que el usuario no ponga un avatar o el visitante no quiera ...
  #1 (permalink)  
Antiguo 11/07/2004, 05:49
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 13 años, 6 meses
Puntos: 0
elseif dentro de un echo :(

hola mirad mi problema es que estoy haciendo un foro y en caso que el usuario no ponga un avatar o el visitante no quiera ver los avatares este no puede aparecer,si lo hago con un elseif me aparece como texto ya que lo hago dentro de una consulta a la BD(la consulta pide toda la info del tema tratado)como lo podria solucionar?gracias :D
  #2 (permalink)  
Antiguo 11/07/2004, 19:59
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Pues newphp

Sabes que ando en las mismas Newphp la cosa es que yo lo he solucionado de otra manera. He puesto una imagen por defecto para todas las personas que se registran en el Foro. Te dejo el código para que veas mas o menos:
Código PHP:
session_start();
  
$link "fddsid=".session_id();
  
$name $_FILES['avatar']['name']; $size $_FILES['avatar']['size'];
  
$type $_FILES['avatar']['type']; $imagen $_FILES['avatar']['tmp_name'];
  list(
$width,$height,$tipo,$atributes) = getimagesize($imagen);
  
$directorio "images/avatar/";
  
$mimeallowed = array("image/gif","image/x-png","image/jpeg","image/png","image/pjpeg","");
  if(
$_FILES['avatar']['name']!=""){
   if(
in_array($type,$mimeallowed)){
    if(
$height<=65 || $width<=65){
     if(
$size 262144){
      
header("Location: register.php?accept=true&msg=1&".$link."");
     }elseif(!
file_exists($name)){
       
$avataruploaded $_POST['login']."_".$name;
       
$uploaded move_uploaded_file($_FILES['avatar']['tmp_name'], $directorio.$avataruploaded);
     }else{
      
$avataruploaded "default.gif";
     }
    }else{
     
header("Location: register.php?accept=true&msg=2&".$link."");
    }
   }else{
    
header("Location: register.php?accept=true&msg=3&".$link."");
   }
  }

  
$fechanac $_POST['ano']."-".$_POST['mes']."-".$_POST['dia'];
  
$ipuser GetUserIP();
  if(
$_POST['pass1']=="" || $_POST['pass2']==""){
   
$passenc CreateKey(16);
   
$passinmail $passenc;
  }else{
   
$passenc md5($_POST['pass1']);
   
$passinmail $_POST['pass1'];
  }

  if(!empty(
$_POST['possiblelogin'])){
   
$login $_POST['possiblelogin'];
  }else{
   
$login $_POST['login'];
  }

  if(
$uploaded){
   
$avatar $avataruploaded;
  }else{
   
$avatar "default.gif"; }
   
$key KeyCreate(16);
   
$query1 "select * from users where login='".$login."'";
   
$result1 mysql_query($query1) or die("No se ha podido ejecutar la consulta ".$query1.". MySQL ha dicho: ".mysql_error());
   if(
mysql_num_rows($result1)!=0){
    
$dividido explode(" ",$_POST['namelastname']);
    list(
$nombre,$primerapellido,$segundoapellido) = $dividido;
    
$newlogin GeneraName($_POST['login'],$nombre,$primerapellido);
    
$cant count($newlogin);
    
$loginnew = array();
    for(
$i=0;$i<$cant;$i++){
     
$query2 "select * from users where login='".$newlogin[$i]."'";
     
$result2 mysql_query($query2) or die("No se ha podido ejecutar la consulta ".$query2.". MySQL ha dicho: ".mysql_error());
     if(
mysql_num_rows($result2)==0){
      
array_push($loginnew,$newlogin[$i]); }
     }
     
$cantnew count($loginnew);
     
$url="Location: register.php?accept=true&cant=".$cantnew;
     for(
$i=0;$i<$cant;$i++){
       
$url $url."&login".$i."=".$loginnew[$i];
     }
       
header($url);
     }else{
       
$query "insert into users(active,datapublic,lastvisit,registerdate,level,rank,avatar,name,mail,country,birthday,login,password,icq,aim,yim,msn,website,ocupation,interests,activation_key,signature,ipuser) values(0,'".$_POST['datapublic']."',now(),now(),0,0,'".$avatar."','".$_POST['namelastname']."','".$_POST['mail']."','".$_POST['country']."','".$fechanac."','".$login."','".$passenc."','".$_POST['icq']."','".$_POST['aim']."','".$_POST['yim']."','".$_POST['msn']."','".$_POST['website']."','".$_POST['ocupation']."','".$_POST['interest']."','".$key."','".$_POST['signature']."','".$ipuser."')";
       
$result mysql_query($query) or die("No se ha podido ejecutar la consulta ".$query.". MySQL ha dicho: ".mysql_error());
       
CreateLogs("log","a",$query);
     } 
¿a proposito donde puedo ver algo del Foro que estas creando?
Salu2
__________________
Ing. Reynier Pérez Mira
  #3 (permalink)  
Antiguo 11/07/2004, 20:41
 
Fecha de Ingreso: octubre-2003
Mensajes: 152
Antigüedad: 14 años, 1 mes
Puntos: 2
No se si entendi tu preguta.
No soy expero, pero porque no pruevas con el ereg_replace, donde puedes replazar todos tus avatars con un espacio.
  #4 (permalink)  
Antiguo 12/07/2004, 01:39
Avatar de Game[DxS]  
Fecha de Ingreso: noviembre-2003
Ubicación: Concepción Chile
Mensajes: 100
Antigüedad: 14 años
Puntos: 0
supongo ke lo mas facil seria traer el dato de la bd, suponiendo ke se llame avatar pregunto si el dato tiene algo o no, si tiene algo pnes el codigo de la imagen y si no pues no pones nada ...

Código PHP:
<?
$sql 
"select avatar from usuario";
$resultado=mysql_db_query("BD",$sql);
$array[email protected]mysql_fetch_array($resultado);

if (array[
avatar])
{
echo 
"<scr img=."$array[avatar]".>";
 
}
?>
algo asi?, (no recuerdo el codigo html para insertar imagenes, en fin )
ojala te sirva de algo bye
  #5 (permalink)  
Antiguo 12/07/2004, 03:17
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 13 años, 6 meses
Puntos: 0
haber voy a responder a todos :D

Reynier es una buena idea pero l malo es que por ejemplo si un usuario tiene en sus opciones la de no mostrar avatares,como lo hago?con el else podria mirar las opciones del usuario y mostrar el foro segun sus preferencias :D

tengo el foro en mi PC ^^u hasta aquí a un par de semanas o tres no lo subire a un servidor publico :D

edwinmc mmmm ahora probare lo que comentas haber que tal ;)

Game[DxS] lo malo es como hago esa consulta dentro de un echo? ya que la tabla que muestra el mensaje,el avatar etc.....se muestra con un echo


P.D: Si no contesto en unos dias es culpa del PC lo tengo en las ultimas pero no lo se si no podre pasar :D ojala no le pase na al PC

gracias x responder ;)
  #6 (permalink)  
Antiguo 12/07/2004, 11:54
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Explicate un poco mejor
Cita:
por ejemplo si un usuario tiene en sus opciones la de no mostrar avatares,como lo hago?con el else podria mirar las opciones del usuario y mostrar el foro segun sus preferencias :D
__________________
Ing. Reynier Pérez Mira
  #7 (permalink)  
Antiguo 12/07/2004, 16:34
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 13 años, 6 meses
Puntos: 0
pos mira reynier,el usuario tiene la posivlidad de no ver los avatares de los usuarios :D pues en caso de no querer se carga una sesion con el valor "avatares_no" en el if pongo que si encuentra avatares_no no se vean y si tiene vatares_si pues se muestran no se si me explique :D
muchas gracias

de momento el PC me va :D
  #8 (permalink)  
Antiguo 12/07/2004, 17:59
Avatar de sir_notos  
Fecha de Ingreso: noviembre-2001
Ubicación: Mexicali
Mensajes: 709
Antigüedad: 16 años
Puntos: 1
Te voy a pasar la logica :p


Código PHP:
// se obtienen los datos del usuario registrado
// suponiendo que $avatrSet = si/no // si el usuario tiene activados los avatares


if ($avatarSet == si)
{
 if (
$row['avatar'] != null)
 {
 
$avatarSrt '<img src="'.$row['avatar'].'">';
 }
 else
 {
 
$avatarStr '[No Avatar]'
 }

}
else
{
 
$avatarStr '&nbsp;'

eso es lo que quieres no?
__________________
Usuario Registrado de linux #374849
  #9 (permalink)  
Antiguo 12/07/2004, 18:03
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 13 años, 6 meses
Puntos: 0
si,gracias :D se hacerlo pero mi problema es como hago eso dentro de un "echo"?ya que la tabla que contiene el mensaje se crea en un echo :( y si pongo este codigo me sale como texto,poria hacerlo de alguan otra forma?o poner el if dentro de un echo de manera que me lo reconozca?gracias x todo ;) :D
  #10 (permalink)  
Antiguo 12/07/2004, 21:08
Avatar de Game[DxS]  
Fecha de Ingreso: noviembre-2003
Ubicación: Concepción Chile
Mensajes: 100
Antigüedad: 14 años
Puntos: 0
creo ke un else no se puede poner dentro de un echo,

supongo ke lo ke kieres es algo asi

Código PHP:
echo "<table>";
    echo 
"<tr>";
      echo 
"<td>";
     if (
$avatar)
{
      echo 
$avatar;
}     
 echo <
"/td>";
    echo 
"</tr>";
echo 
"</table>"
creo ke resumiendo es algo asi o no? yo por lo ke entendi de tu problema tenias un if asi echo "if(algo)";

da lo mismo que la tabla donde se muestren las consultas esten dentro de un echo, el if o el else if no tiene pq ir dentro de un echo tb ...

  #11 (permalink)  
Antiguo 13/07/2004, 03:15
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 13 años, 6 meses
Puntos: 0
exacto gracias :D no sabia como podia hacerlo para intercalar el echo y el if :D gracias ;) es que para explicarme soy unico ^^u
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 01:47.