[PHP] problem z $this |
[PHP] problem z $this |
30.12.2021, 22:14:06
Post
#1
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) |
Witam,
Nie wiem dla czego działa mi $this na class mam taki komunikat. Fatal error: Uncaught Error: Using $this when not in object context in /home/twoj-host/web/test.twoj-host.eu/public_html/wp-content/plugins/wp-zmarli/inc/function/function_licz.php:14 Stack trace: #0 /home/twoj-host/web/test.twoj-host.eu/public_html/wp-content/plugins/wp-zmarli/admin/zmarli_list.php(72): liczenie::count_sql() #1 /home/twoj-host/web/test.twoj-host.eu/public_html/wp-content/plugins/wp-zmarli/inc/instalation.php(78): require_once('/home/twoj-host...') #2 /home/twoj-host/web/test.twoj-host.eu/public_html/wp-includes/class-wp-hook.php(303): wp_zmarli->list_zmarli() #3 /home/twoj-host/web/test.twoj-host.eu/public_html/wp-includes/class-wp-hook.php(327): WP_Hook->apply_filters() #4 /home/twoj-host/web/test.twoj-host.eu/public_html/wp-includes/plugin.php(470): WP_Hook->do_action() #5 /home/twoj-host/web/test.twoj-host.eu/public_html/wp-admin/admin.php(259): do_action() #6 {main} thrown in /home/twoj-host/web/test.twoj-host.eu/public_html/wp-content/plugins/wp-zmarli/inc/function/function_licz.php on line 14 W witrynie wystąpił błąd krytyczny. W wiadomości wysłanej na adres e-mail administratora strony umieszczono dodatkowe instrukcje a tak wygląda function count_sql()
A tak wygląda główna classa
I próbowałem już wszystkiego co robię źle??. Pomóżcie. |
|
|
31.12.2021, 12:10:07
Post
#2
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) |
Cześć,
ten include nie jest tam potrzebny i wgl. robisz go w złym miejscu Dodaj jakieś typowanie bo wygląda to średnio.. szybka modyfikacja:
Ten post edytował aras785 31.12.2021, 12:10:26 |
|
|
31.12.2021, 16:52:48
Post
#3
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) |
Cześć, ten include nie jest tam potrzebny i wgl. robisz go w złym miejscu Dodaj jakieś typowanie bo wygląda to średnio.. szybka modyfikacja:
Wszystko ok, ale jak mam sprawdzanie w innym katalogu niż katalog główny mojej wtyczki, wszystkie select mam w pliku function_licz.php a wiem, że da się połączyć z głównym katalogiem, żeby pobierało mi informacje bazy danych to znaczy nazwy np. users, info_cmentarz itp. Ale nie mogę tego rozgryźć czemu nie działa. Ten post edytował pawel06281990 31.12.2021, 18:09:19 |
|
|
31.12.2021, 17:27:13
Post
#4
|
|
Grupa: Zarejestrowani Postów: 286 Pomógł: 46 Dołączył: 10.01.2016 Ostrzeżenie: (0%) |
Wykonaj akcję A();, pobierz dane i przekieruj na akcję B();.
|
|
|
31.12.2021, 18:07:44
Post
#5
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) |
Wykonaj akcję A();, pobierz dane i przekieruj na akcję B();. cały czas próbuje to zrobić mam coś takiego tak wygląda główny plik
a tak wygląda plik, do którego chce przekierować działanie $this
i nadal nie działa. |
|
|
31.12.2021, 18:34:00
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Musisz wywołać gdzieś check_w_base zamiast wp_zmarli
-------------------- |
|
|
31.12.2021, 19:08:11
Post
#7
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) |
Musisz wywołać gdzieś check_w_base zamiast wp_zmarli Masz na myśli że mam wywołać to tak
czy tak
Mi działa ta metoda
|
|
|
31.12.2021, 19:27:22
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 365 Pomógł: 1114 Dołączył: 30.08.2006 Ostrzeżenie: (0%) |
Nie, najprawdopodobniej zamiast tego
global $wpdb; $wp_zmarli = new wp_zmarli($wpdb); -------------------- |
|
|
31.12.2021, 19:42:04
Post
#9
|
|
Grupa: Zarejestrowani Postów: 286 Pomógł: 46 Dołączył: 10.01.2016 Ostrzeżenie: (0%) |
|
|
|
1.01.2022, 10:45:02
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 836 Pomógł: 226 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
Paweł,
spójrz na twój komunikat z błędem (co prawda już go nie masz jak czytam) ale jasno ci mówi, że $this nie jest obiektem. Druga rzecz, wskazałeś tam linię z błędami, ale nam nie podałeś od razu która to linia w kodzie w głównym wątku. Możemy tylko zgadywać, gdzie jest problem. Tak jak ktoś powiedział, używaj typowania, bardzo wyjaśnia czytelność kodu oraz nazywanie zmiennych np: w PHP dobrym obyczajem jest stosowanie camelCase przy nazywaniu zmiennych i metod. private/public/protected oznacza zasięg tych zmiennyc, więc warto z nich korzystać. |
|
|
1.01.2022, 10:45:02
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 836 Pomógł: 226 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
Paweł,
spójrz na twój komunikat z błędem (co prawda już go nie masz jak czytam) ale jasno ci mówi, że $this nie jest obiektem. Druga rzecz, wskazałeś tam linię z błędami, ale nam nie podałeś od razu która to linia w kodzie w głównym wątku. Możemy tylko zgadywać, gdzie jest problem. Tak jak ktoś powiedział, używaj typowania, bardzo wyjaśnia czytelność kodu oraz nazywanie zmiennych np: w PHP dobrym obyczajem jest stosowanie camelCase przy nazywaniu zmiennych i metod. private/public/protected oznacza zasięg tych zmiennyc, więc warto z nich korzystać. |
|
|
3.01.2022, 13:59:01
Post
#12
|
|
Grupa: Zarejestrowani Postów: 281 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) |
I nadal mam ten problem z $this a zrobiłem tak jak mówiliście.
Tak wygląda plik sprawdzający czy data minęła.
EDIT: Zadziałało mi to tak jak chciałem trochę się pomęczyłem, ale mam teraz jak powinno być. A to rozwiązanie które znalazłem
i dodałem to
I mi zadzialało. Ten post edytował pawel06281990 3.01.2022, 15:15:08 |
|
|
Wersja Lo-Fi | Aktualny czas: 26.04.2024 - 11:26 |