执行查询时显示的所有记录

时间:2015-07-04 09:40:56

标签: php mysql database

我创建了一个php页面,我在其中创建了一个名为employee name的字段,我应该能够输入员工的名字,并且应该获得具有相同名字的所有员工的数据。我正在使用sql' LIKE'它的功能。

我创建了如下字段

<form action="list.php" method="post"> 
                <b>Employee Name</b>: <input type="text" name="term" /> 
                <input style="background-color:rgb(255,213,32)" type="submit" value="Submit" /> 
                </form> 

我正在使用的查询是

$term = isset($_POST['term'])? $_POST['term'] : '';
$sql =  mysqli_query($connecDB,"SELECT id,territory,brand,seae,e_id,name,email,contact,exist FROM employees WHERE name LIKE '%$term%'" );

我通过创建表来显示数据,如下所示

<?php
            echo "<table class='center' width='100%'>";

while($row = mysqli_fetch_array($sql))
{
        echo "<tr><th>Territory</th><th>SE/AE</th><th>Brand</th><th>Employee ID</th><th>Name</th><th>Email</th><th>Contact</th><th>Exist</th><th colspan='2'>Action</th></tr>";
    echo '<tr><td> <span class="page_territory">'.$row["territory"].'</span></td>
            <td><span class="page_seae">'.$row["seae"].'</span></td>
                <td><span class="page_brand">'.$row["brand"].'</span></td>
                    <td><span class="page_e_id">'.$row["e_id"].'</span></td>
                        <td><span class="page_name">'.$row["name"].'</span></td>
                            <td><span class="page_email">'.$row["email"].'</span></td>
                                <td><span class="page_contact">'.$row["contact"].'</span></td>
                                    <td><span class="page_exist">'.$row["exist"].'</span></td>

         <td class="swMntTopMenu"><a href="edit.php?id='.$row["id"].'" style="text-decoration:none !important;"><button><div class="link"><img src="images/edit.ico" alt="EDIT" style="height:15px;width:15px"></div></button></a></td>
             <td class="swMntTopMenu"><a onClick=\'javascript: return confirm("Please confirm deletion");\' href="delete.php?id='.$row["id"].'" style="text-decoration:none !important;"><button><div class="link"><img src="images/images.jpg" alt="DELETE"style="height:15px;width:15px"></div></button></a></td></tr>';
}
echo "</table>";
?>

但是在我将字段输入字段后显示数据时,表格在我输入字段值之前显示数据库中的所有数据。任何人都可以帮助我。

2 个答案:

答案 0 :(得分:0)

mysqli_query进行isset($_POST['term'])和表格渲染。

答案 1 :(得分:0)

  

嗨,这是基于您的代码的示例。您可以打印所有人的信息   名称与搜索词匹配的表。希望这会有所帮助。

<?php
    if ( isset($_POST['term']) )
    {
        include 'connection.php';
        $name = $_POST['term'];

        $sql= "SELECT * FROM employee WHERE firstname= '$name'";

        $results = mysqli_query( $connection, $sql );
        while ( $row = mysqli_fetch_assoc( $results ) ) 
        {
            if ( $row['firstname'] == $name ) 
            {          //you can edit the code below to print in a nice html table format if you like
                echo $row['firstname'] . " " . $row['lastname'] . " " . $row['email'] . " " . $row['address'] . '<br>'; //and any other information you wish to print
            }
        }
    }
    else
    {
        //redirect or display an error message.
    }
?>