当用户点击php

时间:2019-05-30 06:28:24

标签: javascript php mysql

当用户单击“声明”按钮时,我想每5秒运行一次javascript函数。 在我建立此代码后,单击按钮,但是脚本不起作用。我一点都不擅长javascript。我所知道的只是一些php和mysql。

当用户单击索赔按钮时,函数send()应调用payout()函数并运行在payout()函数内部的crul()函数。 我不知道我在哪里弄错了,因为我不太了解JavaScript。

这是我建立的按钮功能。不知道是不是错了。

<button onclick="send()" class="btn-success"><i class="fas fa-exclamation-circle"></i> Claim <i class="fas fa-exclamation-circle"></i></button>
<script>
function send() {
   setInterval(function(){ payout(); }, 5000);
}
</script>

这是函数payout()

function payout(){
    $sql = $conn->query("UPDATE wallets SET balance = balance - 1 WHERE wallet = '$wallet' " );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,"https://faucethub.io/api/v1/send");
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,
            "api_key=$apikey&to=$wallet&currency=$shortcurrency&amount=$doge ");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $server_output = curl_exec ($ch);
    curl_close ($ch);
}

结果应该是payout()函数应该每5秒发送一次到$ wallet

1 个答案:

答案 0 :(得分:0)

首先,您需要创建一个PHP文件并将PHP payout()移动到php文件中。其次,您需要在javascript间隔内进行ajax调用。

  

payout.php

//add the following code after your connection object
function payout(){
    $sql = $conn->query("UPDATE wallets SET balance = balance - 1 WHERE wallet = '$wallet' " );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,"https://faucethub.io/api/v1/send");
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS,
            "api_key=$apikey&to=$wallet&currency=$shortcurrency&amount=$doge ");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $server_output = curl_exec ($ch);
    curl_close ($ch);
}
  

index.html

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button onclick="send()" class="btn-success"><i class="fas fa-exclamation-circle"></i> Claim <i class="fas fa-exclamation-circle"></i></button>
<script>
function send() {
	setInterval(function () {
		$.ajax({
			type: 'POST',
			url: 'payout.php',
			success: function (data) {
				console.log("payout attempt");
			},
		});
	}, 3000);
}
</script>