Подскажите, пожалуйста, в чём проблема?
В ДНК. Шутка.
Проблема в чудовищном пещерном коде, который до сих пор преподают во всяких хтмлакадемиях и прочих видео с ютуба.
Ну то есть основная причина - это неверное имя поля, как правильно заметили в соседнем ответе, но при правильно настроенном пхп не пришлось бы гадать. при соединении надо сказать mysqli чтобы сообщала обо всех ошибках. Ну и сам запрос надо исполняьт не так как у тебя, а правильно
Сначала делаем отдельный файл mysqli.php и пишем в него код соединения. И это не одна строчка.
Код берем
отсюда, подставляем свои значения.
if (isset($_POST['search'])) {
require 'mysqli.php';
$stmt= $mysqli->prepare("SELECT * FROM `persons` WHERE firstname=?");
$stmt->bind_param("s", $_POST['fname']);
$stmt->execute();
$result = $stmt->get_result();
while($r = mysqli_fetch_assoc($result)){ ?>
<tr>
<td><?= $r['id']; ?></td>
<td><?= $r['firstname']; ?></td>
<td><?= $r['lastname']; ?></td>
<td><?= $r['age']; ?></td>
<td><?= $r['gender']; ?></td>
<td><?= $r['city']; ?></td>
</tr>
<?php
}
} ?>