Php 引导:提交表数据
我尝试进入bootstrap,因此我尝试构建一个包含某种内容管理交互的网站。下面是一个可以插入成分的表格,这些成分应该插入到MYSQL关系中。当我填写下表时,出现了一个问题,因为表单(包装在表中)不会提交任何内容Php 引导:提交表数据,php,html,twitter-bootstrap-3,html-table,submit,Php,Html,Twitter Bootstrap 3,Html Table,Submit,我尝试进入bootstrap,因此我尝试构建一个包含某种内容管理交互的网站。下面是一个可以插入成分的表格,这些成分应该插入到MYSQL关系中。当我填写下表时,出现了一个问题,因为表单(包装在表中)不会提交任何内容 <form class="form-horizontal" id="ingredients" role="form" action="process_input.php" method="POST"> <table> <caption>ins
<form class="form-horizontal" id="ingredients" role="form" action="process_input.php" method="POST">
<table>
<caption>insert ingredients</caption>
<thead>
<tr>
<th>Quantity</th>
<th>Unit</th>
<th>Name</th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<div class="form-group">
<td><select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option selected>Choose</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
</select></td>
<td> <select id="opt1b" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option selected>Choose</option>
<option value="3">Litre</option>
<option value="3">Cup</option>
<option value="4">TS</option>
</select></td>
<td><input id="opt1c"></td>
<td><input class="btn btn-primary" type="reset" value="Reset"></td>
</div>
</tr>
<tr>
<div class="form-group">
<td><select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option selected>Choose</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
</select></td>
<td> <select id="opt1b" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option selected>Choose</option>
<option value="3">Litre</option>
<option value="3">Cup</option>
<option value="4">TS</option>
</select></td>
<td><input id="opt1c"></td>
<td><input class="btn btn-primary" type="reset" value="Reset"></td>
</div>
</tr>
<tr>
<div class="form-group">
<td><select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option selected>Choose</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
</select></td>
<td> <select id="opt1b" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option selected>Choose</option>
<option value="3">Litre</option>
<option value="3">Cup</option>
<option value="4">TS</option>
</select></td>
<td><input id="opt1c"></td>
<td><input class="btn btn-primary" type="reset" value="Reset"></td>
</div>
</tr>
</tbody>
<button class="btn btn-sucess">Send</button>
插入成分
量
单位
名称
选择
1.
2.
3.
4.
5.
6.
7.
8.
选择
升
杯
TS
选择
1.
2.
3.
4.
5.
6.
7.
8.
选择
升
杯
TS
选择
1.
2.
3.
4.
5.
6.
7.
8.
选择
升
杯
TS
发送
php脚本的过程非常简单
<?php
print_r($_GET);
print_r($_POST);
?>
表中一定有错误,因为提交后两个数组仍然为空
编辑:谢谢你所有的更正。现在可以了。stackoverflow社区速度惊人!:) 表中没有任何错误。表格用于制作用户可见的布局 在php中使用
$\u GET
和$\u POST
全局变量获取表单数据
正如我所看到的,您在任何输入中都没有给出属性name
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
在上面的代码中,缺少name属性。因此,添加name属性,如下所示:
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0" name="selectbox">
^^^name can be your choice
^^^名字可以是你的选择
注意:表单提交后,PHP全局变量$\u GET
或$\u POST
用输入字段的名称保存该值。与上面的示例类似,该值将位于$\u POST['selectbox']
或$\u GET['selectbox']
因此,您必须为每个输入类型指定name属性。表中没有任何错误。表格用于制作用户可见的布局 在php中使用
$\u GET
和$\u POST
全局变量获取表单数据
正如我所看到的,您在任何输入中都没有给出属性name
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
在上面的代码中,缺少name属性。因此,添加name属性,如下所示:
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0" name="selectbox">
^^^name can be your choice
^^^名字可以是你的选择
注意:表单提交后,PHP全局变量$\u GET
或$\u POST
用输入字段的名称保存该值。与上面的示例类似,该值将位于$\u POST['selectbox']
或$\u GET['selectbox']
因此,您必须为每个输入类型指定name属性。您提供的代码中的方法是POST。 当您在POST中明确提交时,为什么要在PHP中使用GET?那是一点
<form class="form-horizontal" id="ingredients" role="form" action="process_input.php" method="POST">
另一件事是你的提交按钮。您没有定义按钮的类型。它应该是“提交”类型
<button class="btn btn-sucess" type="submit">Send</button>
发送
您的select元素缺少name属性,PHP使用该属性唯一标识输入中的值
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0" name="yourSelectName">
最后,由于您试图通过POST获取值,请创建保存每个选择框的POST值的变量。您可以按照以下示例进行操作:
<?php
$selectBox1 = $_POST['selectBox1'];
$selectBox2 = $_POST['selectBox2'];
echo $selectBox1 . " " $selectBox2;
?>
您提供的代码中的方法是POST。 当您在POST中明确提交时,为什么要在PHP中使用GET?那是一点
<form class="form-horizontal" id="ingredients" role="form" action="process_input.php" method="POST">
另一件事是你的提交按钮。您没有定义按钮的类型。它应该是“提交”类型
<button class="btn btn-sucess" type="submit">Send</button>
发送
您的select元素缺少name属性,PHP使用该属性唯一标识输入中的值
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0" name="yourSelectName">
最后,由于您试图通过POST获取值,请创建保存每个选择框的POST值的变量。您可以按照以下示例进行操作:
<?php
$selectBox1 = $_POST['selectBox1'];
$selectBox2 = $_POST['selectBox2'];
echo $selectBox1 . " " $selectBox2;
?>
表没有问题您只需设置输入名称属性
name=“opt1a”
如
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0" name="opt1a">
并通过赋予type属性使您的按钮提交
<button type="submit" class="btn btn-sucess">Send</button>
发送
并确保每个打开的标签都有关闭标签。
如果没有name属性,则无法在服务器端代码中获取任何输入字段值。我希望它能有所帮助。这不是表的问题,您只需设置输入名称属性
name=“opt1a”
如
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0" name="opt1a">
并通过赋予type属性使您的按钮提交
<button type="submit" class="btn btn-sucess">Send</button>
发送
并确保每个打开的标签都有关闭标签。
如果没有name属性,则无法在服务器端代码中获取任何输入字段值。我希望它能有所帮助。在查看代码后,发现了一些错误 1)您尚未关闭表单
2)并且您正在向PHP发送所有选择选项值null,即您选择的第一个选项没有与之关联的值。所以最后显示一个空数组
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option value="0" selected>Choose</option>
选择
3)为每个选择下拉列表指定不同的名称,以区分访问
<select name="differentName" id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
4)表单操作应该是打开表单标签后的第一件事
<form action="process_input.php" class="form-horizontal" id="ingredients" role="form" method="POST">
查看代码后,您发现了一些问题 1)您尚未关闭表单
2)并且您正在向PHP发送所有选择选项值null,即您选择的第一个选项没有与之关联的值。所以最后显示一个空数组
<select id="opt1a" class="custom-select mb-2 mr-sm-2 mb-sm-0">
<option value="0" selected>Choose</option>
选择
3)给予