在我的网站即时通讯试图包括在每个页面的顶部一个“横幅”,它本身是一个单独的PHP页面,查询MySQL数据库返回一个数字显示。PHP包括另一个PHP查询MySQL
当我得到了横幅php网址(www.sitename.com/banner.php)的确切网址,它完美的作品。
但是,当我将横幅包含到另一个页面include'banner.php'时,它会返回以下错误:数据库访问错误2002:无法通过套接字'/ var/lib/mysql/mysql.sock'(2)
我有2种方式,我需要包括这一点,我的主要网站页面都是PHP。我的论坛是phpbb和我需要包括的文件是HTML所以我用(注意,我做了../退出到横幅根目录,它不是我的文件没有被发现的问题
我假设当包括的范围是不同的。我怎么会正确做到这一点包括?
Banner.php
<?php
require("../mysql.inc.php");
check_get($tp, "tp");
$tp = intval($tp);
$link = sql_connect();
$result = sql_query($link, "SELECT COUNT(*) FROM online_count");
if (!$result) {
echo "Database error.<br>\n";
exit;
}
list($total) = mysql_fetch_row($result);
mysql_free_result($result);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<link rel="stylesheet" type="text/css" href="menu_css.css" media="screen"/>
</head>
<body>
<div class="menucenter">
<div class="Online"> <? echo"$total" ?> Online</div>
</body>
</html>
mysql.inc.php
<?php
$SQLhost = "****.db.****.hostedresource.com";
$SQLport = "3306";
$SQLuser = "****";
$SQLpass = "****";
$SQLdb = "****";
function sql_connect()
{
global $SQLhost, $SQLport, $SQLdb, $SQLuser, $SQLpass;
if ($SQLport != "")
$link = @mysql_connect("$SQLhost:$SQLport","$SQLuser","$SQLpass");
else
$link = @mysql_connect("$SQLhost","$SQLuser","$SQLpass");
if (!$link) {
echo "Database access error ".mysql_errno().": ".mysql_error()."\n";
die();
}
$result = mysql_select_db("$SQLdb");
if (!$result) {
echo "Error ".mysql_errno($link)." selecting database '$SQLdb': ".mysql_error($link)."\n";
die();
}
return $link;
}
function sql_query($link, $query)
{
global $SQLhost, $SQLport, $SQLdb, $SQLuser, $SQLpass;
$result = mysql_query("$query", $link);
if (!$result) {
echo "Error ".mysql_errno($link).": ".mysql_error($link)."\n";
die();
}
return $result;
}
function check_get(&$store, $val)
{
$magic = get_magic_quotes_gpc();
if (isset($_POST["$val"])) {
if ($magic)
$store = stripslashes($_POST["$val"]);
else
$store = $_POST["$val"];
}
else if (isset($_GET["$val"])) {
if ($magic)
$store = stripslashes($_GET["$val"]);
else
$store = $_GET["$val"];
}
}
?>
粘贴一些代码 – GBD
什么是您的数据库连接代码?函数sql_connect()。 – janenz00
您是否试过按照路径查看套接字文件是否真正驻留在那里?另外,sql_connect函数是否是native?我找不到任何文档。 –