gpt4 book ai didi

php - 使用 PHP 和 mysql 进行搜索

转载 作者:行者123 更新时间:2023-11-29 06:21:12 25 4
gpt4 key购买 nike

我打算做一个简单的搜索框,但是我的代码没有正确运行,代码在这里:

<?php
$db_host = 'localhost';
$db_name= 'site';
$db_table= 'tablesite';
$db_user = 'root';
$db_pass = '';


$con = mysql_connect($db_host,$db_user,$db_pass) or die("خطا در اتصال به پايگاه داده");
$selected=mysql_select_db($db_name, $con) or die("خطا در انتخاب پايگاه داده");
mysql_query("SET CHARACTER SET utf8");
$dbresult=mysql_query("SELECT * FROM $db_table WHERE name LIKE '%".$_POST['search']."%' OR family LIKE '%".$_POST['search']."%'",$con);

?>



<form name="form1" dir="rtl" method="post" action="">
<label for="search"> search </label>
<input name="search" type="text" size="40" maxlength="50">
<input type="submit" name="submit" value="search"/>

我的表也是这样的:

      CREATE TABLE tablesite (
id_user INT NOT NULL AUTO_INCREMENT ,
name VARCHAR( 128 ) NOT NULL ,
family VARCHAR( 128 ) NOT NULL ,
email VARCHAR( 64 ) NOT NULL ,
phone_number VARCHAR( 16 ) NOT NULL ,
job VARCHAR( 255 ) NOT NULL ,
username VARCHAR( 16 ) NOT NULL ,
password VARCHAR( 32 ) NOT NULL ,
confirmcode VARCHAR(32) ,
PRIMARY KEY ( id_user )
)

错误在这一行:

 $dbresult=mysql_query("SELECT * FROM $db_table WHERE name LIKE '%".$_POST['search']."%' OR family LIKE '%".$_POST['search']."%'",$con);

表单获取数据库,如果有相同的记录,则查找匹配案例。我想要的是,它应该正确搜索并在没有匹配的情况下显示消息,谢谢...

注意: خطا در اتصال به پایگاه داده 表示无法连接到数据库...

最佳答案

要使您的代码正常工作,您需要从数据库中获取。我让你执行 var_dump() 检查以确保它正常工作。

如果查询有效,我会在您的代码中添加一个 while 循环来检查您的结果。

<?php
$db_host = 'localhost';
$db_name= 'site';
$db_table= 'tablesite';
$db_user = 'root';
$db_pass = '';


$con = mysql_connect($db_host,$db_user,$db_pass) or die("خطا در اتصال به پايگاه داده");
$selected=mysql_select_db($db_name, $con) or die("خطا در انتخاب پايگاه داده");
mysql_query("SET CHARACTER SET utf8");
$dbresult=mysql_query("SELECT * FROM $db_table WHERE name LIKE '%".$_POST['search']."%' OR family LIKE '%".$_POST['search']."%'",$con);

while ($row = mysql_fetch_array($dbresult, MYSQL_ASSOC)) {
printf("Name: %s Family: %s<br>", $row["name"], $row["family"]);
}

?>



<form name="form1" dir="rtl" method="post" action="">
<label for="search"> search </label>
<input name="search" type="text" size="40" maxlength="50">
<input type="submit" name="submit" value="search"/>

您以后应该使用 php 扩展 mysqliPDO,因为 mysql 已被弃用。例如,它不使用准备好的语句。

关于php - 使用 PHP 和 mysql 进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33201246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com