有什么方法可以在PHP中(没有AJAX)将这个下拉列表的值保存在一个变量中而不实际提交表单?
<p>
Choose device type :
<?php
echo "<select name='device_type_id'>";
echo "<option value='Select'>Select</option>";
foreach ($dev_type_results as $row) {
echo "<option value='" . $row['id'] . "'>" . $row['name'] . "</option>";
}
echo "</select>"; ?>
</p>
据我所知,你不能选择设备类型。Php生成你的页面,然后选择方法是在客户端的浏览器上实现的,而不是在服务器上(服务器端的php脚本不再运行)。你需要提交表单,然后再运行一次php脚本,从POST中提取值。
无论是通过AJAX还是直接提交表单,都会向服务器端发送一个请求,在我们的例子中是PHP。
如果你想让服务器接收任何数据,你需要提交表单。
答案是否定的。在上述限制下是不可能的。
不,在PHP中不可能,除非你提交它,把它保存在db中,然后在不同的页面上获取它。为了让值保存在前端,你必须使用React或Vue中常见的存储或状态。另一种方法是使用javascript保存在localstorage、cache存储、IndexDB或cookie中。然后你可以从那里检索你的值
您可以使用cookie在客户端保存数据,然后在服务器端获取。
PHP代码(服务器端)。
if ($_COOKIE) {
header('content-type: text/plain; charset=utf-8');
print_r($_COOKIE);
exit;
}
Javascript代码(客户端)。
document.cookie = "name=yourname";
document.cookie = "favorite_food=bakso";