1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<form class = “form-inline”  action = “./test.php?id=1” >
                <li class = “nav-item” >
                   
                        <select class = “custom-select custom-select-lg mb-3”  id = “objectType” >
                          <option selected >Object Type </option >
                          <option value = “Toy” >Toy </option >
                          <option value = “Furniture” >Furniture </option >
                          <option value = “Gift” >Gift </option >
                          <option value = “Household” >Household </option >
                          <option value = “Instrument” >Instrument </option >
                        </select >
                   
               
</li >

                <li class = “nav-item” >
                   
                        <select class = “custom-select custom-select-lg mb-3” id = “materialType” >
                          <option selected >Material Type </option >
                          <option value = “Mud” >Mud </option >
                          <option value = “Cloth” >Cloth </option >
                          <option value = “Thread” >Thread </option >
                          <option value = “Jute” >Jute </option >
                          <option value = “Cotton” >Cotton </option >
                          <option value = “Can” >Can </option >
                          <option value = “Bamboo” >Bamboo </option >
                        </select >
                   
               
</li >

                <li class = “nav-item” >
                   
                       
                            <input class = “form-control” type = “search” placeholder = “Search” >
                            <span class = “input-group-btn” >
                                <button class = “btn btn-outline-secondary” type = “submit” id = “searchSubmit” ><i class = “fa fa-search” >
                                </button >
                            </span >
                       
                   
               
</li >

            </form >

我有这个表格。当提交按钮被调用 test.php 页面被调用,请求 id 值为 1。在 test.php 表单字段的值将用于进行查询。

部分

的test.php代码片段

1
2
3
4
5
6
7
8
9
10
$id = $_REQUEST [ ‘id’ ] ;
if ( $id == 1 )
  {
    $result = search ( $_POST [ ‘imageName’ ] , $_POST [ ‘objectType’ ] , $_POST [ ‘materialType’ ] ) ;
    echo $_POST [ ‘imageName’ ] ;
}
else
{
    $result = home_page_image ( ) ;
}

当我在填写完字段后单击提交按钮时, test.php?id=1 没有出现在浏览器地址栏中,这确认我没有调用该页面。

编辑 1

我已经添加了@PL200 在他的回答中提到的方法( POST ),但是在 test.php 中的 search() 函数之后没有回显。我也发出了警报,但未显示。警报在 search 函数之前工作,并且 post 值既不是在 search 函数之前也不是之后的回显。这表明表单值未发布在 test.php.

编辑 2
实际上,当单击提交按钮时,我调用了相同的页面。


您没有为您的表单添加任何方法。将 html 的第一行更改为:

1 <form class = “form-inline”  method = “POST” action = “./test.php?id=1” >

这应该可以解决您遇到的问题。



相关讨论

  • 我添加了方法,但在 test.php 中的 search() 函数之后没有回显。我也发出了警报,但未显示。


我理解您的意图,但请注意,某些浏览器会忽略使用表单操作属性传递的查询参数。因此,每当提交表单时,在某些浏览器上可能没有定义 $_GET[‘id’] ,只是行为不一致。
此外,您没有为表单指定任何方法属性。

你应该做的

使用隐藏的输入表单元素来传递您的值,这是推荐的方式。

1
2
3
4
5
6
<form class = “form-inline”  action = “./test.php” method = “post” >
    <!– put values to pass here –>
    <input type = “hidden” value = “1” name = “id” />
 
   
</form >

此外,您还可以将隐藏的输入字段放在表单元素之外,并使用表单 id 与输入字段表单属性一起引用它。请参见下面的示例:

1
2
3
4
5
6
7
<form id = “form-id” class = “form-inline”  action = “./test.php” method = “post” >
    <!– put values to pass here –>
   
</form >

<!– Bind this hidden input field to your form –>
<input type = “hidden” value = “1” name = “id” form = “form-id” />

请注意,您可以在单个表单中使用的隐藏输入字段的数量没有限制,但是,让它变得简单。


没有 name 的表单输入。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<form class = “form-inline”  action = “./test.php?id=1” method = “POST” >
                <li class = “nav-item” >
                   
                        <select class = “custom-select custom-select-lg mb-3”  name = “objectType” >
                          <option selected >Object Type </option >
                          <option value = “Toy” >Toy </option >
                          <option value = “Furniture” >Furniture </option >
                          <option value = “Gift” >Gift </option >
                          <option value = “Household” >Household </option >
                          <option value = “Instrument” >Instrument </option >
                        </select >
                   
               
</li >

                <li class = “nav-item” >
                   
                        <select class = “custom-select custom-select-lg mb-3” name = “materialType” >
                          <option selected >Material Type </option >
                          <option value = “Mud” >Mud </option >
                          <option value = “Cloth” >Cloth </option >
                          <option value = “Thread” >Thread </option >
                          <option value = “Jute” >Jute </option >
                          <option value = “Cotton” >Cotton </option >
                          <option value = “Can” >Can </option >
                          <option value = “Bamboo” >Bamboo </option >
                        </select >
                   
               
</li >

                <li class = “nav-item” >
                   
                       
                            <input class = “form-control” type = “search” placeholder = “Search” name = “imageName” >
                            <span class = “input-group-btn” >
                                <button class = “btn btn-outline-secondary” type = “submit” id = “searchSubmit” ><i class = “fa fa-search” >
                                </button >
                            </span >
                       
                   
               
</li >

            </form >

并且在 search() 方法之后没有显示警报消息,因为在 search() 方法中出现了问题。我调试并纠正了 search() 方法中的错误。现在一切正常。



相关讨论

  • 您越来越近了,但表格中仍然缺少 id 。您可以尝试在表单中添加 <input type=”hidden” name=”id” value=”1″>


声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。