Foros del Web » Programando para Internet » PHP »

casi funcionando, una ayudita por favor

Estas en el tema de casi funcionando, una ayudita por favor en el foro de PHP en Foros del Web. Hola gente, Explico: tengo un listado de email en un BD, necesito enviarles un email a ese listado, para eso compongo un email y con ...
  #1 (permalink)  
Antiguo 29/10/2012, 10:08
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Pregunta casi funcionando, una ayudita por favor

Hola gente,

Explico: tengo un listado de email en un BD, necesito enviarles un email a ese listado, para eso compongo un email y con foreach selecciono los email de la lista, el problema es que no los puedo listar dentro del formulario para enviar el email.
El codigo es este:

Código PHP:
Ver original
  1. ...........
  2.  
  3. if(isset($_POST['select']))
  4.     {
  5.       $seleccion=$_POST['select'];
  6.       foreach($seleccion as $indice => $valor)
  7.       {
  8.       print $valor (aqui me muestra la lista de email que he seleccionado pero yo lo necesito en la linea 65)
  9.       }
  10.      
  11. echo "
  12. <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
  13. <html xmlns='http://www.w3.org/1999/xhtml'>
  14.     <head>
  15.         <title>Send Email</title>
  16.         <link  rel='stylesheet' type='text/css' href='css/estilo.css' />
  17.         <meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
  18.         <script language='javascript' type='text/javascript'  src='scripts/tiny_mce.js'></script>
  19.         <script language='javascript' type='text/javascript'>
  20.        tinyMCE.init({
  21.             mode : 'textareas',
  22.             theme : 'advanced',
  23.             theme_advanced_buttons1 : 'bold,italic,underline,separator,strikethrough,justifyleft,justifycenter,justifyright, justifyfull,bullist,numlist,undo,redo,link,unlink',
  24.             theme_advanced_buttons2 : '',
  25.             theme_advanced_buttons3 : '',
  26.             theme_advanced_toolbar_location : 'top',
  27.             theme_advanced_toolbar_align : 'left',
  28.             theme_advanced_path_location : 'bottom',
  29.             extended_valid_elements : 'a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]'
  30.        });
  31.    </script>
  32.    <script>
  33.    function irA(url){
  34.    location.href = url;
  35.    }
  36.    </script>
  37.         <script type=\"text/javascript\">
  38.       function posicion(){
  39.         moveTo(0,0);
  40.         ancho_popup=870;
  41.         alto_popup=730;
  42.         x=(screen.width-ancho_popup)/2;
  43.         moveTo(x,0);
  44.         y=(screen.height-alto_popup)/2;
  45.         moveTo(x,y);
  46.       }
  47.     </script>
  48.     </head>
  49.  
  50.     <body onload=\"posicion();\">
  51.     <form action='enviaremail.php' enctype='multipart/form-data' method='post' name='form1'>
  52.           <div id='menu_mail'>
  53.             <div id='send'>
  54.               <input name='submit' type='image' id='boton' src='images/sendmail.png' alt='send mail' />
  55.             </div>  
  56.             <div id='imgattch'>
  57.               <input name='archivo' type='file' id='archivo' alt='Attach file'/>
  58.             </div>     
  59.           </div>   
  60.     <table id='correo' border=0>
  61.         <tr>
  62.           <td><label>Sender:<td> Carfreight INC.</td></label><br /></td>
  63.         </tr>
  64.    <tr>
  65.      <td><label>E-mail List:</label></td><td><input name='email' id='email' type='text' value='".$valor."' size='80px'></td> (aqui necesito que me aparezcan todos los email que he seleccionado, pero solo me muestra el último de la lista)
  66.    </tr>
  67.    <tr>
  68.      <td><label>Subjet:</label></td><td><input type='text' name='asunto' size='80px' value='Cotización de Transporte'/></td><br />
  69.    </tr>
  70.  </table>
  71.  <table border=0>  
  72. .......................

Alquien me puede dar una mano por favor.
Desde ya muchas gracias por el tiempo prestado.
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..
  #2 (permalink)  
Antiguo 29/10/2012, 10:30
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: casi funcionando, una ayudita por favor

y como vas a mostrar dentro del formulario si el foreach esta cerrado antes , la llave } que cierra al foreach la cerras antes de mostrar el formulario, nunca te va a mostrar nada.
  #3 (permalink)  
Antiguo 29/10/2012, 10:40
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: casi funcionando, una ayudita por favor

Hola Rodrigo,

El problema es que si la cierro despues lo que me hace es duplicar el formulario como tantos email tenga, y duplicarme solo el campo $valor

Gracias
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..
  #4 (permalink)  
Antiguo 29/10/2012, 11:00
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: casi funcionando, una ayudita por favor

y obvio que lo va a duplicar, todo lo que tengas dentro del foreach te lo repite.
Me pregunto si es necesario mostrar tanto código html enviado desde php, hasta el doctype.
  #5 (permalink)  
Antiguo 29/10/2012, 11:06
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: casi funcionando, una ayudita por favor

Hola rodrigo,

La verdad es que estoy con este tema desde hace dos dias y ya no se lo que pongo y lo que no,
En si esto no es tan dificil pero le he metido tantas horas que ya no se por donde seguir.
Cual seria para vos, la forma mas facil de hacerlo.
Tengo un listado de email con un select, para seleccionar uno o varios, una ves que estan seleccionados con un boton los mando a este archivo donde tengo un editor de email, aqui compongo el email que quiero mandar y le doy a Send, lo unico que no puedo hacer es que me envie ese email a todos los que he seleccionado, no es tan dificil, pero no me sale.

Gracias por responder
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..
  #6 (permalink)  
Antiguo 29/10/2012, 11:20
Avatar de rodrigo791  
Fecha de Ingreso: noviembre-2009
Ubicación: Uruguay
Mensajes: 1.339
Antigüedad: 14 años, 4 meses
Puntos: 168
Respuesta: casi funcionando, una ayudita por favor

Código PHP:
Ver original
  1. <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
  2. <html xmlns='http://www.w3.org/1999/xhtml'>
  3.     <head>
  4.         <title>Send Email</title>
  5.         <link  rel='stylesheet' type='text/css' href='css/estilo.css' />
  6.         <meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
  7.         <script language='javascript' type='text/javascript'  src='scripts/tiny_mce.js'></script>
  8.         <script language='javascript' type='text/javascript'>
  9.         tinyMCE.init({
  10.             mode : 'textareas',
  11.             theme : 'advanced',
  12.             theme_advanced_buttons1 : 'bold,italic,underline,separator,strikethrough,justifyleft,justifycenter,justifyright, justifyfull,bullist,numlist,undo,redo,link,unlink',
  13.             theme_advanced_buttons2 : '',
  14.             theme_advanced_buttons3 : '',
  15.             theme_advanced_toolbar_location : 'top',
  16.             theme_advanced_toolbar_align : 'left',
  17.             theme_advanced_path_location : 'bottom',
  18.             extended_valid_elements : 'a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]'
  19.         });
  20.     </script>
  21.     <script>
  22.     function irA(url){
  23.     location.href = url;
  24.     }
  25.     </script>
  26.         <script type=\"text/javascript\">
  27.       function posicion(){
  28.         moveTo(0,0);
  29.         ancho_popup=870;
  30.         alto_popup=730;
  31.         x=(screen.width-ancho_popup)/2;
  32.         moveTo(x,0);
  33.         y=(screen.height-alto_popup)/2;
  34.         moveTo(x,y);
  35.       }
  36.     </script>
  37.     </head>
  38.  
  39.     <body onload=\"posicion();\">
  40.     <form action='enviaremail.php' enctype='multipart/form-data' method='post' name='form1'>
  41.           <div id='menu_mail'>
  42.             <div id='send'>
  43.               <input name='submit' type='image' id='boton' src='images/sendmail.png' alt='send mail' />
  44.             </div>  
  45.             <div id='imgattch'>
  46.               <input name='archivo' type='file' id='archivo' alt='Attach file'/>
  47.             </div>      
  48.           </div>    
  49.     <table id='correo' border=0>
  50.         <tr>
  51.           <td><label>Sender:<td> Carfreight INC.</td></label><br /></td>
  52.         </tr>
  53.     <tr>
  54. <?php
  55.  
  56. if(isset($_POST['select']))
  57.     {
  58.       $seleccion=$_POST['select'];
  59.       foreach($seleccion as $indice => $valor)
  60.       {
  61.       print $valor;
  62.      
  63. echo "<td><label>E-mail List:</label></td><td><input name='email' id='email' type='text' value='".$valor."' size='80px'></td> (aqui necesito que me aparezcan todos los email que he seleccionado, pero solo me muestra el último de la lista)";
  64.       }
  65.     }
  66.     ?>
  67. </tr>
  68. <tr>
  69. <td><label>Subjet:</label></td><td><input type='text' name='asunto' size='80px' value='Cotización de Transporte'/></td><br />
  70. </tr>
  71. </table>
  72. <table border=0>

tal vez algo así.
Acordate que no tenes que mostrar todo el html con php.
Lo hice así nomas, puede que tenga algun error.
  #7 (permalink)  
Antiguo 29/10/2012, 11:36
 
Fecha de Ingreso: agosto-2008
Ubicación: Miami, FL
Mensajes: 210
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: casi funcionando, una ayudita por favor

Hola Rodrigo,

Si, eso mismo estaba haciendo y hasta ahi todo bien.
Pero cuando le doy enviar email en el php para enviar el email recojo $valor, pero solo me envia al ultimo de los email no a todo el listado, no se si me explico.
en este php, traigo todos los email que he seleccionado con foreach, ahora todos esos email los tengo que mandar el php que me envia el email que es este:
Código PHP:
Ver original
  1. <?php
  2.  
  3. $email = $_POST['email'];
  4. $comentario = $_POST['comentario'];
  5.  
  6. $asunto ='mensaje';
  7. $cabeceras = "From: mipersona, LLC\r\nContent-type: text/html\r\n";
  8.  
  9. if(mail($email,$asunto,$comentario,$cabeceras)){
  10.   $seEnvio = true;
  11.   }else{
  12.   $seEnvio = false;
  13. }
  14. if($seEnvio == true)
  15. {
  16. header("Location: list.php");
  17. }
  18.  else {
  19.   echo "correo no enviado";
  20. }    
  21. ?>

pero solo recibo el ultimo, entonces el foreach no me sirve para nada.

Gracias
__________________
Se invierte mas dinero en cirugía de pechos y viagra que en la cura del Alzheimer. En unos años tendremos viejas con grandes tetas y viejos con erecciones pero que no recordarán para que sirven..
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 03:50.