Php 中的MySQLi连接包括文件和函数
我已经开始将我所有的旧网站从MySQL转换为MySQLi。我遇到的问题是,我使用的一些函数已停止工作,而且“包含”或使用配置文件(带有连接)的文件也未成功连接。我在这里找到了一个关于如何建立连接的答案 示例 config.phpPhp 中的MySQLi连接包括文件和函数,php,function,mysqli,include,global,Php,Function,Mysqli,Include,Global,我已经开始将我所有的旧网站从MySQL转换为MySQLi。我遇到的问题是,我使用的一些函数已停止工作,而且“包含”或使用配置文件(带有连接)的文件也未成功连接。我在这里找到了一个关于如何建立连接的答案 示例 config.php class DBi { public static $db; } DBi::$db = new mysqli('host', 'uname', 'pword', 'database'); if ($db->connect_error) { die(
class DBi {
public static $db;
}
DBi::$db = new mysqli('host', 'uname', 'pword', 'database');
if ($db->connect_error) {
die('Connect Error (' . $db->connect_errno . ') '
.$db->connect_error);
}
<?
require_once ('config.php');
if (!isset($_REQUEST['term'])) {
exit;
} else {
$rs = DBi::$db->query('SELECT...');
$data = array();
if ($rs && $rs->num_rows) {
while($row = $rs->fetch_assoc()) {
$busname = htmlspecialchars_decode($row['BName'], ENT_QUOTES);
$label = $busname;
$data[] = array(
'label' => $label,
'value' => $row['BName']
);
}
}
echo json_encode($data);
flush();
}
?>
搜索自动完成业务名称。php
class DBi {
public static $db;
}
DBi::$db = new mysqli('host', 'uname', 'pword', 'database');
if ($db->connect_error) {
die('Connect Error (' . $db->connect_errno . ') '
.$db->connect_error);
}
<?
require_once ('config.php');
if (!isset($_REQUEST['term'])) {
exit;
} else {
$rs = DBi::$db->query('SELECT...');
$data = array();
if ($rs && $rs->num_rows) {
while($row = $rs->fetch_assoc()) {
$busname = htmlspecialchars_decode($row['BName'], ENT_QUOTES);
$label = $busname;
$data[] = array(
'label' => $label,
'value' => $row['BName']
);
}
}
echo json_encode($data);
flush();
}
?>
使用上述函数的Javascript包括
<script>
<!-- business name autocomplete -->
$(function() {
$(".src-bn").autocomplete({
type: "POST",
source: "lib/search-autocomplete-business-names.php",
minLength: 1,
focus: function(e, t) {
return $(".src-bn").val(t.item.label), $(".src-spc").val(t.item.value), !1
},
select: function(e, t) {
return $(".src-bn").val(t.item.label), $(".src-spc").val(t.item.value), !1
}
}).data("ui-autocomplete")._renderItem = function(e, t) {
return $("<li>").append("<a>" + t.label + "</a>").appendTo(e)
}
});
</script>
$(函数(){
$(“.src bn”).autocomplete({
类型:“POST”,
来源:“lib/search autocomplete business names.php”,
最小长度:1,
焦点:功能(e,t){
返回$(.src bn”).val(t.item.label),$(.src spc”).val(t.item.value),!1
},
选择:功能(e,t){
返回$(.src bn”).val(t.item.label),$(.src spc”).val(t.item.value),!1
}
}).data(“ui自动完成”)。\u renderItem=函数(e,t){
返回$(“”).append(“+t.label+”).appendTo(e)
}
});
我想要的是能够创建一个可以在任何文件中运行的连接,无论是主页面、函数还是包含的文件。有什么想法吗?先谢谢你
G您实际遇到了哪些错误?您有带ide的xdebug设置吗?您可以轻松地逐步完成连接过程。@Zarathuztra我在错误日志中看到:[01-Mar-2015 11:08:53 Europe/London]PHP警告:mysql\u real\u escape\u string():第11行/home/compare/public\u html/lib/search-autocomplete-business-names.PHP中的用户“compare”@“localhost”(使用密码:NO)的访问被拒绝[01-Mar-2015 11:08:53 Europe/London]PHP警告:mysql_real_escape_string():无法在第11行的/home/compare/public_html/lib/search-autocomplete-business-names.PHP中建立指向服务器的链接。这是哪行代码“$rs=DBi::$db->query('SELECT…);”Cheers gth数据库的凭据错误。请参阅“使用密码:否”。您是否为该用户设置了密码?