{"id":25345,"date":"2021-05-27T12:39:00","date_gmt":"2021-05-27T09:39:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25345"},"modified":"2021-10-17T18:44:57","modified_gmt":"2021-10-17T15:44:57","slug":"laraveli-mitme-pildi-uleslaadimine-ja-suuruse-muutmine","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/et\/laraveli-mitme-pildi-uleslaadimine-ja-suuruse-muutmine\/","title":{"rendered":"Laraveli mitme pildi \u00fcleslaadimine ja suuruse muutmine"},"content":{"rendered":"<p>Peale selle ajaveebi juhin ma <a href=\"https:\/\/www.youtube.com\/channel\/UCosi8Kv8-EPLt5TBJLlsWJA\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">YouTube&#8217;i kanalit,<\/a> kus jagan video\u00f5petusi. Hiljuti k\u00fcsis \u00fcks YouTube&#8217;i kanali tellijatest Laravelis mitme pildi suuruse muutmise kohta. Nad tahavad mitme pildi suurust muuta \u00fche korraga. Selles artiklis uurime, kuidas Laravelis mitu pilti \u00fcles laadida ja suurust muuta.<\/p>\n<p><a href=\"https:\/\/image.intervention.io\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Sekkumispilt<\/a> on avatud l\u00e4htekoodiga teek, mis v\u00f5imaldab meil piltidega manipuleerida. Kasutan seda teeki piltide suuruse muutmiseks.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20446-6081f2f1b1c63.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20446-6081f2f1b1c63.png\" alt=\"Laraveli mitme pildi \u00fcleslaadimine ja suuruse muutmine\" ><\/a><\/p>\n<h3>Alustamine<\/h3>\n<p>Meie eesm\u00e4rgi saavutamiseks peate installima ja konfigureerima Intervention Image teegi Laraveli projekti. Avage terminal oma projekti juurkataloogis ja k\u00e4ivitage k\u00e4sk:<\/p>\n<pre><code>composer require intervention\/image<\/code><\/pre>\n<p>Kui teek on installitud, avage <code>config\/app.php<\/code>fail ja lisage sellele fassaadiga teenusepakkujad. Lisage selle paketi teenusepakkujad <code>$providers<\/code>massiivi.<\/p>\n<pre><code>InterventionImageImageServiceProvider::class,<\/code><\/pre>\n<p>Lisage <code>$aliases<\/code>massiivile fassaad .<\/p>\n<pre><code>'Image' =&gt; InterventionImageFacadesImage::class,<\/code><\/pre>\n<p>J\u00e4rgmiseks vajame kataloogi, kuhu salvestame oma \u00fcleslaaditud failid. <a href=\"https:\/\/laravel.com\/docs\/master\/filesystem\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Laraveli failis\u00fcsteem<\/a> pakub failide salvestamiseks avaliku ketta. Avalik ketas sisaldab faile, millele on \u00fcldsusele juurdep\u00e4\u00e4s. \u00dcleslaaditud failid leiate <code>storage\/app\/public<\/code>kaustast. Et neid faile veebis, siis on vaja luua s\u00fcmboolne link <code>public\/storage<\/code>, et <code>storage\/app\/public<\/code>.<\/p>\n<p>Looge s\u00fcmboolne link k\u00e4suga:<\/p>\n<pre><code>php artisan storage:link<\/code><\/pre>\n<p>Selle k\u00e4su abil luuakse avalikku kataloogi salvestuskaust. Siia salvestame oma failid.<\/p>\n<h3>Laraveli piltide \u00fcleslaadimine ja suuruse muutmine<\/h3>\n<p>Serverisse failide \u00fcleslaadimiseks vajate vormi. Loome vormi, kus saate serverisse \u00fcles laadida mitu faili. Allpool on vormi n\u00e4idiskood, mis l\u00e4heb teie vaatefaili.<\/p>\n<pre><code>&lt;form action=\"{{ url('ROUTE HERE') }}\" method=\"post\" enctype=\"multipart\/form-data\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"exampleInputFile\"&gt;File input&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"file\" name=\"profile_image[]\" id=\"exampleInputFile\" multiple \/&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0{{ csrf_field() }}\n\u00a0\u00a0\u00a0\u00a0&lt;button type=\"submit\" class=\"btn btn-default\"&gt;Submit&lt;\/button&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<p>Vormis olen v\u00f5tnud faili sisendnime nimega &#8216;profile_image []&#8217;, mis saadab serverisse hulga faile. Lisasin ka atribuudi \u201emitu&#8221;, mis v\u00f5imaldab meil valida mitu faili. Asendage kohat\u00e4ide ROUTE_URL tegeliku v\u00e4\u00e4rtusega.<\/p>\n<p>Kuna peame pilte \u00fcles laadima ja nende suurust muutma, lisage kontrolleris kaks fassaadi j\u00e4rgmiselt.<\/p>\n<pre><code>&lt;?php\n\u00a0\nnamespace AppHttpControllers;\n\u00a0\nuse IlluminateHttpRequest;\nuse Image; \/\/Intervention Image\nuse IlluminateSupportFacadesStorage; \/\/Laravel Filesystem\n\u00a0\nclass ImageController extends Controller\n{\n\u00a0\n}<\/code><\/pre>\n<p>Fassaadi lisamisega saate helistada sekkumispildi teegi suuruse muutmise funktsioonidele. Allolevas koodis laadin failid \u00fcles kahte kohta. \u00dcks on originaalpilt. Teine asub pisipiltide kataloogi all. Esmalt laadime algse pildi pisipiltide kausta \u00fcles ja seej\u00e4rel suurust muudame.<\/p>\n<pre><code>public function store(Request $request)\n{\n\u00a0\u00a0\u00a0\u00a0if ($request-&gt;hasFile('profile_image')) {\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0foreach($request-&gt;file('profile_image') as $file){\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/get filename with extension\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$filenamewithextension = $file-&gt;getClientOriginalName();\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/get filename without extension\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$filename = pathinfo($filenamewithextension, PATHINFO_FILENAME);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/get file extension\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$extension = $file-&gt;getClientOriginalExtension();\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/filename to store\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$filenametostore = $filename.'_'.uniqid().'.'.$extension;\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Storage::put('public\/profile_images\/'. $filenametostore, fopen($file, 'r+'));\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Storage::put('public\/profile_images\/thumbnail\/'. $filenametostore, fopen($file, 'r+'));\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/Resize image here\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$thumbnailpath = public_path('storage\/profile_images\/thumbnail\/'.$filenametostore);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$img = Image::make($thumbnailpath)-&gt;resize(400, 150, function($constraint) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$constraint-&gt;aspectRatio();\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0});\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$img-&gt;save($thumbnailpath);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return redirect('ROUTE_URL')-&gt;with('success', \"Image uploaded successfully.\");\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Siin muudame pildi suurust proportsionaalselt. Nii toimides s\u00e4ilitame kuvasuhte ja pilti ei l\u00f5igata. Ma l\u00e4bin laiust 400 ja k\u00f5rgust 150. Neid v\u00e4\u00e4rtusi saate oma n\u00f5uete j\u00e4rgi muuta.<\/p>\n<p>J\u00e4tkake ja proovige seda. Saad \u00fcleslaaditud piltide suuruse muutmise versiooni kataloogi &#8216;storage \/ profile_images \/ thumbnail&#8217;.<\/p>\n<p>Kui otsite k\u00f5va saaki, asendage read allpool<\/p>\n<pre><code>$img = Image::make($thumbnailpath)-&gt;resize(400, 150, function($constraint) {\n\u00a0\u00a0\u00a0\u00a0$constraint-&gt;aspectRatio();\n});\n$img-&gt;save($thumbnailpath);<\/code><\/pre>\n<p>Koos<\/p>\n<pre><code>$img = Image::make($thumbnailpath)-&gt;resize(100, 100)-&gt;save($thumbnailpath);<\/code><\/pre>\n<p>Loodan, et saate aru, kuidas Laravelis mitu pilti \u00fcles laadida ja suurust muuta. Palun jagage oma m\u00f5tteid ja ettepanekuid allpool olevas kommentaaride jaotises.<\/p>\n<h4>seotud artiklid<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/et\/kuidas-faili-s3-ules-laadida-kasutades-laraveli-failisusteemi\/\" title=\"Kuidas faili S3 \u00fcles laadida, kasutades Laraveli failis\u00fcsteemi\">Kuidas faili S3 \u00fcles laadida, kasutades Laraveli failis\u00fcsteemi<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/et\/laraveli-rakenduse-varundamine\/\" title=\"Laraveli rakenduse varundamine\">Laraveli rakenduse varundamine<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/et\/kuidas-integreerida-mailchimpi-uudiskiri-laraveli-rakendusse\/\" title=\"Kuidas integreerida MailChimpi uudiskiri Laraveli rakendusse\">Kuidas integreerida MailChimpi uudiskiri Laraveli rakendusse<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kas otsite, kuidas Laravelis mitu pilti \u00fcles laadida ja suurust muuta? Selles artiklis n\u00e4itame teile, kuidas seda \u00fclesannet sekkumispildi abil teha<\/p>\n","protected":false},"author":1,"featured_media":21676,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[498],"tags":[842],"class_list":["post-25345","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel2-5","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/posts\/25345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/comments?post=25345"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/posts\/25345\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/media\/21676"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/media?parent=25345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/categories?post=25345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/et\/wp-json\/wp\/v2\/tags?post=25345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}