因此,我非常感谢您在尝试找出如何根据用户的选择更改某些 PHP 变量而不提交按钮的帮助。我真的不太了解jquery,这是一个问题,但基本上这就是我需要做的。
我不需要更改内容或布局,只需更改将用于发出 API get 请求的 PHP 值。我已经根据其他答案尝试了一些方法,但似乎都与我需要的有点不同,或者我只是没有得到正确的结果。这是我的代码。
超文本标记语言
<form class="choose-item" action="" method="post">
<select id="select-item" name="my-select">
<option value="item-1"><?php echo $item_1 ?></option>
<option value="item-2"><?php echo $item_2 ?></option>
</select>
</form>
在下面的代码中,我想根据与基本表单提交一起使用的选择来更改 $key。但是如何使用 ajax 实现这一点而不需要重新加载页面或提交表单呢?
PHP
if (isset($_POST['my-select']) && $_POST['my-select'] == 'item-1') {
$key = 'jlsDDLfjkcjkfn39209dmxmkdnfn';
} else {
$key = 'Plkdsldskjf$$dlkjfdckde@kld';
}
$ch = curl_init();
$url = "https://app.apirequest.co/api/v1/";
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Api-Key: ' . $key));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$err = curl_error($ch);
curl_close($ch);
$response = json_decode($response, true);
$results = $response['msg']['ITEMLIST'];
?>
<div id='results'>
// echo results in html table here.
</div>
非常感谢任何有关 ajax 的帮助,或者至少能指出正确的方向,因为到目前为止,所有搜索都给我带来了死胡同。谢谢...
编辑:我将名称编辑为更通用,因此该错误不在我的实际代码中,而只是这里的拼写错误。
明月笑刀无情