通过搜索栏php查询数据库
我想创建一个搜索栏,Final.php是用户输入到数据库中的每个事件的显示页面,但我想添加一个搜索栏来查询列表,以更快地找到他们想要的结果(每个团队的事件名称和四个分数)。我不明白我哪里出错了,我希望有人能帮助我通过搜索栏php查询数据库,php,html,css,mysql,Php,Html,Css,Mysql,我想创建一个搜索栏,Final.php是用户输入到数据库中的每个事件的显示页面,但我想添加一个搜索栏来查询列表,以更快地找到他们想要的结果(每个团队的事件名称和四个分数)。我不明白我哪里出错了,我希望有人能帮助我 您的第一个条件,更改 if(isset($\u POST['event']){toif(isset($\u POST['search']){ 及 $searchq=$\u POST['search'];至$searchq=$\u POST['search']; 搜索文本输入的名称为“
您的第一个条件,更改
if(isset($\u POST['event']){
toif(isset($\u POST['search']){
及
$searchq=$\u POST['search'];
至$searchq=$\u POST['search'];
搜索文本输入的名称为“搜索”,但由于某些原因,您正在查找事件
另外,请注意不要直接接受用户输入并将其插入数据库查询。请小心SQL注入。这是一种常见的检查方法,可以了解有关如何防止SQL注入的更多信息。是的,很抱歉,只是尝试这么做,才让这个网站遇到了困难:)当前输出是什么?没有,没有错误,但也没有结果,甚至没有当使用我的$query时,我已经这样做了,但是现在我的$query不起作用,警告:mysqli_query()至少需要2个参数,第23行的/storage/ssd2/875/5052875/public_html/Final.php中给出的1个参数无法搜索$output
从未显示,因为if条件从未为true,所以您正在查找错误的字段。现在您处于if块中,您的查询需要修复。mysqli_query
需要两个参数SQL连接和查询。您目前只提供查询,请阅读好的,谢谢!最感谢的是rep或answer@RubyWatts@RubyWatts几乎每个问题都有一些解决方案,所以在发布问题之前,请尝试在谷歌上搜索:)
<?php
$con = mysqli_connect("localhost", "id5052875_signuplogin", "Meganruby2") or die("cannot connect");
mysqli_select_db($con, "id5052875_signuplogin") or die ("couldnt connect");
$output = '';
//collect
if (isset($_POST['search'])) {
$searchq = $_POST['search'];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq);
print("$searchq");
$query = mysqli_query($con, "SELECT * FROM event WHERE event name LIKE '%$searchq%'") or die("could not search");
$count = mysqli_num_rows($query);
echo($searchq);
if($count == 0 ) {
$output = 'There was no search';
}else {
while($row = mysqli_fetch_array($query)) {
$event = $row['event name'];
$num1 = $row['Score1'];
$num2 = $row['Score2'];
$num3 = $row['Score3'];
$num4 = $row['Score4'];
$output .= '<div> '.$event.' '.$num1.' '.$num2.' '.$num3.' '.$num4.'</div>';
}
}
}
?>
<form action="Final.php" method="post">
<input type = "text" name = "search" placeholder = "search for event.."/>
<input type = "submit" value = "search"/>
</form>