Coimpiutairean, Bathar-bog
PHP cruinneil caochlaideach ann an gnìomh. Dèan cruinneil caochlaideach ann PHP
Gus a chruthachadh làn làraich, aig a bheil feartan farsaing feumaidh tu a bhith eòlach air tòrr. Ach dè a nì e fìor shònraichte - tha e PHP. Tha an cruinne caochlaideach ann an cànan prògramaidh nach eil air a chleachdadh gu math tric, ach uaireannan a-mach ciamar a tha e ag obair, uaireannan tha e riatanach. 'S e sin a' sgrùdadh dè a tha e agus mar a tha e ag obair, tha sinn a 'dol a dhèanamh anns an aiste seo.
farsaingeachd
Le bhith a 'default, tha iad air an cuingealachadh ri ionadail gnìomh farsaingeachd. Agus ciamar a dhèanadh caochlaideach fhaicinn faidhlichean ann a chrìochan, a dh'fhaodadh barrachd agus a 'cleachdadh? Gus seo a choileanadh, agus tha e toirt seachad ann an PHP cruinneil caochladairean.
Tha na prėomh "cruinne"
Às dèidh a 'buileachadh a leithid de chomharra, thèid an dàta a bhith comasach air obair le faidhle sam bith. Ma àiteigin Tha iomradh ann air seo caochlaideach, a 'phrògram an-còmhnaidh air aire an t-saoghail dreach.
Carson a leithid neònach chànan? Tha an fhìrinn gu bheil aig an aon àm, dh'fhaodadh gum bi tionndaidhean ionadail. Ach bidh iad rim faotainn a-mhàin airson an fheadhainn far a bheil faidhlichean ainmeachadh. Agus airson a h-uile a 'chòrr Bidh an cruinne caochladairean PHP clas. Uime sin feumaidh tu a bhith faiceallach. Agus nach robh teagamh sam bith, seo eisimpleir de na tha iad a 'coimhead coltach: cruinneil a.
Oir ma aon faidhl Bidh cothrom aig ghrunn chaochladairean, bheir e fa'near iad gu strì. Ach chan urrainn dhuinn a ràdh cinnteach - ionadail no cruinneil caochlaideach a leughadh no gu tur a 'fàilligeadh. Mar sin, ma tha e a chlàradh ann an gnìomh, bu chòir gum biodh duilgheadas sam bith. Ach a 'cleachdadh caochlaideach airson a Crìochan gu bhith na dhuilgheadas. Uime sin, structar a 'sgrìobhadh a' code riatanach gus sùil gheur a chumail agus a dhèanamh cinnteach gu bheil àite a th 'ann fiù' s riatanach do na thuirt dh'èirich còmhstri.
Another embodiment an clàradh
Ro-mhìnichte / superglobals
Anns gach cànan prògramaidh tha cuid ainmean a tha air chùmhnant airson cuid de na dleastanasan aca. Uime sin, a chruthachadh ann an PHP cruinneil caochladairean an aon ainm nach bi ag obair.
Tha seo an cànan prògramaidh Tha feartan aca fhèin. Mar sin, tha e cudromach gu bheil an ro-mhìnichte caochladairean seo nach eil a stàladh "super", is e sin, chan eil iad ri fhaotainn anns gach àite. Ciamar a gheibh mi ceart? Airson ro-mhìnichte caochladairean bha ri fhaotainn aig cuid de sgìre ionadail, feumaidh e bhith air fhoillseachadh mar a leanas :. Global «Caochlaideach" Tha e coltach a bhith an aon rud 'sa mus innse, ceart? Tha e fior, ach chan eil gu math. Leig dhuinn coimhead air mar-thà "a 'sabaid" eisimpleir:
- cruinneil $ HTTP_POST_VARS;
- echo $ HTTP_POST_VARS [ 'ainm'].
Tha thu a 'faireachdainn an diofar eatorra? Cuimhnich gur ann PHP cruinneil caochladairean, chan eil sin a bhith air an cleachdadh an taobh a-staigh dleastanas. Faodaidh e fiù 's air a cur ann an fhaidhle a tha air a ghabhail a-steach ann.
Oifigeil is sàbhailteachd
Mar a chì sibh, ann an PHP a chruthachadh air feadh na cruinne caochlaideach chan e trioblaid. Ach a th 'ann sònraichte sam bith a tha càirdeach ceanglaichean? Tha, dh'fhaodadh gum bi dùil giùlan nuair a cleachdadh air feadh na cruinne. Ach ron sin, beagan backstory.
Ann an dreach Riaghailt 4.2.0 le default register_globals atharrachadh bho air-stàite gus dheth. Airson luchd-cleachdaidh a 'chuid as motha, chan eil seo fìor chudromach, ach ann an dìomhain. Às dèidh na h-uile, tha e dìreach a 'toirt buaidh air tèarainteachd an leasachadh bathar. Ma dh'fheumas tu a dhèanamh caochlaideach air feadh na cruinne, PHP-stiùiridh air paramadair seo nach eil gu dìreach a 'toirt buaidh. Ach, mearachdach a chleachdadh mar-thà a 'cruthachadh eisimpleir tèarainteachd.
Mar sin, ma register_globals air a tionndadh air, mus deach a chur gu bàs an sgrìobhte code thòiseachadh na diofar chaochladairean a tha a dhìth, mar eisimpleir a chur HTML-foirmean. Mar sin, chaidh co-dhùnadh a thionndadh dheth.
Carson a tha an staid seo ann Stiùireadh PHP cruinneil caochlaideach mòr an urra? Tha an fhìrinn a tha sin nuair a bhios an staid-leasachaidh a dhèanamh nach eil an-còmhnaidh le cinnt gum b 'urrainn dhaibh fhèin a fhreagairt air a' cheist às a thàinig e. Air an aon làimh, tha e nas fhasa a bhith a 'sgrìobhadh an còd. Ach air an taobh eile - tha e tèarainteachd. Mar sin, gus mearachdan, cho math ri dàta a 'measgachadh agus Stiùireadh air a bhith air a chur à comas.
Leig a-nis a 'coimhead air nach / code tèarainte, a thuilleadh air mar a lorg cùisean far a bheil an naidheachd mu na cruinne PHP caochlaideach, nochaidh oidhirpean aig atharrachadh le dàta. Tha seo deatamach gus a chruthachadh chan ann a mhàin àlainn, ach cuideachd a bhith ag obair mean air mhean làraichean nach eil a 'sgàineadh a' chiad neach a tha ri fhaotainn.
droch-rùnach code
Leigeamaid a chur caochlaideach a tha fìor airson daoine a tha ùghdarraichte a bhith:
ma (authenticate_user ()) {
$ Ùghdarras = fior;
}
ma ($ ùghdarras) {
gabhail a-steach "/highly/sensitive/data.php";
}
Anns an staid, caochlaideach urrainn a chur gu fèin-obrachail. Seach gum faodar dàta dìreach a chur an àite, agus 'na thobar an tùs Chan eil shuidheachadh, faodaidh duine sam bith an uair sin a' dol seachad air a leithid de deuchainn agus a leigeil orra gu bheil cuideigin eile. Ma thathar ag iarraidh, an ionnsaigh (no dìreach neònach ach feadhainn neach) a bhith le duilgheadasan, ar loidsig.
Ma tha sinn atharrachadh luach an stiùiridh, seo còd ag obrachadh ceart, mar a tha sinn a dhìth. Ach initialization chaochladairean a-mhàin Chan eil e math ann an tòna na prògraman, ach cuideachd a 'toirt dhuinn cuid de bharantas an seasmhachd an sgriobt.
Reliable dreach den Chòd
faodaidh sibh dheth, no ag obair stiùiridhean, òrdaichidh no nas iom-fhillte còd a choileanadh an amais seo. Mar eisimpleir, mar seo:
ma (isset (SEISEAN $ _ [ 'ainm-cleachdaiche'])) {
echo "Hello {$ _ SEISEAN [ 'ainm-cleachdaiche']} b>";
} {Else
echo "Hello Guest b>
";
echo "Fàilte-cleachdaidh!";
}
Dèan ionadachadh sa chùis seo, bidh doirbh. Ach fhathast - 'sa ghabhas. Gus seo a dhèanamh, feumaidh tu a 'gabhail cùram gun robh an luath-fhreagairt Innealan a bha a thoirt seachad. Ma tha thu airson gabhail a-steach na cruinne ann caochladairean PHP, faodaidh sibh a 'cleachdadh an-innealan a leanas: ma bhios fios againn dè an raon an luach a th fhaotainn, tha e comasach gus clàradh sgriobt sùil a thoirt air seo le geama. Gu dearbh, tha e cuideachd chan eil barantas làn dìon an aghaidh ionadachadh luachan. Ach tha sin cus roghainnean mòr duilghe.
Lorgan oidhirpean Masquerade
Nach faic thu a 'tuigsinn ciamar a sgrìobhadh na bu tràithe. Ann PHP cruinneil caochladairean anns a 'ghnìomh a thèid a thoirt seachad gu h-ìosal, feumaidh tu fhèin an cèill. Faodaidh sinn a ràdh gur e seo an seòrsa obair-dachaigh air an gabhail a-steach an leasan chuspair. Seo an còd:
Php
ma (isset ($ _ CUCAIDH [ 'C_COOKIE'])) {
} Elseif (isset ($ _ GET [ 'C_COOKIE']) || isset ($ _ DÈIDH [ 'C_COOKIE'])) {
mail ( "administrarot@example.com", "aire, an sgriobt oidhirp a chaidh a chlàradh aig burglary agus atharrachadh le dàta", $ _SERVER [ 'REMOTE_ADDR']);
echo "Bha briste sàbhailteachd no a 'feuchainn ri sin a dhèanamh fios an Rianaire.";
fhosglaidh;
} {Else
}
?>
-Nis air a leithid sin de chùis a mhìneachadh. Sgothach C_COOKIE a 'tighinn thugainn bho tobar earbsach. Airson làn riaraichte a rèir an dùil thoradh air sin, tha sinn sùil a luach agus fios a chur chun an neach-rianachd ann chùis fhuasgladh. Mur eil e a 'tighinn, an sin cha-gnìomha agus cha robh feum a dhèanamh. Feumaidh tu a 'tuigsinn gu bheil dìreach comas register_globals Stiùireadh Chan eil còd agad tèarainte. Uime sin, caochlaideach sam bith a 'faighinn bho sgriobt an neach-cleachdaidh, a bu chòir a bhith air a sgrùdadh airson a' sùileachadh luach.
co-dhùnadh
An seo, san fharsaingeachd, agus a h-uile rud a dh'fheumas tu fios mu na cruinne caochladairean gu soirbheachail agus gu sàbhailte gan cleachdadh san obair aca. Gu dearbh, a ràdh gu bheil làn bharantas nach bidh iad gan cleachdadh chan urrainn --ionnsaigh a 'sìor leasachadh an dòighean-obrach agus sgilean. Mar sin tha e ion-mhiannaichte a 'cuingealachadh an fheum as motha na cruinne caochladairean ann an còd. Fortanach, structar agus feartan dealbhaidh na prògraman seo cànan a choileanadh an amais seo. Beannachd leat
Similar articles
Trending Now