我为用户创建了一个表单,用于输入员工的名字和姓氏。当它提交的用户必须从employees数据库中选择所有条目,其中条目类似于employees表中的first_name列。当我这样做时,它不会显示在页面上,所以我相信一定有一些我找不到的错误。
<!doctype html>
<html lang="en">
<head>
<link href="employeeStyles.css" rel="stylesheet">
<title>Employee Search</title>
</head>
<body>
<div id="employeeArea">
<h1>Employee Search Results</h1>
<?php
$firstName = $_GET['firstName'];
$lastName = $_GET['lastName'];
$resultsNumber = $_GET['resultsNumber'];
@ $db = new mysqli('localhost','root','','employees');
$firstName = $db->real_escape_string($firstName);
$lastName = $db->real_escape_string($lastName);
$resultsNumber = $db->real_escape_string($resultsNumber);
if (mysqli_connect_errno()){
echo 'Error: Could not connect to the database. Please try again later. </body></html>';
exit;
}
$query = "SELECT * FROM employees WHERE first_name LIKE .$firstName.'%'";
$result = $db->query($query);
$numResults = $result->num_rows;
echo 'Number of results found '.$numResults;
for ($i=0; $i<$result; $i++){
$row = $result->fetch_assoc();
echo $row ['first_name']."<br>";
echo $row ['last_name']."<br>";
echo $row ['emp_no']."<br>";
echo $row ['hire_date']."<br>";
echo $row ['birth_date']."<br>";
echo $row ['gender']."<br>";
}
$db->close();
?>
</div>
</body>
答案 0 :(得分:1)
嗯,问题出现在您的查询中。
您传递给查询的变量不会包含在引号内。 试试:
$query = "SELECT * FROM employees WHERE first_name LIKE '" . $firstName . "%'";