Web ページを古いシステムから新しいシステムに移動したところ、データベースへの接続に問題が発生しました。バージョンは、Mysql 5.1.67 および phpMyadmin 3.4.3.2 です。問題はどこだ?
ウェブサイト上:
警告: mysqli::mysqli() [mysqli.mysqli]: (HY000/2002): /home/do031500 のソケット '/var/lib/mysql/mysql.sock' (2) を介してローカル MySQL サーバーに接続できません/www_root/lib/database.inc.php 13 行目 データベース サーバーに接続できませんでした
database.inc.php:
class CDatabase {
public $Connected = false;
private $Mysqli;
public $Result;
// Connect to database server
function Connect() {
global $DatabaseSupport;
if ($DatabaseSupport) {
$this->Mysqli = new mysqli(dbServer, dbUser, dbPassword, dbDatabase);
if (mysqli_connect_errno()) {
$this->Connected = false;
Terminate("Could not connect to database server");
} else {
$this->Connected = true;
$this->Mysqli->autocommit(FALSE);
$this->Mysqli->set_charset("utf8");
}
}
}
// Disconnect from server
function Disconnect() {
if ($this->Connected) {
$this->Mysqli->close();
}
}
// Execute query
function Query($Query) {
$this->Result = false;
if ($this->Connected) {
$this->Result = $this->Mysqli->query($Query, MYSQLI_STORE_RESULT);
if (!$this->Result)
Terminate('Invalid query: '.$this->Mysqli->error);
}
return $this->Result;
}
// Close query query
function Close($Datalink) {
if ($this->Connected) {
mysqli_free_result($Datalink);
}
}
// Commit
function Commit() {
if ($this->Connected)
$this->Mysqli->Commit();
}
// Rollback
function Rollback() {
if ($this->Connected)
$this->Mysqli->Rollback();
}
// GetRecordCount
function RecordCount($DataLink) {
if ($this->Connected)
return $DataLink->num_rows;
else
return 0;
}
// Get last RecordID
function GetLastRecordID() {
if ($this->Connected)
return $this->Mysqli->insert_id;
else
return false;
}
// Get next line from query
function GetNextLine($Datalink = NULL) {
if ($this->Connected) {
if ($Datalink != NULL)
$this->Result = $Datalink;
return $this->Result->fetch_array(MYSQL_ASSOC);
}
}
// Execute query and return first line
function QueryFirstLine($Query) {
if ($this->Connected) {
if ($this->Result = $this->Query($Query))
return $this->Result->fetch_array(MYSQL_ASSOC);
}
}
// GetField list for current query
function GetFieldList($Datalink = NULL) {
if ($this->Connected) {
if ($Datalink != NULL)
$this->Result = $Datalink;
//$FieldsCount = $this->Result->field_count;
$List = NULL;
while ($Finfo = $this->Result->fetch_field()) {
$List[] = $Finfo->name;
}
return $List;
}
}
// encode value
function EncodeValue($Value) {
return $Value;
}
// move item
function MoveItem($SQL, $RecordID, $Forward, $TableName) {
$Query = $this->Query($SQL);
while ($Line = $this->GetNextLine($Query)) {
$List[] .= $Line['RecordID'];
}
$HasMove = false;
for ($i = 0; $i < count($List); $i++) {
if ((!$HasMove) && ($List[$i] == $RecordID)) {
if ($Forward) {
if ($i < count($List)-1) {
$a = $List[$i+1];
$List[$i+1] = $List[$i];
$List[$i] = $a;
$i++;
}
} else {
if ($i > 0) {
$a = $List[$i-1];
$List[$i-1] = $List[$i];
$List[$i] = $a;
}
}
$HasMove = true;
}
}
$cnt = 1;
foreach ($List as $Key=>$Value) {
$this->Query("update $TableName set OrderNo='".$cnt."' where RecordID='$Value'");
$cnt++;
}
$this->Commit();
}
}