Witam w załączniku dodałem plik z zadaniem i potrzebuje pomocy w podpunkcie 3,4.
3 podpunkt zacząłem lecz mam problemy screen także w załączniku.
a co do 4 nie mam pomysłu
A jaki to problem masz w zadaniu 3? Bo ja błąd widzę, ale chciałbym się dowiedzieć co wg Ciebie nie działa
axelbest napisał(a):
A jaki to problem masz w zadaniu 3? Bo ja błąd widzę, ale chciałbym się dowiedzieć co wg Ciebie nie działa
Jak poprawnie stworzyć obiekt wraz z metodami w php bo dopiero zaczynam obiektowość i mogę walić błędy składniowe.
Wg mnie metoda dodajOsobe jest zbędna, zrób konstruktor z kilkoma parametrami i przy tworzeniu obiektu przekazuj je od razu (od tego jest właśnie konstruktor). Wklej potem kod - zobaczę czy dobrze to zrobiłeś
axelbest napisał(a):
Wg mnie metoda dodajOsobe jest zbędna, zrób konstruktor z kilkoma parametrami i przy tworzeniu obiektu przekazuj je od razu (od tego jest właśnie konstruktor). Wklej potem kod - zobaczę czy dobrze to zrobiłeś
class osoba{
public $imie;
public $nazwisko;
public $wiek;
public function __construct($name,$nazwisko,$wiek){
$this->imie=$name;
$this->nazwisko=$nazwisko;
$this->wiek=$wiek ;
}
public function pokazOsobe(){
echo $this->imie;
echo " ";
echo $this->nazwisko;
echo " ";
echo $this->wiek;
}
}
$osoba=new osoba('Piotr','Moje Nazwisko','21');
$osoba->pokazOsobe();
```php
tak zrobiłem zdaje sie okej ale jak zrobić 4 zadanie :)
class osoba{
public $dane=Array();
public function __construct($name,$nazwisko,$wiek){
$this->dane['imie']=$name;
$this->dane['nazwisko']=$nazwisko;
$this->dane['wiek']=$wiek ;
}
public function pokazOsobe(){
echo $this->dane['imie'];
echo " ";
echo $this->dane['nazwisko'];
echo " ";
echo $this->dane['wiek'];
}
}
$osoba=new osoba('Piotr','Moje Nazwisko','21');
$osoba->pokazOsobe();
poprawione
class Osoba
{
private $dane = ['imie','nazwisko','wiek'];
public function dodajOsoba()
{
$daneUzupelniajace=['Piotr','nazwisko',21];
$this->dane=array_combine($this->dane,$daneUzupelniajace);
return $this;
}
public function pokazOsoba()
{
print_r($this->dane);
}
}
$osoba=new Osoba();
$osoba->dodajOsoba()->pokazOsoba();
To zadanie z punktu widzenia logiki jest bezsensu. Po co tworzyć na starcie klucze a potem je uzupełniać ? rozwiązań tego jest masę, można np też wypełnić klucze pustą wartością i potem przypisać w metodzie dodajOsobe.. imo widać, że zadanie nieprzemyślane przez nauczyciela.
Zauważ, jaki błąd robisz. Nie czytasz polecenia. pisze w nim, żeby utworzyć pole dane **juz **z kluczami a nie dopiero je tworzyć podczas przypisywania wartości.
w 4 musisz po prostu użyć rekurencji. Imo kolejne kretyńskie zadanie, bo mając parent_id można w warunku ustawić Where is_parent is null łącząc jonem je ze sobą i otrzymasz to samo bez zabijania serwera.
sprawdz https://stackoverflow.com/questions/20215744/how-to-create-a-mysql-hierarchical-recursive-query