通过 AJAX 将动态参数从 JavaScript 传递到 PHP 以便在 cURL 调用中使用
Pass Dynamic Parameter from JavaScript to PHP via AJAX for Use in cURL Call
我正在使用 php curl 从我的 javascript 使用 Ajax 发出 http get 长轮询请求。这是来自 javascript
的电话
var i;
i++;
$.ajax({
url:"http://localhost/myport.php",
type: GET,
success: function(response){ ...},
...
...
下面是我在 myport.php 文件中调用 php 的方法
<?php
$ch=curl_init();
$curl_setopt($ch, CURLOPT_URL, "http://localhost:7555/test?index=" //Here I need to set a value (the variable i) in the above JS
如果我直接从js调用,我会做
$.ajax({ url:"http://localhost:7555/test?index=" + i
我是 php 和 curl 的新手,我想知道如何传递该变量的值以便获取调用参数。
如果我没理解错的话,你只想将变量 $i
的值附加到 cURL 调用,你可以这样做:
<?php
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, "http://localhost:7555/test?index=" . $i);
甚至,
curl_setopt($ch, CURLOPT_URL, sprintf("http://localhost:7555/test?index=%d", $i));
另请注意,函数调用前没有 $
:它是 curl_setopt()
而不是 $curl_setopt()
($
用于变量,如 $ch
) .
编辑
根据问题的澄清,您似乎需要将此 i
变量从 JavaScript 获取到 PHP。您可以在 AJAX 调用中将其作为 GET
参数传递:
var i;
i++;
$.ajax({
url:"http://localhost/myport.php?index=" + i,
type: GET,
success: function(response){ ...},
...
...
那么,从PHP开始,你就可以这样使用了:
curl_setopt($ch, CURLOPT_URL, sprintf("http://localhost:7555/test?index=%d", $_GET['index']));
您还应验证 $_GET['index']
是否实际传入:
if (!isset($_GET['index']))
{
die("The index was not specified!");
}
您可以像在上一个示例中那样从 JavaScript 传递 i
,使用 ?index=
,然后从 php 中读取 index
的值全局变量 $_GET["index"]
.
我正在使用 php curl 从我的 javascript 使用 Ajax 发出 http get 长轮询请求。这是来自 javascript
的电话var i;
i++;
$.ajax({
url:"http://localhost/myport.php",
type: GET,
success: function(response){ ...},
...
...
下面是我在 myport.php 文件中调用 php 的方法
<?php
$ch=curl_init();
$curl_setopt($ch, CURLOPT_URL, "http://localhost:7555/test?index=" //Here I need to set a value (the variable i) in the above JS
如果我直接从js调用,我会做
$.ajax({ url:"http://localhost:7555/test?index=" + i
我是 php 和 curl 的新手,我想知道如何传递该变量的值以便获取调用参数。
如果我没理解错的话,你只想将变量 $i
的值附加到 cURL 调用,你可以这样做:
<?php
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, "http://localhost:7555/test?index=" . $i);
甚至,
curl_setopt($ch, CURLOPT_URL, sprintf("http://localhost:7555/test?index=%d", $i));
另请注意,函数调用前没有 $
:它是 curl_setopt()
而不是 $curl_setopt()
($
用于变量,如 $ch
) .
编辑
根据问题的澄清,您似乎需要将此 i
变量从 JavaScript 获取到 PHP。您可以在 AJAX 调用中将其作为 GET
参数传递:
var i;
i++;
$.ajax({
url:"http://localhost/myport.php?index=" + i,
type: GET,
success: function(response){ ...},
...
...
那么,从PHP开始,你就可以这样使用了:
curl_setopt($ch, CURLOPT_URL, sprintf("http://localhost:7555/test?index=%d", $_GET['index']));
您还应验证 $_GET['index']
是否实际传入:
if (!isset($_GET['index']))
{
die("The index was not specified!");
}
您可以像在上一个示例中那样从 JavaScript 传递 i
,使用 ?index=
,然后从 php 中读取 index
的值全局变量 $_GET["index"]
.