witam, uczę się dopiero programować obiektowo, korzystam z ksiązki php5. zaawansowane programowanie
<?php
require_once('class.Entity.php');
require_once('class.Individual.php');
require_once('class.Organization.php');
class DataManager
{
private static function _getConnection
() { return $hDB;
}
or
die ("blad polaczenia z baza danych"); or
die ("blad wybierania bazy danych");
return $hDB;
}
public static function getAddressData
($addressID) { $sql = "SELECT * from \"adres\" where \"adres_id\" = $addressID";
$res = mysql_query(DataManager
::_getConnection
(). $sql); die ("Blad odczytu danych dla adresu pocztowego $addressID"); }
}
public static function getEmailData
($emailID) {
$sql = "select * from \"email\" where \"email_id\" = $emailID";
$res = mysql_query(DataManager
::_getConnection
(). $sql); die ("blad odczytu danych dla adresu email $emailID"); }
}
public static function getPhoneNumberData
($phoneID) {
$sql = "SELECT * from \"telefon\" where \"telefon_id\" = $phoneID";
$res = mysql_query(DataManager
::_getConnection
(). $sql); die ("blad odczytu danych dla numeru telefonu $phoneID"); }
}
public static function getEntityData
($entityID) { $sql = "SELECT * FROM \"jednostka\" where \"jednostka_id\" = $entityID";
$res = mysql_query(DataManager
::_getConnection
(). $sql); die("blad odczytu jednostki $entityID"); }
}
public static function getAddressObjectsForEntity
($entityID) { $sql = "select \"adres_id\" from \"adres\" where \"jednostka_id\" = $entityID";
$res = mysql_query(DataManager
::_getConnection
(). $sql);
if (!$res) {
die("blad oczytu adresow dla jednostki $entityID"); }
$objs[] = new Address($rec['adres_id']);
}
return $objs;
} else {
}
}
public static function getEmailObjectsForEntity
($entityID) { $sql = "SELECT \"email_id\" from \"email\" WHERE \"jednostka_id\" = $entityID";
$res = mysql_query(DataManager
::_getConnection
(). $sql); if(!$res) {
die ("blad odczytu adresow email dla jednostki $entityID"); }
$objs[] = new EmailAddress($rec['email_id']);
}
return $objs;
} else {
}
}
public static function getPhoneNumberObjectsForEntity
($entityID) { $sql = "SELECT \"telefon_id\" from \"telefon\" WHERE \"jednostka_id\" = $entityID";
$res = mysql_query(DataManager
::_getConnection
(). $sql);
if (!$res) {
die ("blad odczytu numerow telefonu dla jednostki $entityID"); }
$objs[] = new PhoneNumber($rec['telefon_id']);
}
return $objs;
} else {
}
}
public static function getEmployer
($individualID) { $sql = "SELECT \"organizacja_id\" FROM \"zatrudniony\" WHERE \"osoba_id\" = $individualID ";
$res = mysql_query(DataManager
::_getConnection
(). $sql); die ("blad odczytu pracodawcy dla osoby $individualID"); }
if ($row) {
return new Organization($row['organizacja_id']);
} else {
return null;
}
}
public static function getEmployees
($orgID) { $sql = "SELECT \"osoba_id\" FROM \"zatrudniony\" WHERE \"organizacja_id\" = $orgID";
$res = mysql_query(DataManager
::_getConnection
(). $sql);
die ("blad odczytu informacji o zatrudnionych dla organizacji $orgID"); }
$objs[] = new Individual($row['osoba_id']);
}
return $objs;
} else {
}
}
public static function getAllEntitiesAsObjects
() { $sql = "SELECT \"jednostka_id\" , \"typ\" from \"jednostka\"";
$res = mysql_query(DataManager
::_getConnection
(). $sql);
if (!$res) {
die ("blad pobierania wszystkich jednostek"); }
if ($row['typ'] == 'I') {
$objs[] = new Individual($row['jednostka_id']);
} elseif ($row['typ'] == 'O') {
$objs[] = new Organization($row['jednostka_id']);
} else {
die ("nieznany typ jednostki {$row['typ']} !"); }
}
return $objs;
} else {
}
}
}
przy wywolaniu jakiejkolwiek metody występuje błąd pobierania z bazy, natomiast samo połączenie z baza jest nawiązanie na samym początku oczwyiście z powodzeniem
podejrzewam ze chodzi o to, ze w ksiazce polaczenie bylo nawiązywane tak:
$hDB = pg_connect("host=localhost port=5432 dbname=przykladowa user=php password=php")
natomiast w przypadku mysql nawiazanie w ten sposob o ile wiem jest niemozliwe
jak sobie z tym poradzic?
pozdrawiam
?>