我创建了一个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>";
?>
但是在我将字段输入字段后显示数据时,表格在我输入字段值之前显示数据库中的所有数据。任何人都可以帮助我。
答案 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.
}
?>