[英]Passing variables from a HTML form to PHP
我的表格中的一项提交是选择你的对手。 它有 425 个基于数据查询的选项。 表单元素是 select 列表名称 = '对手'。 这是产生用户看到的行。
while($opponent = mysqli_fetch_assoc($oresults)) {
echo '<option value = "'. $opponent['id'] .'">'. $opponent['school'] .'</option>';
}
用户看到“学校”,但它会将“id”传递给 PHP。 有没有办法将值和用户看到的选项发送到 PHP?
只有对手的 'id' 进入数据表,但我还想将 'school' 发回给用户说,“你的统计数据与 'school' 已提交”。
我知道我可以用另一个查询来生成它,但我宁愿不这样做。
您可以将id
和school
作为字符串放在选项值中,然后将其转换为数组
echo '<option value = "'. $opponent['id'] .','. $opponent['school'] .'">'. $opponent['school'] .'</option>';
您可能会收到类似以下内容的字符串:'id,school' 接下来,将此字符串转换为数组。 参考下面的代码
$string = 'id,school' // this is your select option value
$array = explode(',', $string)
上面的代码会给你$array = [ 'id', 'school' ]
你现在可以 output 到你的页面。
echo 'Your stats '. $array[0] .' vs school '. $array[1] .' has been submitted';
您可以发送 JSON 与两个或所有数据:
echo '<option value="'.htmlentities(json_encode($opponent)).'">'.$opponent['school'].'</option>';
然后在 PHP 中:
$opponent = json_decode($_POST['opponent'], true);
echo $opponent['school'];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.