![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 16.12.2020 Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Mam problem z warunkiem spawdzającym uprawnienia użytkownika do wykonania funkcji usunięcia zamówienia, który ma realizować poniższy kod:
Na początku sprawdzam czy funkcja została "nakarmiona" numerem id zamówienia (order_id) a później czy zalogowany użytkownik jest adminem ($_SESSION['user_type'] == 1) albo czy jest autorem kasowanego zamówienia ($_SESSION['userid'] == $order['user_id']). Jeżeli któryś z tych warunków jest prawdziwy funkcja powinna przejść dalej. W moim przypadku mimo tego warunku użytkownik albo kasuje wszystko albo admin nie może kasować. Nie wiem co jest przyczyną takiego działania. Czy ktoś może mi wytłumaczyć co robię źle? Pozdrawiam Ten post edytował Adym 8.02.2021, 10:25:58 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
to jest zbedne
$order_id = $this->order_id; Dzialaja bezposrednio na $this->order_id return false leci tylko w okreslonym wypadku. Po drodze jest cala masa IFow, ktore nie zwracaja nic. Zamiast ten else co dodales, daj poprostu return false na samym koncu funkcji Unikaj zagniezdzen. Zamiast kobylastdego IF if($this->order_id) { ....... } daj tak if(!$this->order_id) { return false; } ...... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 16:29 |