Php HTML表单第二个按钮无法搜索我的数据库

Php HTML表单第二个按钮无法搜索我的数据库,php,html,mysql,Php,Html,Mysql,我建立了一个名为customer的数据库。我还有一个表单,允许我在提交时将数据输入数据库,这很好 然而,我也希望能够在同一页上搜索数据库。我添加了一个搜索字段和按钮,并尝试使用if语句来确定按下了哪个按钮 第二个用于搜索数据库的按钮在按下时似乎没有任何作用,它似乎甚至没有输入else-if语句,我不明白为什么 我有以下代码: <?php require("header.php"); connect('final');//connect to DB header ("location:/xa

我建立了一个名为customer的数据库。我还有一个表单,允许我在提交时将数据输入数据库,这很好

然而,我也希望能够在同一页上搜索数据库。我添加了一个搜索字段和按钮,并尝试使用if语句来确定按下了哪个按钮

第二个用于搜索数据库的按钮在按下时似乎没有任何作用,它似乎甚至没有输入else-if语句,我不明白为什么

我有以下代码:

<?php
require("header.php");
connect('final');//connect to DB
header ("location:/xampp/newCustomer.php");
if (isset($_POST['add'])) {

//do stuff for submit button here which works fine
}


else if (isset($_POST['btnSearch'])){

echo 'searching'; // test if button is working

$query = $_POST['searching']; 
$data = mysql_query("SELECT *FROM customer WHERE 'First_Name' LIKE '$query'") ;


    if($data === FALSE) {
           $error = 'Query error:'.mysql_error();
              echo $error;
                         }
                 else
                        {

                              $test = array();
                              $colNames = array();
                              while($results = mysql_fetch_assoc($data)) 
                                                    {
                                                       $test[] = $results;
                                                     }

     $anymatches=mysql_num_rows($data);
        if ($anymatches != 0) 
                               {
                              $colNames = array_keys(reset($test));

                                }

if ($anymatches == 0) 
    { 
    echo "Sorry, but we can not find an entry to match your query<br><br>"; 
    } 

} 
}




}     
?>
您使用的是
type=“button”
,这给了它一个按钮结构,但按钮不使用表单,只有提交才能使用

<form name="add"  action="newCustomer.php"  method="post">
 <label><span></span> <input type="text" name="query" palceholder="Type to Search"         id="seaching"/></label>
 <br />
 <label><span>Name</span> <input type="text" name="addFname" /></label>


      <button type="button" name="btnSearch" value="Search"  id="btnSearch"   onclick="this.form.action">Search</button></label>

     <input type="hidden" name="searching" value="true" />
     <input type="hidden" name="searching" value="true" />
     <button type="submit" name="add" value="add" id="btnSub" >Add</button></label>


     </form>
        </html>


名称 搜寻 添加
试试这个:

HTML:


姓名:
搜索:
和PHP:

<?php
if (isset($_POST['add'])) {
    echo "add";

}

if (isset($_POST['search'])){
    echo "search"; 
}
?>


我想这就是您需要的:)

为什么有两个搜索输入?如果查询是搜索的值,为什么它们被隐藏?onclick不会提交表单…你可以使用2个表单…实际上有很多事情可能会出错,包括标题上方的第一句话(“location:/xampp/newCustomer.php”);应该在if(isset($\u POST['add']){//do stuff for submit button here,这很好}中,并将输入类型从button更改为submit for SearchNote:请注意SQL注入:即使我将其更改为submit,它也不会做任何事情
<form action="NewCustomer.php" method="post">
<table>
    <tr>
        <td> Name: </td>
        <td><input type="text" name="name"></td>
        <td><input type="submit" name="add" value="add"></td>
    </tr>
</form>
<form action="NewCustomer.php" method="post">
    <tr>
        <td>Search: </td>
        <td><input type="text" name="search"></td>
        <td><input type="submit" name="search" value="search"></td>
    </tr>
</table>
</form>
<?php
if (isset($_POST['add'])) {
    echo "add";

}

if (isset($_POST['search'])){
    echo "search"; 
}
?>