少し前にこれをコーディングしましたが、機能していません。
これをもっと簡単にできることはわかっていますが、OOPを使用しようとしています。
だからここにコードがあります..
データベース.クラス.php
<?php
class config {
public $host;
public $user;
public $pass;
function __construct($host=NULL,$user=NULL,$pass=NULL) {
$this->host = $host;
$this->user = $user;
$this->pass = $pass;
}
function __destruct() {}
}
class database {
private $host;
private $user;
private $pass;
private $config;
function __construct($config) {
$this->config = $config;
}
function __destruct() {}
public function openCon() {
mysql_connect($this->host,$this->user,$this->pass);
if (mysql_errno()) {
printf('Failed to connect: %s', mysql_error());
} else {
echo 'Connected to DB successfully.<br/><br/>';
}
}
public function closeCon() {
try {
mysql_close();
echo 'Successfully closed connection.<br/><br/>';
} catch (exception $e) {
echo $e;
}
}
}
?>
index.php
<?php
include('db.class.php');
$con = new config('localhost','root','');
$etc = new database($con);
$etc->openCon();
mysql_select_db('tester') or die(mysql_error());
$query1 = mysql_query('SELECT * FROM person') or die(mysql_error());
$rows = mysql_fetch_array($query1) or die(mysql_error());
echo 'First: ' . $rows['First'];
echo 'Age:' . $rows['Age'];
$etc->closeCon();
?>
これには明らかなエラーがあると確信しています。誰かがそれらを見つけて修正するのを手伝ってくれますか?
それは言う: データベース 'tester' へのユーザー ''@'localhost' のアクセスが拒否されました
理由がわからない。
ユーザーとして root を指定しましたが、使用を要求したユーザーとして '' が返されました。
ホストとデータベースを正しく取得しました。
私のローカルルートユーザーにはパスワードがないので...
何か案は?