Comunidad de diseño web y desarrollo en internet online

problema al enviar a multiples usuarios

Citar            
MensajeEscrito el 05 Dic 2010 08:49 pm
Hola gente, de nuevo yo, jajajaja, ya saben puras broncas conmigo.

El asunto es este: tengo mi formulario en el cual el usuario puede enviar un mensaje a una o mas personas, y claro, estos mensajes quiero que se guarden en una base de datos.

No tengo problemas hasta ai, mi codigo recupera las variables del formulario sin problema, separa los destinatarios sin problema, PERO no guarda los destinatarios en la base de datos, solo guarda al ultimo destinatario del arreglo en la base de datos a los demas los ignora.

eh aqui mi codigo en php:

Código PHP :

mysql_select_db("usuarios_fdsr", $con);

if (strlen($_POST['Ndestinatario']) != "0")
{   
   $nombreAsunto = $_POST['Nasunto'];
   $nombreDestinatario = $_POST['Ndestinatario'];
   $correoCreador = $_POST['Ncorreo'];
   $estadoMensaje = "sin leer";
   $contenidoMensaje = $_POST['Nmensaje'];
   
   echo "Asunto: ".$nombreAsunto."<br />";
   echo "Destinatario: ".$nombreDestinatario."<br />";
   echo "Envia: ".$correoCreador."<br />";
   echo "Estado: ".$estadoMensaje."<br />";
   echo "Contenido: ".$contenidoMensaje."<br /><br />";
   
   $ArrayDestinatarios = explode(", ", $nombreDestinatario);
   $TamanoArray = count($ArrayDestinatarios);
   $bandera=false;
   
   for ($i=0; $i < $TamanoArray; $i++){
      $destinatario = $ArrayDestinatarios[$i];
      
      echo $i." Para: " .$destinatario."<br />";
      echo $i." Asunto " .$nombreAsunto."<br />";
      echo $i." De: " .$correoCreador."<br />";
      echo $i." Estado: " .$estadoMensaje."<br /><br /><br />";
      $sql = "INSERT INTO `mensajes` (`id` ,`asunto` ,`mensaje` ,`envia` ,`destinatario` ,`estado`)
      VALUES (NULL, '{$nombreAsunto}','{$contenidoMensaje}','{$correoCreador}', '{$destinatario}', '{$estadoMensaje}')"; 
   } 
   if (!mysql_query($sql,$con))  { die('Error: ' . mysql_error());  }
   #header("Location: aplicacion.php#page=page-2");
} else {
   #header("Location: aplicacion.php#page=page-2");

}

Por holler

65 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 05 Dic 2010 10:34 pm
Bueno, a lo mejor estuvo muy facil para ustedes, la respuesta es sencilla una vez que se me despejo la mente...

Tenia esto:

Código PHP :

for ($i=0; $i < $TamanoArray; $i++){ 
      $destinatario = $ArrayDestinatarios[$i]; 
       
      echo $i." Para: " .$destinatario."<br />"; 
      echo $i." Asunto " .$nombreAsunto."<br />"; 
      echo $i." De: " .$correoCreador."<br />"; 
      echo $i." Estado: " .$estadoMensaje."<br /><br /><br />"; 
      $sql = "INSERT INTO `mensajes` (`id` ,`asunto` ,`mensaje` ,`envia` ,`destinatario` ,`estado`) 
      VALUES (NULL, '{$nombreAsunto}','{$contenidoMensaje}','{$correoCreador}', '{$destinatario}', '{$estadoMensaje}')";  
   }  
   if (!mysql_query($sql,$con))  { die('Error: ' . mysql_error());  } 
   #header("Location: aplicacion.php#page=page-2"); 


Para que funcione, ahora tengo esto:

Código PHP :

for ($i=0; $i < $TamanoArray; $i++){ 
      $destinatario = $ArrayDestinatarios[$i]; 
       
      echo $i." Para: " .$destinatario."<br />"; 
      echo $i." Asunto " .$nombreAsunto."<br />"; 
      echo $i." De: " .$correoCreador."<br />"; 
      echo $i." Estado: " .$estadoMensaje."<br /><br /><br />"; 
   
      $sql = "INSERT INTO `mensajes` (`id` ,`asunto` ,`mensaje` ,`envia` ,`destinatario` ,`estado`) 
      VALUES (NULL, '{$nombreAsunto}','{$contenidoMensaje}','{$correoCreador}', '{$destinatario}', '{$estadoMensaje}')";  
      
      if (!mysql_query($sql,$con))  { die('Error: ' . mysql_error());  } 
   }  
   
   #header("Location: aplicacion.php#page=page-2"); 


Sencillo, ¿no?, solo tuve que mover el if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } dentro del for

Por holler

65 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.