Napisane: 29.12.2023, 01:07:24 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Wykrzyknik to zaprzeczenie == nie prawda że ... Skoro kod wchodzi Ci do wewnątrz ifa to znaczy, że $_SESSION['logged'] jest pusty/nieustawiony/false. Może nie startujesz sesji przed sprawdzeniem, może masz tylko ustawioną zmienną ale bez wartości, przyczyn może być wiele. |
Forum: Przedszkole · Podgląd postu: #1262203 · Odpowiedzi: 3 · Wyświetleń: 343 |
Napisane: 25.10.2023, 13:05:42 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Odnośnie zmian w sortowaniu: https://bugs.php.net/bug.php?id=69158 W PHP od 7 przekazywane parametry są w innej kolejności niż w PHP 5 i poniżej. Także Twój kod powinien porównywać te parametry bez względu na ich kolejność. Odnośnie Twojego pierwszego kodu to ma błąd - drugie porównanie porównuje $e2 do zera bez modulo
Kod Output for 5.6.40 | released 2019-01-10 | took 18 ms, 16.62 MiB 8 | 7 6 | 8 8 | 3 9 | 8 4 | 8 8 | 1 0 | 8 8 | 5 2 | 8 6 | 2 6 | 4 0 | 6 2 | 0 4 | 2 3 | 1 3 | 5 7 | 3 9 | 3 5 | 3 9 | 5 7 | 9 5 | 7 Array ( [0] => 0 [1] => 2 [2] => 4 [3] => 6 [4] => 8 [5] => 1 [6] => 3 [7] => 5 [8] => 7 [9] => 9 ) Kod Output for 7.4.33 | released 2022-11-03 | took 23 ms, 14.25 MiB 5 | 7 7 | 3 5 | 3 7 | 1 5 | 1 3 | 1 7 | 8 5 | 8 3 | 8 1 | 8 7 | 2 5 | 2 3 | 2 1 | 2 8 | 2 7 | 0 3 | 0 8 | 0 0 | 2 7 | 4 3 | 4 8 | 4 0 | 4 2 | 4 7 | 9 9 | 6 5 | 6 1 | 6 4 | 6 8 | 6 Array ( [0] => 0 [1] => 2 [2] => 4 [3] => 6 [4] => 8 [5] => 1 [6] => 3 [7] => 5 [8] => 7 [9] => 9 ) |
Forum: Przedszkole · Podgląd postu: #1262022 · Odpowiedzi: 2 · Wyświetleń: 469 |
Napisane: 14.12.2022, 22:56:48 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Ok, dzięki. Ale to po co wtedy autor tego kodu jeszcze rzutuje typ int na $number1 i $number2? Przecież nie ma możliwości żeby wyszło coś innego niż int. W tym kodzie tak, ale generalnie wymuszenie typów wejściowych nie implikują typu wyściowego. Zawsze może w metodzie coś zmodyfikować typ zmiennych.
|
Forum: Przedszkole · Podgląd postu: #1260336 · Odpowiedzi: 6 · Wyświetleń: 274 |
Napisane: 16.06.2022, 11:02:53 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Użyj GROUP BY na `uczen`.`id_ucznia` plus GROUP_CONCAT na kolumnę z ocenami. |
Forum: Bazy danych · Podgląd postu: #1259304 · Odpowiedzi: 1 · Wyświetleń: 2 051 |
Napisane: 24.04.2022, 14:08:35 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Zwykle CSSy się buduje z jakiś SASS/SCS, buildery oparte są o JS, mają zwykle taki ficzer wbudowany albo łatwy do dołączenia. Jeśli nie korzystasz z czegoś takiego, to tak czy inaczej w PHP jest to łatwe do osiągnięcia, bo przecież są gotowe funkcje jak https://www.php.net/manual/en/function.hash-file.php czy też https://www.php.net/manual/en/function.sha1-file.php Cytat I pytanie, generować nowe pliki CSS przez PHP czy da się to zrobić na poziomie revite rule w htaccess Generalnie to odwrotnie - masz zmienione pliki CSS, zmieniasz ich nazwę i podmieniasz ją w plikach HTML. |
Forum: Przedszkole · Podgląd postu: #1258836 · Odpowiedzi: 13 · Wyświetleń: 637 |
Napisane: 22.04.2022, 21:00:56 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Rozmiar to nie jest dobry wyznacznik. Możesz dodać 100 znaków i 100 innych usunąć i rozmiar zostanie ten sam, a zawartość się będzie różnić. Hash z zawartości jest najpewniejszy. |
Forum: Przedszkole · Podgląd postu: #1258831 · Odpowiedzi: 13 · Wyświetleń: 637 |
Napisane: 20.04.2022, 20:20:02 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
To tak, żeby cache miał sens, to nazwa zasobu musi być unikalna (w nazwie pliku hash z zawartości). Wtedy można cache ustawić na bardzo długi czas i jeśli zmieni się zawartość, hash się przeliczy i będzie nowy link. Czyli de facto musisz tu mieć jakiś builder wpleciony. Krok po kroku to wygląda tak: 1. Budujesz całą stronę (html, js, css). 2. Dla assetów (js, css) wyliczasz ich hashe z zawartości pliku. 3. Zmieniasz nazwę (np z main.css, main.js na odpowiedniki z hashem w nazwie => main-a0a9af.css main-8a98asdf.js). 4. We wszystkich plikach HTML podmieniasz linki z main.css na main-a0a9af.css i main.js na main-8a98asdf.js Cache plików HTML pownien być krótki, tak aby przeglądarka dość często pobierała samą stronę, natomiast assety można w takim przypadku wrzucać do cache nawet np na rok, albo w sumie też do nieskończoności ;-) Jeśli nastąpią zmiany w treści, wygeneruje się nowy hash, nowa nazwa pliku => przeglądarka pobierze nowe pliki. CDN może serwować nagłówki z serwera źródła. Cache na poziomie serwera www można zrobić na kilka sposobów, w zależności od wersji, dostępnych modułów. Przykłady dla Apache:
|
Forum: Przedszkole · Podgląd postu: #1258805 · Odpowiedzi: 13 · Wyświetleń: 637 |
Napisane: 19.04.2022, 18:12:28 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Mam problem z cachowaniem CSS oraz z CSP. O ile kiedyś rozwiązałem problem z pierwszym, a teraz mi się nie udaje to o tym drugim pierwszy raz słyszę. Możesz nakreślić jaki ma związek CSP z cachowaniem CSS? Używam hostingu na domena (kropka) pl i wydaję mi się że używają protokołu http w wersji 1.0 bo htaccess nie pozwala na cachowanie CSS. Błąd się nie poprawia. Cache CSS nie ma związku z protokołem HTTP (no i raczej jest to HTTP/1.1). Może masz zablokowane niektóre dyrektywy jakich możesz użyć w swoim htaccess. A jaki błąd się pojawia? Mam certyfikat SSL i nie ma tam opcji włączenia http2. Ogólnie to chyba pozostaje zmienić hosting. Samo posiadanie certyfikatu nie daje z automatu http2, ale jest wymagane. Http2 trzeba włączyć w serwerze www i w danym vhoście (o ile nie zostanie ustawione domyślnie dla wszystkich). Jeśli na hostingu tego nie masz, nie możesz włączyć w panelu i po kontakcie z supportem też nie - to tak, najwyższy czas się przenieść do kogoś, kto ogarnia. |
Forum: Przedszkole · Podgląd postu: #1258790 · Odpowiedzi: 13 · Wyświetleń: 637 |
Napisane: 14.04.2022, 14:47:35 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Wydaje się, że mylisz tu dwie rzeczy. Dołączenie pliku PHP aby skorzystać z zawartych w nim danych jako obiekty PHP z zapisem pliku tekstowego. Załóżmy, że Twój plik connect.php zawiera konfigurację połączenie z bazą danych:
Teraz, gdy zrobisz include takiego pliku do zmiennej możesz łatwo w kodzie korzystać z tych wartości:
Natomiast, jeśli byś chciał zapisać nowe ustawienia do pliku, to musisz po prostu odtworzyć całą zawartość w formie zwykłego tekstu, czyli:
|
Forum: PHP · Podgląd postu: #1258713 · Odpowiedzi: 6 · Wyświetleń: 744 |
Napisane: 16.02.2022, 18:38:39 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
A czy potrzebujesz aż przekierowania? Nie lepiej XHR z zapytaniem czy jest zalogowany czy nie. Możesz przecież mieć info o tym w bazie wraz z fingerprintem wyliczonym na tych samych parametrach. |
Forum: Hydepark · Podgląd postu: #1258102 · Odpowiedzi: 10 · Wyświetleń: 3 152 |
Napisane: 16.11.2021, 18:06:01 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Tak SUBSTRING() z LOCATE() plus pewnie jeszcze REVERSE() i LENGTH() da radę wyciągnąć ciąg po ostatniej kropce. Chociaż łatwiej będzie z SUBSTRING_INDEX():
Kod tld ile pl 1 eu 2 net 1 com 2 |
Forum: MySQL · Podgląd postu: #1257101 · Odpowiedzi: 2 · Wyświetleń: 2 129 |
Napisane: 27.08.2021, 10:29:02 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Użyj array_filter()
|
Forum: Przedszkole · Podgląd postu: #1256422 · Odpowiedzi: 2 · Wyświetleń: 554 |
Napisane: 23.08.2021, 08:36:23 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
<Directory> to dyrektywa pliku konfiguracyjnego vhosta (lub samego serwera) http://httpd.apache.org/docs/2.4/mod/core.html#directory więc nie wrzucisz tego w .htacess. |
Forum: Apache · Podgląd postu: #1256392 · Odpowiedzi: 4 · Wyświetleń: 3 450 |
Napisane: 20.08.2021, 08:16:57 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Jak masz error 500 to masz też wiadomość gdzie on nastąpił - albo wraz z odpowiedzią (w środowisku dev) albo w logach na serwerze. Log będzie dokładny, będzie w nim napisane w którym pliku i w której linii, |
Forum: Przedszkole · Podgląd postu: #1256369 · Odpowiedzi: 3 · Wyświetleń: 408 |
Napisane: 4.08.2021, 11:24:57 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
|
Forum: PHP · Podgląd postu: #1256273 · Odpowiedzi: 2 · Wyświetleń: 861 |
Napisane: 17.04.2021, 13:10:37 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Pewnie lokalnie masz branch master (bo to domyślny gita), a na GitHub domyślny stał się main (ze względu na głupie oskarżenia o rasizm, że skoro jest master to musi być slave, a slavery i BLM itd). Także sprawdź lokalny branch (git branch). Jeśli masz master, to przełącz się (stwórz nowy, zmień nazwę) na main. Lub na GH zmień na master. |
Forum: Kontrola i zarządzanie projektami · Podgląd postu: #1255658 · Odpowiedzi: 2 · Wyświetleń: 3 714 |
Napisane: 17.03.2021, 08:51:54 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Nie bardzo jeśli to będzie np UUID4, np: Kod 04de6b6e-9390-44fc-8b63-db81d691471f |
Forum: PHP · Podgląd postu: #1255417 · Odpowiedzi: 4 · Wyświetleń: 1 047 |
Napisane: 9.11.2020, 23:19:18 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
A jak dodajesz PHPMailera do projektu? Przez Composera czy osobno ściągałeś wszystkie pliki i ręcznie je załączasz? |
Forum: PHP · Podgląd postu: #1253631 · Odpowiedzi: 11 · Wyświetleń: 2 796 |
Napisane: 9.11.2020, 10:52:20 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Spokojnie możesz się łączyć do Gmaila z PHPMailera, tylko musisz uderzać na porty TLS szyfrowane a w Gmailu włączyć SMTP (domyślnie wyłączone), ewentualnie jeszcze ustawić, aby pozwalał na mniej bezpieczne aplikacje. Czyli host: smtp.gmail.com, port: 587 lub 465 i jazda. Oczywiście ustawiasz podstawowe parametry połączenia SMTP z autoryzacją, m.in:
Masz też na GH przykład łączenia do Gmaila: https://github.com/PHPMailer/PHPMailer/blob...ples/gmail.phps |
Forum: PHP · Podgląd postu: #1253617 · Odpowiedzi: 11 · Wyświetleń: 2 796 |
Napisane: 20.10.2020, 18:59:07 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Co do porównywania null !== $var jest coś takiego jak is_null($var). Poza tym, dobrze zapoznać się z tabelką na https://www.php.net/manual/en/types.comparisons.php żeby nie mieć wątpliwości co daje jakie wyniki. |
Forum: Przedszkole · Podgląd postu: #1253311 · Odpowiedzi: 11 · Wyświetleń: 826 |
Napisane: 16.10.2020, 16:38:19 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Bo na porcie 8083 masz inną aplikację, która ma swoją konfigurację. Odnajdź vhosta do tamtej aplikacji i tam przepisz ścieżki tego certyfikatu LE. |
Forum: Serwery WWW · Podgląd postu: #1253264 · Odpowiedzi: 2 · Wyświetleń: 5 062 |
Napisane: 21.08.2020, 12:30:05 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Użyj wbudowanego https://www.php.net/manual/en/book.ssh2.php lub https://github.com/phpseclib/phpseclib |
Forum: PHP · Podgląd postu: #1252538 · Odpowiedzi: 1 · Wyświetleń: 934 |
Napisane: 4.06.2020, 11:47:10 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Co do modułów to możesz je wszystkie mieć na serwerze i włączać je w konfiguracji dla danego klienta. Jeśli są to jakieś zewnętrzne moduły, które klient może wgrać, to uploadujesz je do folderów per klient - każdy ma swój. Co do bazy - to zależy :-) Jeśli aplikacja jest mała, danych nie ma za dużo to możesz spokojnie to trzymać w jednej dodając wszędzie identyfikator klienta. Jeśli jest większa, więcej danych to osobna baza będzie lepszym rozwiązaniem. Kwestia aktualizacji jest moim zdaniem pomijalna - bo to obojętne czy skrypt uruchomisz dla jednej wielkiej bazy czy dla wielu mniejszych. Mniejsze nawet możesz podzielić czasowo, uruchomić w kilku procesach i finalnie wyjdzie nawet szybciej (no i aktualizacja u jednego klienta nie spowalnia pracy pozostałych). Co do podziału klient - nowy VPS to też ma sens. Ale jak wyżej - wszystko zależy od przypadku. Jeśli np w aplikacji masz różne plany, z różnymi parametrami wydajnościowymi, albo klient płaci za faktyczne zużycie to może się bardziej opłacać (czy tez być sprawiedliwiej) rozdzielać klientów na osobne maszyny. Wtedy działania jednego klienta nie wpływają w ogóle na innych. Wszystkie działania administracyjne mogą być odseparowane, jeden klient nie nadużyje zasobów przydzielonych dla innego klienta. Jedynie tutaj proponowałbym pójść w stronę kontenerów niż osobnych VPSów - będzie wygodniej i raczej taniej. |
Forum: PHP · Podgląd postu: #1251516 · Odpowiedzi: 4 · Wyświetleń: 868 |
Napisane: 2.06.2020, 10:30:08 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
|
Forum: PHP · Podgląd postu: #1251491 · Odpowiedzi: 1 · Wyświetleń: 643 |
Napisane: 16.05.2020, 13:01:10 | |
Grupa: Zarejestrowani Postów: 2 592 Dołączył: 12.03.2007 Ostrzeżenie: (0%) |
Jak widzisz przed deklaracją namespace masz jeszcze jakiś napis "Subject", sprawdź też kodowanie pliku czy nie jest UTF-8 z BOM. |
Forum: PHP · Podgląd postu: #1251217 · Odpowiedzi: 2 · Wyświetleń: 1 202 |
Nowe odpowiedzi Brak nowych odpowiedzi Popularny temat (Nowe) Popularny temat (Brak nowych) |
Sonda (Nowe) Sonda (Brak nowych) Zamknięty temat Przeniesiony temat |
Wersja Lo-Fi | Aktualny czas: 23.04.2024 - 22:23 |