Foros del Web » Programando para Internet » PHP »

Duda con sistema de mensajes privados

Estas en el tema de Duda con sistema de mensajes privados en el foro de PHP en Foros del Web. Hola, estoy creando un sistema de mensajes privados en mi web, tengo un campo donde se ponen los destinatarios (máximo 3, separados con ;), entonces ...
  #1 (permalink)  
Antiguo 02/08/2008, 15:54
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Pregunta Duda con sistema de mensajes privados

Hola, estoy creando un sistema de mensajes privados en mi web, tengo un campo donde se ponen los destinatarios (máximo 3, separados con ;), entonces para contar cuantos destinatarios hay, cuando voy a enviar el mensaje hago:

$total = count(explode(";", $_POST['destinatarios']));

if($total <= 3){

// Envio mensaje...


El problema es que si pongo usuario1;usuario2;usuario3; me lo toma como si fueran 4 destinatarios, entonces cómo puedo hacer para que lo acepte como valido??

Gracias
__________________
Spread Firefox | Download Day 2008
¡Únete en nuestra misión para alcanzar el Record Guinness al software más descargado en 24 horas! http://www.spreadfirefox.com/es-ES/worldrecord/
  #2 (permalink)  
Antiguo 02/08/2008, 16:04
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Duda con sistema de mensajes privados

Cita:
Iniciado por hgp147 Ver Mensaje
Hola, estoy creando un sistema de mensajes privados en mi web, tengo un campo donde se ponen los destinatarios (máximo 3, separados con ;), entonces para contar cuantos destinatarios hay, cuando voy a enviar el mensaje hago:

$total = count(explode(";", $_POST['destinatarios']));

if($total <= 3){

// Envio mensaje...


El problema es que si pongo usuario1;usuario2;usuario3; me lo toma como si fueran 4 destinatarios, entonces cómo puedo hacer para que lo acepte como valido??

Gracias


Código PHP:

$dest 
= (substr($_POST['destinatarios'], -1) == ';') ? substr($_POST['destinatarios'], 0strlen($_POST['destinatarios']-1)) : $_POST['destinatarios'];

$total count(explode(";"$dest));

if(
$total <= 3){

// Envio mensaje... 

prueba eso a ver que tal
  #3 (permalink)  
Antiguo 02/08/2008, 16:12
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Respuesta: Duda con sistema de mensajes privados

Gracias DooBie, probe tu código pero tiene un problema, al poner usuario1;usuario2;usuario3; el contador me da 1 (siempre cuando termina en ; pone 1)
__________________
Spread Firefox | Download Day 2008
¡Únete en nuestra misión para alcanzar el Record Guinness al software más descargado en 24 horas! http://www.spreadfirefox.com/es-ES/worldrecord/
  #4 (permalink)  
Antiguo 02/08/2008, 16:16
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Duda con sistema de mensajes privados

he escrito el codigo de memoria :p
antes de hacer el explode, haz un hecho de $dest a ver para compararlo con $_POST['destinatario'] y comprobar que realmente quita el ultimo ;
  #5 (permalink)  
Antiguo 02/08/2008, 16:20
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Respuesta: Duda con sistema de mensajes privados

Mirá DooBie:

Si pongo: usuario1;usuario2;usuario3 (es decir sin ; al final) al imprimir la variable $dest muestra: usuario1;usuario2;usuario3

Si pongo usuario1;usuario2;usuario3; (es decir con ; al final) al imprimir muestra:

usuario1


Gracias
__________________
Spread Firefox | Download Day 2008
¡Únete en nuestra misión para alcanzar el Record Guinness al software más descargado en 24 horas! http://www.spreadfirefox.com/es-ES/worldrecord/
  #6 (permalink)  
Antiguo 02/08/2008, 16:23
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Respuesta: Duda con sistema de mensajes privados

Solucionado:

Código PHP:
$dest = (substr($_POST['destinatarios'], -1) == ';') ? substr($_POST['destinatarios'], 0, -1) : $_POST['destinatarios']; 
Muchas gracias por tu ayuda DooBie
__________________
Spread Firefox | Download Day 2008
¡Únete en nuestra misión para alcanzar el Record Guinness al software más descargado en 24 horas! http://www.spreadfirefox.com/es-ES/worldrecord/
  #7 (permalink)  
Antiguo 02/08/2008, 16:29
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Duda con sistema de mensajes privados

me alegro :)
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:41.