Как вы ищете имя или что-то вроде ключевого слова и ожидаете много результатов?Поиск имени в PHP
Мол, когда вы ищете Mark,
Вы ждете, чтобы, как это:
Марк Цукерберг
Марк Хамиль
Марк Fischbach
...
Но когда я делаю запрос, он отображает только один для меня.
Я попытался использовать множество различных предложений SQL и других вещей, но все же дает мне один результат из этого. Кстати, я использую PDO как мой обработчик базы данных.
Это мои коды:
<?php
require_once '../../assets/conn.db.php';
require_once '../../assets/init.php';
require_once '../../assets/main.func.php';
if($_POST){
$namesearch = $_POST['name'];
$sql = "SELECT * FROM `student_info` WHERE username LIKE ? OR username LIKE ?";
$checkstmt = $conn->prepare($sql);
$checkstmt->execute(array("%{$namesearch}%","%{$namesearch}%"));
$result = $checkstmt->fetch(PDO::FETCH_ASSOC);
if($result){
echo "
<table border='1' class='text-align: center'>
<tr>
<th>Name</th>
<th>Phone</th>
<th>Address</th>
<th>Username</th>
<th>Action</th>
</tr>
<tr>
<td>{$result['name']}</td>
<td>{$result['phone']}</td>
<td>{$result['address']}</td>
<td>{$result['username']}</td>
<td><a href='grades.php?user=".$result['StudentID']."'>+</a> Add Grades</td>
</tr>
</table> <br>
";
}
}
?>
<form method="post">
<input type="text" name="name" placeholder="Search for a student">
<input type="submit" value="Search!">
</form>
Вы только забираете одну («следующую») строку. Вам нужно будет зациклиться и извлечь их все. например 'while ($ result = $ checkstmt-> fetch (...) {...' – Jeff