我有以下问题:
我无法打开数据库连接。有人可以告诉我,如果我有这个MySQL命令,我的数据库配置必须如何?
$dh = new DB('table');
$dh->Query("SELECT * FROM cars WHERE carname LIKE '%{$term}%'");
我已经尝试过这样的事情:
$dh = new DB("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
但它不起作用。
那么我必须如何以及在哪里放入我的主机dbpass和dbuser呢?
这是我的完整代码:
if(empty($_REQUEST['term']))
exit;
$term = $_REQUEST['term'];
$dh = new DB('table');
$dh->Query("SELECT * FROM cars WHERE carname LIKE '%{$term}%'");
$result = array();
$result['results'] = array();
$result['count'] = 0;
while($carname = $dh->FetchArray()){
$result['count']++;
$result['results'][] = $carname;
}
header('Content-type: application/json');
echo json_encode($result);
我想把结果带回json。
但控制台说:
GET http://192.168.50.200:8888/XX/XX/source.php?term=XX 500 (Internal Server Error)
是因为我没有连接到数据库?
答案 0 :(得分:2)
如果您的语言是php,请直接使用以下内容:
$connection=mysql_connect("hostname","username","password"); // Try using localhost for hostname
$db=mysql_select_db("db_name");
$query=mysql_query("SELECT * FROM cars WHERE carname LIKE '%{$term}%'");
答案 1 :(得分:1)
假设您正在使用PHP和PDO,那么您应该如何创建连接
$db = new PDO('mysql:host=' . $db_host . ';dbname=' . $db_name, $db_user, $db_pass);
$sth = $db->prepare("SELECT * FROM cars WHERE carname LIKE '%:term%'");
$sth->bindParam(':term', $term));
$sth->execute();
还要确保在php.ini文件中启用了PDO
答案 2 :(得分:0)
如果您使用核心PHP,则可以使用以下代码与数据库建立连接 -
<?php
mysql_connect("host_name","username","password") or die("server not connected");
mysql_select_db("database_name") or die("database not connected2");
?>
如果你在wordpress工作,那么使用以下代码 -
<?php
require_once('/path/to/wp-load.php');
global $wpdb;
$result = $wpdb->get_results("SELECT * FROM cars WHERE carname LIKE '%'".$term."'%'");
?>