Belirli aralıklarla jquery php dosyasını çağırıyor

3 Cevap php

i jquery değişkenleri şu var

var uemail="abc@domain.com,xyz@domain.com,gty@domain.com";
var subj="test message";
var text="<b>This is Email Body Text</b>";

ben bir PHP dosyası e-posta göndermek için "email.php" adında var

<?php

      $email =$_GET['email'];
      $subject =$_GET['subj'];
      $message = $_GET['text'];;

     if(mail($email, $subject, $message, "From: $email"))
     echo "1";
     else
     echo "0";
?>

ben ne yapmak istiyorum

i her zaman email.php Arasında 10 saniyede arayla denilen bu sayfada, subj, email.php metin ve baskı sonucu değişken uemail e-posta adresi ve her zaman geçiren e-posta var zaman sayıda email.php diyoruz.

abc@domain.com (ok)
xyz@domain.com (Error)
gty@domain.com (ok)

Teşekkürler

3 Cevap

Eğer birden fazla sayaçlarını paralel çalışan istemiyorsanız burada alternatif bir yaklaşımdır.

    var uemail="abc@domain.com,xyz@domain.com,gty@domain.com";

    uemail = uemail.split(',');

    var interval;
    var counter = 0;
    var check = function() { 
                            if(counter < uemail.length) {
                                // Send email post 
                                counter++; 
                            } else {
                                clearInterval(interval);
                            }
                };

    interval = setInterval(check,10000);
var n = 1;
$.each(uemail.split(','), function() {
    var data = {email: this.valueOf(), subj: subj, text: text};

    setTimeout(function() {
        $.post('http://.../email.php', data, function(resp) {
            alert(data.email + (resp ? 'ok' : 'error'));
        });
    }, n++ * 10000);
});

Bu şekilde aralığını durdurma hakkında dikkat çekmek zorunda kalmazsınız.

I think you want a line like this in your javascript: setInterval(function() {$.ajax{url:'url of emails.php'};}, 10000);

Yani php sayfasında her 10000 milisaniye için bir ajax isteği yapacaktır.