php mysqli 搜索不工作
php mysqli search not working
我有一个数据库,其中包含有关书籍的信息,例如 isbn 编号、描述以及库存价格和数量。
我创建了一个搜索页面,用户应该可以在其中搜索作品,然后该页面将根据用户搜索的内容显示一本书。我有以下代码:
<?php
session_start();
include_once("config.php");
?>
<html>
<head>
<title>search</title>
</head>
<body>
<form action="newsearch.php" methods="post">
<input type="text" name ="search" placeholder="search">
<input type="submit" value=">>">
</form>
<?php
if(isset($_POST['search'])){
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);
$result = $mysqli->query($mysqli, "SELECT * FROM books WHERE Category LIKE '%$searchq%'");
if ($result) {
//fetch result set as object and output HTML
while($obj = $result->fetch_object())
{
echo '<div class="book">';
echo '<form method="post" id = "books" action="cart_update.php">';
echo '<div class="book-thumb"><img src="images/'.$obj->BookImage.'"></div>';
echo '<div class="book-content"><h3>'.$obj->Title.'</h3>';
echo '<br>';
echo '<div class="book-author"><i>'.$obj->BookAuthor.'</i></div>';
echo '<div class="book-desc">'.$obj->BookDesc.'</div>';
echo '<br>';
echo '<div class="book-qty"> In stock: '.$obj->Quantity.'</div>';
echo '<div class="book-info">';
echo 'Price '.$currency.$obj->Price;
echo '</div></div>';
echo '<input type="hidden" name="ISBN" value="'.$obj->ISBN.'" />';
echo '<input type="hidden" name="type" value="add" />';
echo '<input type="hidden" name="return_url" value="'.$current_url.'" />';
echo '</form>';
echo '</div>';
}
}
}
?>
</body>
</html>
但是当我输入一个词并点击搜索按钮时没有任何反应。
例如,如果我输入生物学,我应该显示两本与生物学有关的书,但页面只是刷新并保持空白
有什么想法吗?
<input type="submit" value="SEARCH" name="search_content">
对不起,我给的名字和你的文本框一样,刚刚更正了它
你的 form
attr
应该是 method="post"
而不是 methods="post"
我有一个数据库,其中包含有关书籍的信息,例如 isbn 编号、描述以及库存价格和数量。
我创建了一个搜索页面,用户应该可以在其中搜索作品,然后该页面将根据用户搜索的内容显示一本书。我有以下代码:
<?php
session_start();
include_once("config.php");
?>
<html>
<head>
<title>search</title>
</head>
<body>
<form action="newsearch.php" methods="post">
<input type="text" name ="search" placeholder="search">
<input type="submit" value=">>">
</form>
<?php
if(isset($_POST['search'])){
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);
$result = $mysqli->query($mysqli, "SELECT * FROM books WHERE Category LIKE '%$searchq%'");
if ($result) {
//fetch result set as object and output HTML
while($obj = $result->fetch_object())
{
echo '<div class="book">';
echo '<form method="post" id = "books" action="cart_update.php">';
echo '<div class="book-thumb"><img src="images/'.$obj->BookImage.'"></div>';
echo '<div class="book-content"><h3>'.$obj->Title.'</h3>';
echo '<br>';
echo '<div class="book-author"><i>'.$obj->BookAuthor.'</i></div>';
echo '<div class="book-desc">'.$obj->BookDesc.'</div>';
echo '<br>';
echo '<div class="book-qty"> In stock: '.$obj->Quantity.'</div>';
echo '<div class="book-info">';
echo 'Price '.$currency.$obj->Price;
echo '</div></div>';
echo '<input type="hidden" name="ISBN" value="'.$obj->ISBN.'" />';
echo '<input type="hidden" name="type" value="add" />';
echo '<input type="hidden" name="return_url" value="'.$current_url.'" />';
echo '</form>';
echo '</div>';
}
}
}
?>
</body>
</html>
但是当我输入一个词并点击搜索按钮时没有任何反应。 例如,如果我输入生物学,我应该显示两本与生物学有关的书,但页面只是刷新并保持空白
有什么想法吗?
<input type="submit" value="SEARCH" name="search_content">
对不起,我给的名字和你的文本框一样,刚刚更正了它
你的 form
attr
应该是 method="post"
而不是 methods="post"