0

我正在尝试自动化一个过程。

提交时我有一个表单向 PHP 文件发出 $.post() 请求并将结果返回到页面。

我想知道如何让它发送 X 数量的 POST 请求,具体取决于用户设置的请求数量,并使用自定义设置根据最后的结果更改请求的设置。

使用 jQuery/JS/PHP 怎么可能?

示例: http: //puu.sh/4kipZ.jpg

您可以选择所需的请求数量并自定义参数(获胜时、失败时)。

谢谢。

4

2 回答 2

0

这应该让你知道如何去做。如您所见,AJAX 是关键。

请注意,这$.post()几乎与使用相同$.ajax()-- 但$.post()有一些硬编码设置。我使用的结构在开始时通常是最简单的,然后转向其他格式,基于 Promise 等。

抱歉,不能为此做一个 jsFiddle,因为 AJAX 无法在 jsFiddle 上工作。但是,这个答案是完全独立的。只需将其复制/粘贴到两个文件中并运行:

index.php(或任何您想命名的名称)
your_php_processor.php(如果重命名文件,还必须在 ajax 代码块中重命名它)


HTML 和 Javascript/jQuery:

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>

        <script type="text/javascript">
            $(document).ready(function() {
                var numrolls, ta;
                $('#txtArea').attr({'disabled':'disabled'});

                $('#gobutt').click(function() {
                    numrolls = $('#rollnum').val();
                    $('#txtArea').html('Results of ' +numrolls+ ' automated rolls:\r\n\r\n');
                    $.ajax({
                        type: "POST",
                        url: "your_php_processor.php",
                        data: 'rolls=' + numrolls,
                        success:function(data){
                            ta = $('#txtArea').val() + '\r\n';
                            $('#txtArea').val(ta + data);
                        }
                    });

                });


            }); //END $(document).ready()

        </script>
    </head>
<body>

    Number of rolls to automate:<br>
    <input type="text" id="rollnum" /><input type="button" id="gobutt" value="Go!" /><br>
    <br>
    Results:<br>
    <textarea id="txtArea" rows="20" cols="30" ></textarea>

</body>
</html>

your_php_processor.php

<?php

$rr = $_POST['rolls'];

$all = '';

for ($i=1; $i<=$rr; $i++) {
    $rand = mt_rand(1, 6);
    $all .= $rand . "\r\n";
}

echo $all;

有关 AJAX 的更多信息/示例,请参阅此 SO 帖子中的简单示例

您可能还会发现本文后面的评论很有趣,因为它们讨论了使用各种内置随机数生成器的合法性。

于 2013-09-06T19:42:36.703 回答
0

constant in PHP您可以为要发出请求的次数定义 a 。然后你se it in JQuery

在 PHP 中

define('REQUEST_AMOUNT', X);

在 HTML 中

<input type='hidden' id='amount', val='<?PHP echo REQUEST_AMOUNT;?>'>

在 JQUERY 中

var amount = $('#amount').val();

现在amount是您必须提出请求的次数

于 2013-09-06T07:11:04.383 回答