【问题标题】:calling php file from jquery at specific interval以特定间隔从 jquery 调用 php 文件
【发布时间】:2010-03-02 12:49:34
【问题描述】:

我在 jquery 中有以下变量

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

我有一个名为“email.php”的 PHP 文件来发送电子邮件

<?php

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

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

我想做的是

调用 email.php 的次数我在变量 uemail 中有电子邮件地址,并且每次将电子邮件、主题、文本传递到 email.php 并在每次调用 email.php 之间间隔 10 秒的页面上打印结果。

abc@domain.com(好的)
xyz@domain.com(错误)
gty@domain.com(好的)

谢谢

【问题讨论】:

  • @Natrium - 你对这个问题有什么不明白的地方?

标签: php javascript jquery


【解决方案1】:
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);
});

这样您就不必担心停止间隔。

【讨论】:

    【解决方案2】:

    我想你想在你的 javascript 中写这样一行: setInterval(function() {$.ajax{url:'url of emails.php'};}, 10000);

    这将每 10000 毫秒向 php 页面发出一个 ajax 请求。

    【讨论】:

      【解决方案3】:

      如果您不希望多个计时器并行运行,这是另一种方法。

          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);
      

      【讨论】:

        猜你喜欢
        • 2012-04-15
        • 2015-04-24
        • 2018-02-26
        • 2011-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-30
        相关资源
        最近更新 更多