Czołem wszystkim. Raczkuję w OOP PHP. Mam 2 pytania. Pierwszy to błąd, którego nie rozumiem:
Parse error: syntax error, unexpected T_OBJECT_OPERATOR in C:\Program Files\WebServ\httpd-users\biuro\layout\classes\operacje_na_bazie.class.php on line 14
Linia 14 mojego kodu to: $zap=$uczestnik_zapytania(this->$QUERY);
$uczestnik_zapytania to obiekt klasy o tej samej nazwie. Wiem, że chodzi o operator obiekowy, ale gdy go usunę, to mam błąd, że odwołuję się do zmiennej $query, która nie jest obiektem.. no i jestem w kropce.
Poniżej przedstawiam mój pełny kod:
class operacje_na_bazie
{
public function wykonaj_zapytanie($query)
{
$uczestnik_zapytania=new uczestnik_zapytania();
$zap=$uczestnik_zapytania(this->$QUERY);
$polaczenie=new Polaczenie();
global $wyk_zap;
$this->wyk_zap = mysqli_init();
$wyk_zap=$polaczenie->lacz_z_baza("localhost", "root", "", "biuro_podrozy");
//--2
$uczestnik_zapytania=new uczestnik_zapytania();
$zapytanie=$uczestnik_zapytania->pobierz_liste_imprez("SELECT NAZWA_IMPREZY FROM IMPREZA;");
$result=$this->mysqli->query($this->query=$query);
return $result;
//return $mysqli->query($zapytanie);
//return $this->$wyk_zap->query($this->query=$query);
}
/*
Function: fetchArray
Purpose: Get array of query results
*/
function fetchArray($result) {
return $this->$myMySQLi->result->fetch_array();
}
/*
Function: close
Purpose: Close the connection
*/
function close() {
$this->$myMySQLi->close();
}
//--1
//define("BD", "biuro_podrozy");
//$polaczenie=new Polaczenie();
//$polaczenie->db='biuro_podrozy';
//$wynik=mysqli_query($this->BD, $this->query);
//return $wynik;
public function pobierz_z_bazy()
{
$this->wynik=$wynik;
$ile=$wynik->num_rows;
for ($i=0; $i<$ile; $i++)
{
$wiersz=mysqli_fetch_row($wynik);
}
return $wiersz;
}
}
Drugie pytanie: czy można skorzystać z poniższej klasy po to by pobierać dynamicznie wyniki zapytania. Nie wiem w jaki sposób dostać się do zmiennej $query, by jej użyć potem w osobnej klasy w funkcji mysql_query. Chciałbym by to było obiektowo zrobione. Jakieś podpowiedzi?
uczestnik_zapytania.class.php:
<?
class uczestnik_zapytania
{
public function pobierz_liste_imprez($query)
{
$query="SELECT NAZWA_IMPREZY FROM IMPREZA;";
return $query;
}