我从教程中选择了这段代码并进行了编辑,使其适合我的需求.
<?php
//if we got something through $_POST
if (isset($_POST['search'])) {
// here you would normally include some database connection
include('config2.php');
$db = new db();
// never trust what user wrote! We must ALWAYS sanitize user input
$word = mysql_real_escape_string($_POST['search']);
// build your search query to the database
$sql = "SELECT name FROM $tbl_name WHERE name LIKE '%" . $word . "%'";
// get results
$row = $db->select_list($sql);
if(count($row)) {
$end_result = '';
foreach($row as $r) {
$result = $r['title'];
// we will use this to bold the search word in result
$bold = '<span class="found">' . $word . '</span>';
$end_result .= '<li>' . str_ireplace($word, $bold, $result) . '</li>';
}
echo $end_result;
} else {
echo '<li>No results found</li>';
}
}
?>
Run Code Online (Sandbox Code Playgroud)
我运行代码时收到此错误:
Fatal error: Class 'db' not found in /home/peltdyou/public_html/do_search.php on line 6
Run Code Online (Sandbox Code Playgroud)
我是PHP的新手,所以任何人都可以解决我的问题..
更新:
<?php
class db {
function __construct()
{
global $dbh;
if (!is_null($dbh)) return;
$dbh = mysql_pconnect(DB_HOST, DB_USER, DB_PASSWORD);
mysql_select_db(DB_NAME);
mysql_query('SET NAMES utf8');
}
function select_list($query)
{
$q = mysql_query($query);
if (!$q) return null;
$ret = array();
while ($row = mysql_fetch_array($q, MYSQL_ASSOC)) {
array_push($ret, $row);
}
mysql_free_result($q);
return $ret;
}
}
?>
Run Code Online (Sandbox Code Playgroud)
这是db.php代码..我想用我自己的config2.php文件替换它我可以让它连接到我的数据库..显然不是
我想我找到了你使用的示例脚本,并且在其中,他们说:
// here you would normally include some database connection
include('db.php');
Run Code Online (Sandbox Code Playgroud)
在该示例中,未描述db.php,假设您具有可以使用的此类数据库文件.进一步搜索,我找到了这个数据库类,他们称之为"database.php",但你可以轻松地将它用于你正在尝试使用的代码.
| 归档时间: |
|
| 查看次数: |
75036 次 |
| 最近记录: |