Я пытался реализовать PDO с функциями prepare(), bindParam() и execute(), чтобы разрешить создание запроса из данных, введенных пользователем.php pdo query не работает
Я хотел отобразить список книг, а затем разрешить пользователю фильтровать список, а затем просмотреть новый список и полный список.
Когда я ввожу критерии в форму для поиска, ничего не происходит. Что я не замечаю?
здесь код
<?php
$pageTitle = "Book List";
$pageHeading = "Book List";
include_once ('header.php');
include_once('databaseConnection.php');
if(isset($_POST['txtSearchBookTitle'])) {
$db = new DatabaseConnection();
$db = $db->db_connection;
$searchTitle = ($_POST['txtSearchBookTitle']);
$sql = $db->prepare("SELECT title FROM tblBook WHERE title LIKE ('%:searchTitle%') ORDER BY title");
$sql->bindParam(':searchTitle', $searchTitle);
$sql->execute();
$result = $sql->fetchAll();
print_r($result);
foreach ($result as $row) {
echo "<li>" . " " . $row["title"]. " " . "</li>";
}
}
?>
<form name="searchBookTitle" method="post" action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>" >
<fieldset>
<legend>Search Books</legend>
<label for="txtSearchBookTitle">Search by Book Title</label>
<input type="text" name="txtSearchBookTitle" id="txtSearchBookTitle">
<input type="submit" value="Submit">
</fieldset>
</form>
<?php
include_once('getBooks.php');
getBooks();
include 'footer.php';
?>
Если вы попытаетесь запустить этот запрос в MySQL, вы получите обратно результаты, что вы хотите? – vaso123
Я побежал этот SQL на базе данных Выбор названия FROM tblBook WHERE Название LIKE («%, то%») ORDER BY названием и возвращает результаты каждый раз Я хочу изменить «тем», чтобы myUserVariable. –