Foros del Web » Programando para Internet » PHP »

la funcion mail () me manda 2 mails??¿ ayuda please!

Estas en el tema de la funcion mail () me manda 2 mails??¿ ayuda please! en el foro de PHP en Foros del Web. Buenas, tengo en mi sitio una pagina de confirmacion, que si se cumplen ciertas condiciones determinadas por un "if" envia un mail de confirmacion, el ...
  #1 (permalink)  
Antiguo 05/11/2008, 13:42
 
Fecha de Ingreso: septiembre-2008
Mensajes: 15
Antigüedad: 15 años, 7 meses
Puntos: 0
la funcion mail () me manda 2 mails??¿ ayuda please!

Buenas, tengo en mi sitio una pagina de confirmacion, que si se cumplen ciertas condiciones determinadas por un "if" envia un mail de confirmacion, el problema es que a veces llega 1 , o 2 o 3 mails! y la verdad no he logrado dar con el error: les dejo el codigo de este if, por favor avisen si es necesario todo el codigo (no tengo problema)

Código PHP:
<?php if ( get_option('successmail') == "Enable" && $dani == "10" ) {
                                
                
$name get_post_meta($postid'company'true);
                
$websitename get_bloginfo('name');
                
$joblink get_permalink($postid);
                
$message get_option('mailcontent');
                
                
$message str_replace("[buyer_name]""$name"$message);
                
$message str_replace("[website_name]""$websitename"$message);
                
$message str_replace("[job_link]""$joblink"$message);
                
                
$mail get_post_meta($postid'companymail'true);
                
$subject get_option('mailsubject');                
                
mail($mail$subject$message"From: [email protected]"); 
                };
?>

Que tengo mal? que debo hacer? los correos llegan bien, pero repetidos de 1 a 3 veces

muchisimas gracias!
  #2 (permalink)  
Antiguo 05/11/2008, 13:49
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 2 meses
Puntos: 20
Respuesta: la funcion mail () me manda 2 mails??¿ ayuda please!

¿Ese es el código completo?

Posiblemente sea fallo del servidor STMP y tenga algún problema al enviar el e-mail, por eso lo pone en cola (en varios intentos) y cuando puede los envía. Solo es una posibilidad... el código está bien.
  #3 (permalink)  
Antiguo 05/11/2008, 14:03
 
Fecha de Ingreso: septiembre-2008
Mensajes: 15
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: la funcion mail () me manda 2 mails??¿ ayuda please!

va completo:

Código PHP:
<?php
/*
Template Name: Final Step
*/

?>

<div class="content" id="page">

    <div class="steps">
        <div class="stepone">Primer Paso: Informaci&oacute;n del Trabajo</div>
  <div class="steptwo">Segundo Paso: Vista previa y Publicar</div>
  <div class="stepthree active">Tercer Paso: Felicitaciones! </div>
      <div class="cl"></div>
    </div>

    <?php if (get_option('payment') == "Enable") { ?>

        <?php 
        
if ( $_POST['payment_status'] == "Completed" ) { ?>            
            
                <?php
                    $verify_sign 
$_POST['verify_sign'];
                    
$mail $_POST['payer_email'];
                    
$mail str_replace("%40""@"$mail);
                    if ( 
get_option('publish') == "On" ) {
                        
wp_publish_post($postid); 
                    }
                    
add_post_meta($postid'Transaction No.'"$verify_sign"true);
                    
add_post_meta($postid'Payer Email'"$mail"true);
                
?>
            
                <h2>&Eacute;xito!</h2>
                    
                <div class="company-details">
                    N&uacute;mero de bara&acute;pipo.: <?php echo $verify_sign?>
                </div>
                
                <div class="job-details">
                    <p><?php echo get_option('successmessage'); ?></p>
                    <?php if(get_option('publish') == "On") { ?>
                    <p><a href="<?php the_permalink($postid); ?>" title="Ver Oferta de trabajo">Ir a verlo &rarr;</a><?php ?></p>
                </div>
                
                        
        <?php } else { ?>
        
        
                <h2>Error!</h2>
                
                <div class="company-details">
                    N&uacute;mero de Transacci&oacute;n.: <?php echo $_POST['verify_sign']; ?>
                </div>
                    
                <div class="job-details">
                    <p>Paypal dice que su pago no ha sido completado. Republique su trabajo o cont&aacute;ctese con nosotros.</p>
                </div>
                    
        <?php ?>
        

        
    <?php } else { ?>
    
        
  <?php
              
            
        $dani 
$_GET['dani'];
            
            
                if ( 
get_option('publish') == "On" ) {
                    
wp_publish_post($postid);} 
                    
                
add_post_meta($postid'Transaction No.'"$postid"true);
                
                
?>
            
            <h2>&Eacute;xito!</h2>
                
            <div class="company-details">
                N&uacute;mero de Transacci&oacute;n.: <?php echo $postid?>            </div>
            
<div class="job-details">
                <p><?php echo get_option('successmessage'); ?></p>
                <p><a href="<?php bloginfo('url'); ?>" title="<?php bloginfo('name'); ?>">Ir a Inicio &rarr;</a></p>
            </div>
            
            <?php if ( get_option('successmail') == "Enable" && $dani == "10" ) {
                                
                
$name get_post_meta($postid'company'true);
                
$websitename get_bloginfo('name');
                
$joblink get_permalink($postid);
                
$message get_option('mailcontent');
                
                
$message str_replace("[buyer_name]""$name"$message);
                
$message str_replace("[website_name]""$websitename"$message);
                
$message str_replace("[job_link]""$joblink"$message);
                
                
$mail get_post_meta($postid'companymail'true);
                
$subject get_option('mailsubject');                
                
mail($mail$subject$message"From: [email protected]"); 
                };
?>
  <?php ?>
    
</div>
    
    <?php get_sidebar(); ?>    
    </div>
    <?php get_footer(); ?>

<!-- MAIN HOMEPAGE -->
  #4 (permalink)  
Antiguo 05/11/2008, 14:23
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 2 meses
Puntos: 20
Respuesta: la funcion mail () me manda 2 mails??¿ ayuda please!

Sigo pensando igual, el código envía solo una vez.
  #5 (permalink)  
Antiguo 05/11/2008, 14:24
 
Fecha de Ingreso: septiembre-2008
Mensajes: 15
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: la funcion mail () me manda 2 mails??¿ ayuda please!

hay forma de solucionarlo? o alguna alternativa?
muchas gracias!
  #6 (permalink)  
Antiguo 05/11/2008, 14:26
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 2 meses
Puntos: 20
Respuesta: la funcion mail () me manda 2 mails??¿ ayuda please!

La solución no la sé, pero te invito a realizar dos pruebas:
  • Usar otro servidor STMP (o ejecutar ese código PHP en otro servidor directamente)
  • Enviar el email a una cuenta de correo distinta (Si usabas hotmail como prueba, usa otra ahora)

A ver si eso te lleva a alguna conclusión.
  #7 (permalink)  
Antiguo 05/11/2008, 15:29
 
Fecha de Ingreso: septiembre-2008
Mensajes: 15
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: la funcion mail () me manda 2 mails??¿ ayuda please!

lo de enviarlo a otra cuenta, lo he probado pero esta vez me ha devuelto 3 mails jeje, lo de cambiar el servidor STMP? eso si que no se, pero me puedes dar alguna idea de como realizarlo?

gracias!
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 17:52.