Abulia mcp php akcia. PHP _SELF na atribút akcie formulára. Sila vôle znížiť psychoterapiu

  • 03.11.2019




Sada akcií MCP Fusion ™ Photoshopkombinuje najviac
všestranné a pohodlné akčné sekvencie s nádhernou farbou
a čiernobiely prevod.
MCP Fusion ™ obsahuje 56 výkonných akcií Photoshopu,

Ďalej uvádzam preklad (bez opravy) s stránky s popismi :

MCP Fusion ™ obsahuje 56 výkonných akcií Photoshopu,
ktoré vám pomôžu dosiahnuť umelecký obraz, po ktorom túžite!

21 farieb postupnosti: jedným kliknutím
Farba ako základ všetkých farebných akcií, máte spoľahlivý,
efektívny pracovný tok pri každej akcii.
Akcie kombinácie a kombinácie farieb Color Fusion vám umožňujú kombinovať
farba hrá pre nekonečné variácie.

Osem akcií čiernobielych pracovníkov: jedným kliknutím čiernobielo,
ako základ všetkých čiernobielych akcií máte solídny pracovný postup
pri každej akcii. Akcie kombinácie B&W Fusion a zápasov dávajú
máte možnosť kombinovať čiernu a bielu pre neobmedzené kombinácie.

Sedem nápravných opatrení pre expozíciu:
pomoc pri oslňovaní,
tiene a celková svietivosť obrazu.

13 zosilňovačov so špeciálnym efektom: vrátane skutočnej akcie
nastavenie slnečnej erupcie a kyvadla, tónovanie.

Sedem akcií zameraných na kontrast a zostrenie: pre tlač a
web s možnosťami selektívneho použitia výsledkov.

Tento článok podrobne popisuje použitie premennej PHP _SELF.

Čo je premenná PHP _SELF?

Premenná PHP _SELF vráti názov a cestu k aktuálnemu súboru (vo vzťahu ku koreňu dokumentu). Túto premennú môžete použiť v atribúte akcie formulára. Mali by ste si byť vedomí aj niektorých odtieňov. Tieto nuansy samozrejme nemôžeme nijako ignorovať.

Pozrime sa na niekoľko príkladov.

Echo $ _SERVER ["PHP_SELF"];

1) Predpokladajme, že sa váš súbor php nachádza na nasledujúcej adrese:

Http://www.yourserver.com/form-action.php

V takom prípade bude premenná PHP _SELF obsahovať:

„/form-action.php“

2) Predpokladajme, že sa váš php súbor nachádza na tejto adrese:

Http://www.yourserver.com/dir1/form-action.php

PHP _SELF bude:

„/dir1/form-action.php“

PHP _SELF na atribút akcie formulára. Prečo ju tam potrebovali?

Typicky sa premenná PHP _SELF používa v atribúte action značky formulára. Atribút action určuje adresu, na ktorú sa po potvrdení pošle obsah formulára (užívateľ klikne na tlačidlo s type \u003d „odoslať“). Spravidla ide o rovnakú stránku, z ktorej formulár odišiel.

Ak však premenujete súbor, na ktorý odkazuje formulár, budete musieť premenovať názov súboru v atribúte action, inak formulár nebude fungovať.

Premenná PHP _SELF vám ušetrí zbytočné opravy, pretože adresa stránky sa vygeneruje automaticky na základe názvu súboru.

Povedzme, že máte súbor s formulárom form-action.php a chcete, aby sa formulár po potvrdení odoslal do rovnakého súboru. Zvyčajne píšu takto:

Môžete však použiť premennú PHP _SELF namiesto form-action.php. V takom prípade bude kód vyzerať takto:

" >

Kód pre form-action.php

Spojme skript s formou:

$ meno„; echo“
Nasledujúci formulár môžete znova zadať a zadať nový názov. ";)?\u003e ">

Najskôr sa vykoná kód v hornej časti stránky HTML. Prvý riadok kódu kontroluje, či bol formulár odoslaný alebo nie. Ak $ _POST ["odoslať"] existuje, potom sa vykoná IF konštrukcia (TRUE) a zobrazí sa meno zadané používateľom.

Ak premenná $ _POST ["submit"] neexistuje, potom formulár nebol odoslaný a podľa toho sa IF konštrukcia nevykoná (FALSE). Používateľské meno sa preto nebude zobrazovať.

Zlé body súvisiace s premennou PHP _SELF

Premenná PHP _SELF sa používa na získanie názvu a cesty aktuálneho súboru - dobrá, ale môžu ju použiť aj hackeri - zlá. Ak má vaša stránka PHP _SELF, môže užívateľ zadať lomítko (/) a napísať škodlivé XXS skripty.

Uvažujme príklad:

"method \u003d" príspevok "\u003e

Ak teraz používateľ pochádza z normálnej adresy URL, bude panel s adresou obsahovať niečo ako:
http://www.yourdomain.com/form-action.php
a vyššie uvedený kód sa dá prečítať takto:

V tomto prípade, ako vidíte, je všetko v poriadku.

Teraz sa pozrime na situáciu, keď používateľ začne „podvádzať“ pomocou panela s adresou:
http://www.yourdomain.com/form-action.php/%22%3E%3Cscript%3Ealert("xss")%3C
/ skript% 3E% 3Cfoo% 22

V takom prípade bude po spustení PHP váš kód vyzerať takto:

Sami vidíte, že do kódu bola pridaná značka skriptu a príkaz výstrahy. Po načítaní tejto stránky sa používateľovi zobrazí varovné okno. Toto je jednoduchý príklad toho, ako je možné využiť premennú PHP _SELF.

Medzi značky skriptu je možné pridať akýkoľvek kód JavaScript. Hacker môže tiež odkazovať na súbor JavaScript, ktorý bude umiestnený na inom serveri. Tento súbor pravdepodobne obsahuje škodlivý kód, prostredníctvom ktorého môže hacker meniť globálne premenné a poslať formulár na inú adresu, aby zachytil vstup používateľa.

Ako sa vyhnúť PHP_SELF problémom

Problémom sa dá vyhnúť pomocou funkcie htmlentities (). Prezrite si kód formulára, kde je prítomná funkcia htmlentities ().

"method \u003d" príspevok "\u003e

Funkcia htmlentities () prevádza všetky možné znaky na ich zodpovedajúce entity HTML. Teraz zlyhá pokus o obídenie premennej PHP _SELF a výsledok vloženia škodlivého kódu bude vyjadrený takto: