首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PHP的Echo jQuery循环

问使用PHP的Echo jQuery循环
EN

Stack Overflow用户
提问于 2012-10-13 03:39:05
回答 1查看 505关注 0票数 0

在搜索了很长一段时间后,我决定直接在这里提问,因为我发现的东西要么不起作用(或者我不能让它们起作用;)--要么需要我在我的服务器上更改东西,这是我想要避免的。

我希望下面的函数在每个结果之后显示输出,这样就不必先加载函数,这需要很长时间。正如您在下面看到的,我的想法是用jQuery(1.8.2)来尝试这一点。

它不能工作,我就是不能让它工作。有没有更好的方法来做这件事?我是不是在什么地方弄错了,导致它不能工作?

如果您需要更多信息,请联系我们。

代码语言:javascript
复制
<?php
print_r($_POST);


if(isset($_POST['p']) && isset($_POST['domain']) && isset($_POST['option']))
{   error_reporting(0);
define('INCLUDE_CHECK',true);
require('admin/API/class_api.php');
require('admin/functions/core.inc.php');

    $dom = explode('.',$_POST['domain']);
    $dom = $dom[0];
    $ext = array('nl','be','eu','net','com','org','biz','info','tk','ws','gr','me','cc','in','gs','name','ch','co','tv','ru','bz','li','lu','pl','se','vg','cx','tl','im','sg','ms','sh','io','mu','fm','am','xxx','ag','sc','nf','md');

    if ($_POST['loop']==40)
     { print 'Laatste loop dus .. STOP : .'.$ext[41]; }
    else
     { print 'Loop: '.$_POST['loop'].' - zoek op : .'.$ext[$_POST['loop']];
       ?>
       <script>
        $.post('test.php', { p:'full', domain:dom, option:opt, loop:'<?php echo $_POST['loop']+1; ?>'},
        function(data){
          $('#domresults2').css('display','block').html(data);
          $('#domloading').css('display','none');
        });
       </script>
       <?php
     }

}
?>




//Start JS
<script>
$('#domsubmit.complete').click( function() {
  var dom = escape($('#domsearch').val());
  var opt = escape($('#option').val());

  $('#domresults2').css('display','none').html('');
  $('#domloading').css('display','inline');

  $.post('test.php', { p:'full', domain:dom, option:opt, loop:0},
     function(data){
       $('#domloading').css('display','none');
       $('#domresults2').css('display','block').html(data);
   });

return false;
});
</script>
//end JS

/

更新:已解决!

那么,出了什么问题呢?-> core.inc.php中的php函数引用了一个与jQuery 1.8.2库('qTip2')不兼容的库。感谢您的支持!

代码语言:javascript
复制
<?php
print_r($_POST);

if (isset($_POST['p']) && isset($_POST['domain']) && isset($_POST['option'])) {
error_reporting(0);
define('INCLUDE_CHECK', true);
require('admin/API/class_api.php');
require('admin/functions/core.inc.php');

$dom = explode('.', $_POST['domain']);
$dom = $dom[0];
$ext = array('nl','be','eu','net','com','org','biz','info','tk','ws','gr','me','cc','in','gs','name','ch','co','tv','ru','bz','li','lu','pl','se','vg','cx','tl','im','sg','ms','sh','io','mu','fm','am','xxx','ag','sc','nf','md');

$loop = $_POST['loop'];
DomCheck($_POST['domain'],$ext[$_POST['loop']]);

if ($loop != count($ext)) {
$loop++;?>
  <script type="text/javascript">
        var opt = '<?php echo $_POST['option']; ?>';
        var dom = '<?php echo $_POST['domain']; ?>';
        $.post('test.php', { p:'full', domain:dom, option:opt, loop:'<?php echo $loop; ?>'},
        function(data){
            $('#domresults2').css('display','block').append(data);
            <?php if ($loop < count($ext)) {
                      echo "$('#domloading').css('display','none');";
                  } ?>
        });
    </script>
<?php
}
}
?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-13 03:44:46

您需要了解的一件事是,PHP在服务器上执行,而JavaScript (jQuery)在客户机上执行。

这意味着当PHP开始执行时,jQuery已经是done。

但是,我在您的代码中没有看到任何循环。我想这更是你想要的。您不是在做“使用jQuery的PHP循环”,而是在PHP循环中输出jQuery代码:

代码语言:javascript
复制
<?php
if (isset($_POST['p']) && isset($_POST['domain']) && isset($_POST['option'])) {
    error_reporting(0);
    define('INCLUDE_CHECK', true);
    require('admin/API/class_api.php');
    require('admin/functions/core.inc.php');

    $dom = explode('.', $_POST['domain']);
    $dom = $dom[0];
    $ext = array('nl','be','eu','net','com','org','biz','info','tk','ws','gr','me','cc','in','gs','name','ch','co','tv','ru','bz','li','lu','pl','se','vg','cx','tl','im','sg','ms','sh','io','mu','fm','am','xxx','ag','sc','nf','md');

    foreach ($_POST['loop'] as $loop) {
        if ($loop == 40) {
            print "Laatste loop dus .. STOP : .{$ext[41]}";
        } else {
            print "Loop: {$loop} - zoek op : .{$ext[$loop]}";
?>      <script>
            $.post('test.php', { p:'full', domain:dom, option:opt, loop:'<?php echo $loop; ?>'},
            function(data){
                $('#domresults2').css('display','block').html(data);
                $('#domloading').css('display','none');
            });
        </script>
<?php   }
    }
}
?>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12865940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档