CoimpiutaireanSeòrsaichean faidhle

PHP: A 'luchdadh suas faidhle ris an fhrithealaiche

Faidhlichean a luchdadh a-nuas tro PHP - glè inntinneach a 'chùis, gus a dh'fheumas a bhith dèante gu math faiceallach. Air an t-eadar-lìon gheibh thu grunn eisimpleirean ann de 'cur an gnìomh faidhle upload, ach chan eil iad uile a tha math agus a' coinneachadh ri riaghailtean sàbhailteachd.

Na rudan sin a dhìth a thoirt gu co-dhùnadh, fiù 's ma tha e a' toirt ùine fhada. Ma tha thu a 'fàgail beàrn ann an còd, an sin fad fhrithealaiche agad urrainn a mhilleadh.

sàbhailteachd

Le PHP faidhle a luchdadh suas gu frithealaiche air a dhèanamh gu math furasta. Tha an Còd a tha gu math goirid agus sìmplidh. Dìreach rud no dhà a lines. Ach, tha an dòigh seo a tha cunnartach. Much barrachd ùine agus loidhnichean còd falbh gu sàbhailteachd.

Tha an cunnart a tha sin, ma-eil thu a 'dèanamh sgrùdaidhean, ionnsaigh sam bith a dh'fhaodadh a luchdadh suas aca air sgriobtaichean fhrithealaiche agad. Anns a 'chùis seo, bidh e a bheil làn inntrigeadh. Ge bith dè a dhèanadh e e ag iarraidh:

  • a sguabadh às an stòr-dàta;
  • sguab às na faidhlichean làraichean;
  • atharrachadh faidhlichean làraichean;
  • Cuir do ad gu làrach-lìn agad;
  • luchdachadh a-nuas bhìorasan;
  • dhi a h-uile luchd-cleachdaidh air na làraichean aca;
  • agus iomadh ni eile a thig a chuimhnich ionnsaigh.

Bu chòir dhut an-còmhnaidh dèanamh cinnteach gu bheil a 'feuchainn ri faidhle a luchdachadh a-nuas an neach-cleachdaidh. Mar eisimpleir, ma tha thu a luchdachadh suas ìomhaighean a-mhàin, tha e riatanach gus a dhearbhadh gu bheil am faidhle a tha an ìomhaigh ceart. Mur eil, bidh thu rud sam bith a luchdachadh a-nuas.

Dìreach mar a chuireas dearbhadh, thèid a shealltainn, le dìreach deuchainn sgriobt faidhlichean a luchdadh suas.

Cruthachadh PHP foirm

A 'luchdadh suas faidhle foirm gu math sìmplidh. Missing an Leasaichte phutan agus upload putanan.

Ag innse mar a chruthaicheas bidh foirmean nach 'eil, oir tha e furasta. Nas fhaide air stiùireadh a 'gabhail ris gu bheil thu mar-thà a tha bun-bheachdan HTML (a chaochladh cha bhiodh tu a' coimhead airson fiosrachadh mu luchdachadh a-nuas air PHP).

Ach an aire gu bheil an dàta ann an cruth a dh'fheumas sibh a chur ris an enctype buadha.

Mur eil, dàta air faidhl cìobair cha tèid a sgaoileadh.

Ciamar a bu chòir obair?

Nuair a phutas tu air a 'phutan Leasaichte bu chòir dhut a' faicinn bogsa far a bheil iarraidh a thaghadh faidhle.

An dèidh sin thèid a dhìth gus faighinn a-cheum far a bheil faidhle suidhichte.

Ma tha an t-slighe nach eil a 'nochdadh, a' coileanadh an gnìomh a-rithist.

An dèidh a bhith a 'briogadh air an download faidhl cìobair a bheir fiosrachadh sam bith.

Mar eisimpleir, faodaidh sibh sgrìobhadh an loidhne ag ràdh gu bheil am faidhle a tha "mar sin agus mar sin" an t-ainm air a bhith soirbheachail a luchdachadh suas gu "leithid" pasgan. Gu dearbh, am faidhle a thèid ainm a thoirt seachad an-còmhnaidh eadar-dhealaichte.

Mar as trice, tha am fiosrachadh seo a chleachdadh gus debug còd. Mar so tha e comasach a dhearbhadh gu bheil an dàta a chraoladh agus a 'sgrìobhadh a' tachairt ann an miannaichte eòlaire. Is e sin, fiù 's am faidhle Chan eil ainm a chomharrachadh. Bhon seo fiosrachadh a bharrachd gu bheil an neach-cleachdaidh nach eil feum.

Tha e a 'dèanamh ciall ri toradh a t-ainm a-mhàin ma tha an neach-cleachdaidh faigh ioma faidhlichean. Sin mar a tha a 'chùis, a' beachdachadh air beagan tuilleadh. Nach eil a 'faighinn air adhart oirnn fhìn.

adjustment

Ann PHP faidhle upload ris an frithealaiche Feumaidh cuid de shuidheachaidhean, a bu chòir a dhèanamh anns a 'nad php.ini faidhle. Fhaidhle seo tha tòrr de shuidheachaidhean. Iad a h-uile nach 'eil sinn a dhìth. Tha sinn a bheil ùidh ann an trì loidhnichean: file_uploads, upload_tmp_dir agus upload_max_filesize.

Thoiribh fa-near gu bheil na roghainnean a bheir buaidh air a h-uile agaibh làraichean air an fhrithealaiche, chan e dìreach aon sam bith. Uime sin, a chur an àirde tron meud stèidhichte air gu bheil sibh bidh agaibh ri load luchd-cleachdaidh. Chan eil e a 'moladh a chur ro mhòr.

Nuair a dh'atharraicheas tu an luachan anns na crìochan, feumaidh tu ath-thòiseachadh an fhrithealaiche. Mura suidheachaidhean nach gabh a 'bhuaidh, mar a tha iad a' leughadh aig an àm air an fhrithealaiche eallach.

Faodaidh tu seo a dhèanamh ann a 'chlàir leis a' ceangal tro SSH gus an fhrithealaiche. Dìreach cuir a-steach an àithne seirbheis httpd tòisichibh a-rithist, agus an uair sin air na roghainnean a 'gabhail buaidh.

Bha dòigh eile - a thòisicheas tro isp-pannal no tro bhileachaidh pannal solaraiche.

ordugh faidhle

Ann PHP faidhle upload a dhèanamh le ordugh $ _FILES. Tha a h-uile fiosrachadh mu na faidhlichean a tha sinn a luchdachadh a-nuas.

Airson fhaicinn dè am fiosrachadh a tha ann an ordugh, gu leòr a sgrìobhadh ann am faidhle cìobair a leanas.

Tagh faidhle sam bith agus briog air "upload." Air an cìobair duilleag a thaisbeanadh air an fhiosrachadh a tha air a stòradh ann $ _FILES. Tha caochlaideach air a sgrìobhadh gu tur le litrichean. PHP - cànan-mothachail.

Mar a chì sibh, anns an ordugh tha tòrr achaidhean. Tha iad uile cudromach dhuinn. Tha a 'chiad achadh anns am faidhle ainm ann an riochd anns a bheil e air a chleachdadh air a' choimpiutair agad.

Tha an seòrsa colbh a shònrachadh faidhl seòrsa. Tmp_name achadh co-ionann ris an ainm an fhaidhle sealach. Às dèidh deireadh an sgriobt a sguabadh às.

Tha mearachd anns an achadh an Còd mearachd. Bha seo beagan nas fhaide. Meud - meud ann bytes.

mearachdan

A dhèanamh tro PHP faidhle upload a tha daonnan an cois an Còd mearachd. An teachdaireachd-mearachd a-steach ann an "mearachd". Tha sgrìn mearachd a tha neoni.

Beachdachadh air an luach a h-uile mhearachdan:

Chaidh a ràdh gu h-àrd mu dheidhinn am paramadair a dh'fhaodas a bhith air a shònrachadh ann an àbhaist HTML.

Seo sampall foirm a luchdachadh a-nuas am faidhle, a tha a 'comharrachadh crìoch an t-suim de na luchdachadh suas faidhle.

PHP: A 'luchdadh suas faidhle sgriobt

Mar a h-uile a chaidh a dhèanamh ann an cleachdadh? Ann PHP faidhle upload a 'tachairt lethbhreac àithne. Ma tha ùidh agaibh anns a 'cheist ciamar a luchdachadh a-nuas faidhl, freagairt sìmplidh copy-, a tha a' cleachdadh dà chrìochan - an tobar faidhl agus na cheann-uidhe faidhle.

Ach, mar a chaidh a ràdh gu h-àrd, chan urrainn a bhith cuingealaichte airson adhbharan sàbhailteachd. Mar eisimpleir, thoir sùil a-mach dè an seòrsa faidhle sinn bàta, faodaidh sibh a 'cleachdadh an achadh-seòrsa ann an ordugh $ _FILES. Chiad, leig a 'dèiligeadh ri sgrùdadh, agus an uair sin a' gluasad air an script air fad

Nach can thu airson leigeil le luchd-cleachdaidh a luchdachadh suas air dealbh le rùn a-mhàin GIF, JPEG no PNG. Sealltainn faodaidh e bhith mar seo.

ma ($ _ faidhlichean [ 'file_upload'] [ 'seòrsa']! = "image / TIG") {
echo "Duilich, tha sinn a 'toirt taic-mhàin luchdachadh a-nuas TIG-Files";
fhosglaidh;
}

Ma tha thu airson a h-uile soitheach 3 sheòrsaichean, dìreach cuir a bharrachd staid eile a 'seòrsa ìomhaigh.

Dlighe-sgrìobhaidh air a dhèanamh mar seo: lethbhreac (image 1, an ìomhaigh 2).

Ann cùise againn, 'nuair a tha obair a luchdachadh a-nuas bho PC gus an fhrithealaiche, faodaidh sibh sin a dhèanamh

lethbhreac ($ _ faidhlichean [ 'file_upload'] [ "tmp_name"], "1.jpg")

'S e sin, am faidhle a thèid a lethbhreacadh le ainm 1.jpg. Chan eil seo gu tur ceart. Sa chùis seo, tha e a-mhàin eisimpleir. Tha am faidhl-ainm a tha daonnan feum air eadar-dhealaichte, agus dè an leudachan, a rèir an fhaidhle.

Obraich a-mach an leudachan urrainn a bhith an diofar dhòighean. Tha h-uile sian an crochadh air de an leasaiche erudition. Aon de na dòighean as luaithe gu (diofar na deicheamhan de seconds) a 'dearbhadh an leudachan - tha seo an ath còd.

$ Path_info = pathinfo ($ _ faidhlichean [ 'photo1'] [ "ainm"]);

$ EXT = $ path_info [ 'leudachan'];

Tha caochlaideach $ an EXT stòraidh sinn an leudachan mhiannaichte. Tha am faidhl ainm urrainn a chur air thuaiream cleachdadh MD5. Ma tha thu an dùil a luchdachadh a-nuas tòrr de na faidhlichean, tha e nas fheàrr dhaibh soitheach gu diofar pasgan. Mar sin bidh e nas fhasa. Gu sònraichte, ma bhios thu airson ghlanadh.

luchdachadh a-nuas an còd mar a leanas.

/// Le photo

ma ($ _FILES [ 'photo1'] [ 'tmp_name'] == null)

{

echo ( "

Unknown faidhl.

Back ... ");

fhosglaidh;

}

///. Say thu airson pròiseact sam bith air an fhrithealaiche a tha ceadaichte a luchdadh mòr faidhlichean (bhidio), ach chan eil ann ach na dealbhan, agus feumaidh luchd-cleachdaidh a chuingealachadh

ma (($ _FILES [ "photo1"] [ "meud"]> * 1024 1024 * 2)

{

?>

as àirde cead meud 2 MB

Back ...

fhosglaidh;

}

// chruthachadh pasgannan

// chruthachadh pasgan an-dràsta mhìos

ma (! file_exists ( "img /". Ceann-latha ( "M")))

{

mkdir ( "img /" ceann-là ( "M").);

}

// chruthachadh pasgan an-dràsta latha

ma (! file_exists ( "img /". Ceann-latha ( "M"). "/". Ceann-latha ( "d")))

{

mkdir ( "img /" ceann-là ( "M") "/" ceann-là ( "d") ...);

}

/// faidhl leudachan

$ Path_info = pathinfo ($ _ faidhlichean [ 'photo1'] [ "ainm"]);

$ EXT = $ path_info [ 'leudachan'];

/// ghineadh ainm-faidhle

$ Id = MD5 (ceann-latha ( "YMd"));

ma (lethbhreac ($ _ faidhlichean [ 'photo1'] [ "tmp_name"], "img /". Ceann-latha ( "M"). "/". Ceann-latha ( "d"). "/". $ id. $ EXT) )

{

echo ( "Faidhle soirbheachail a luchdadh suas");

}

/// sam bith tuilleadh gnìomh (inntrig ann an stòr-dàta, agus mar sin air. N.)

}

ioma-faidhlichean

Faidhlichean a luchdadh suas ioma (PHP) a 'tachairt tro achaidhean a bharrachd ann an riochd.

Tha an dòigh nach eil fìor mhath, mar a tha e a 'cuingealachadh na h-àireimh de na faidhlichean a luchdachadh a-nuas. A bharrachd air sin, thathar a 'beachdachadh air an droch riochd anns phrògraman. Feuch ri dhèanamh a h-uile càil fiùghantach.

Tha roghainn freagarrach - tha e roghainn de àireamh mhòr de faidhlichean aig an aon àm le putadh air a 'phutan singilte.

Gus seo a dhèanamh, a 'cruthachadh cumadh mar an còd seo.

Thoir fa-near gu bheil an ioma thuilleadh air an fhocal, agus an t-ainm air a thoirt mar an ordugh []. Anns a 'chùis seo, $ _FILES ordugh bi beagan eadar-dhealaichte. Gheibh thu an ordugh catha an ordugh.

Airson fheuchainn urrainn-rithist a 'cleachdadh an var_dump ($ _ faidhlichean);

A h-uile faidhlichean agad a thèid an cur ann an ordugh mar seo:

  1. $ _FILES [ "file1"] [ "ainm"] [0]
  2. $ _FILES [ "file1"] [ "ainm"] [1]
  3. Agus mar sin air adhart.

Ann bracaidean e sgrìobhte faidhle àireamh ann an ordugh. Cunntaidh à neoni. Tha sinn a 'dèiligeadh riutha ann an aon dòigh, dìreach iarr air na rothairean agus le bhith a' cur fios gu na h-àrd-mhìneachadh code aig deireadh an clàr-amais a 'cur [$ i].

$ Mi = 0;

fhad ($ _FILES [ "file1"] [ "ainm"] [$ i] <> '')

{

/// cuir gu h-àrd code

}

Mar sin, bidh sibh a bhith a 'tachairt tro PHP faidhle upload ris an frithealaiche ann an aon cearcall gun cus ath-aithris an còd, mar a tha mar as trice a' chùis ma tha thu a 'cleachdadh an dreach le stadaigeach àireamh de faidhlichean (Air photo).

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 gd.birmiss.com. Theme powered by WordPress.