Diskuze: Pomoc
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 20 zpráv z 20.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
používáš někde proměnou s indexem 'email', kterej neexistuje. Nejlepší bude když sem dáš kód
Spíš to ale bude index v nějakym poli, ne přímo proměná, takže něco jako $pole['email'].. Projdi si kód a zkontroluj jestli to máš někde inicializovaný nebo to vyřeš tak, jak psal kolega
Prostě používáš proměnné, které jsi ještě nevytvořil. Tedy aby ti to neříkalo, že nemáš nadefinované proměnné, musíš je nadefinovat. Stačí úvodem vložit nulovou hodnotu. Třeba
$email = ""; $pass = "";
Nevím zda se to bere jako chyba, že tohle web ukazuje, osobně můj web "ukazuje to samé" a je to samozřejmě přesně tím jak je výše napsáno. Ale je běžné mít tyhle notifikace/chyby úplně vypnuté už jen kvůli bezpečnosti. Pakliže se nepletu. Vypnutí se dá provést běžně v php.ini a nebo přímo v htaccess.
Osobně by mě zajímalo zda je to brané jako něco špatně, nebo zda je to běžná věc. Přijde mi hloupost proměnnou naplnit jen kvůli notifikaci, která není chybou nýbrž jen informací, že by se mohlo jednat o zbytečnou proměnnou.
A nepřijde ti také jako hloupost používat proměnou, která vlastně
vůbec neexistuje či nebyla zatím vytvořena?
Podle mě je chyba používat něco co vlastně není.
Hloupost mi to nepřijde v případě, že se na naplnění teprve čeká např. když jde o session. Nebo v případě propojení a využívání stejných proměnných v případě propojení napříč projektem, tak ne vždy musí dojít k naplnění. A zbytečné to jen kvůli notifikaci naplňovat.
Ano i za pomocí PHP to může jít nastavit.
http://php.net/…eporting.php
Je hloupé to neošetřovat v případě, když vím, že existuje možnost, že se proměnná nemusí naplnit..
V tomto případě by notifikace nemusela vůbec vzniknout.
To souhlasím, že je lepší to ošetřit, ale asi mi to v některých případech přijde zbytečné a někdy kod na víc. Právě proto, že vedlejší účinek mít může jak inicial../neiniciali... Nebo aspoň nenapadá mě jediný příklad kde by to byl opravdu problém a byla by to chyba,nebo by tím zanikala bezpečnost.
premennu netreba vzdy naplnovat, hlavne u formularoch sa to deje, ked
prvykrat si otvoris stranku, udaje nie su este vyplnene, premenne nie su este
inicializovane, cize ani naplnene, ale po odoslani formulara uz dojde k
inicializacii a naplneni premien, tu staci podmienka if (isset ($var1,
$var2,...)) {...}
cize ak pri spracovani skriptu narazi na tuto podmienku, tak sa otestuje, ze ci
su nastavene (definovane) premenne $var1 a $var2, pripadne aj dalsie, ak nie su,
tak sa nevykona kod v zlozenych zatvorkach a bude sa pokracovat dalsim riadkom,
ale akonahle uz su tie premenne definovane, tak sa automaticky vykona kod v
zlozenych zatvorkach
Já však nezastával názor, že proměnnou vždy naplnit pokud není definovaná.
ani definovat premenu nie je treba - vid napr. osetrenie pomocou isset, kde sa testuje, ze ci je premenna nastavena, cize existuje
Kód by měl vypadat tak, aby i při zapnutém debugu nehodil žádnou chybu
či upozornění. Stále nevím co na tom nechápete.
Funkce isset neexistuje jen tak, když je možnost ji použít
proč ji nepoužít?
Argumentace, že kód bude delší či nepřehledný je blbost..
Řešení NouF k tomuto tématu je nejideálnější.
Zobrazeno 20 zpráv z 20.
