Bu soru yer benim önceki mesaja devamında olan here.
Orijinal yazı düzenleme olmadan tekrar kod örneğini göndermek için hiçbir yolu olmadığından, ben yeni bir yazı başlıyorum. Ve ayrıca, bu PHP kodu içeren.
Ben, iki sınıfları yazmaya ilk açılması ve veritabanına bağlantıyı kapatmadan ve ikinci DB erişim için çeşitli işlevleri yeniden sağlamaktır duyuyorum.
Aşağıda Bağlantı sınıf için benim PHP kodu:
<?php
/**
* DBConnection Base Class Definition
*/
/* Include dependency */
require_once("\config\dbconfig.php");
abstract class dbconnection
{
var $conn;
//Opens connection for a MySQL DB
abstract function OpenConnection()
{
$conn = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD)
or die($this->ShowError(mysql_error()));
mysql_select_db(DB_NAME) or die ($this->ShowError("Connection to MySQL Database Failed. "));
}
//Closes connection for a MySQL DB
abstract function CloseConnection()
{
try
{
mysql_close($conn);
}
catch(exception $ex)
{
$this->ShowError($ex);
}
}
protected function ShowError($err)
{
echo "<script>alert('Error: ' +". $err .");</script>";
}
}
?>
Yukarıdaki kodu dahil dosya aşağıdaki kodu içerir:
<?php
//Modify constants with data needed to access your own database
define('DB_HOST','localhost:3306');
define('DB_NAME','MyStore');
define('DB_USER','super');
define('DB_PASSWORD','****');
?>
Şimdi burada (önceki yazıma devam) soyut sınıf ve arayüzler ile ilgili benim sorgular şunlardır:
(1) Can a connection class be abstract? Are the methods written correctly?
(2) Instead of making the second code a file "dbconfig.php", will it be good to make an Interface for it?