<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>pemrograman Archives - Mr Agus</title>
	<atom:link href="https://mragus.com/tag/pemrograman/feed/" rel="self" type="application/rss+xml" />
	<link>https://mragus.com/tag/pemrograman/</link>
	<description>Read, Learn and Share Ilmu yang Bermanfaat</description>
	<lastBuildDate>Thu, 02 Nov 2017 09:06:53 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.2.2</generator>

<image>
	<url>https://mragus.com/wp-content/uploads/2017/07/Fav-icon-untuk-mragus.com_-150x150.png</url>
	<title>pemrograman Archives - Mr Agus</title>
	<link>https://mragus.com/tag/pemrograman/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Tipe Data Pada Redis dan Contoh Menggunakannya</title>
		<link>https://mragus.com/tipe-data-pada-redis-dan-contoh-menggunakannya/</link>
					<comments>https://mragus.com/tipe-data-pada-redis-dan-contoh-menggunakannya/#respond</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Fri, 20 Oct 2017 08:26:06 +0000</pubDate>
				<category><![CDATA[Redis]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[nosql]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[redis]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=3214</guid>

					<description><![CDATA[<p>Tipe Data Pada Redis dan Contoh Menggunakannya &#8211; Assalamualaikum wr wb, pada artikel kali ini saya akan membahas mengenai tipe data pada redis dan bagaimana cara menggunakannya. Pada tutorial saya yang sebelumnya tentang pengenalan redis (disini), disitu saya menyinggung sedikit&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/tipe-data-pada-redis-dan-contoh-menggunakannya/">Tipe Data Pada Redis dan Contoh Menggunakannya</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Tipe Data Pada Redis dan Contoh Menggunakannya &#8211;</strong> Assalamualaikum wr wb, pada artikel kali ini saya akan membahas mengenai tipe data pada redis dan bagaimana cara menggunakannya. Pada tutorial saya yang sebelumnya tentang pengenalan redis (<a href="https://mragus.com/mengenal-apa-itu-redis/">disini</a>), disitu saya menyinggung sedikit tentang tipe data pada redis.</p>
<p>Pada redis kita bisa menyimpan data dengan berbagai macam format tipe data. <span id="more-3214"></span>Hal inilah yang memberikan kelebihan pada redis, dibandingkan database No Sql yang menggunakan memory sebagai media penyimpanan. Anda bisa menggunakan macam-macam tipe data pada redis sesuai dengan kebutuhan yang anda perlukan, mulai dari <em>strings, hashes, lists, sets </em>dan<em> sorted sets</em>.</p>
<h2>Tipe Data Pada Redis dan Contoh Menggunakannya</h2>
<p>Oke langsung saja kita mulai contoh cara menggunakan beberapa tipe data pada redis cli.</p>
<h3>String</h3>
<p>String merupakan tipe data yang paling sering di pakai. Pada redis penggunaan string di batasi dengan ukuran 512 megabytes. Untuk menggunakannya seperti contoh  di bawah ini.</p>
<div id="attachment_3221" style="width: 611px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3221" decoding="async" class="wp-image-3221" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_238.png" alt="Tipe Data Pada Redis dan Contoh Menggunakannya" width="601" height="383" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_238.png 1062w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_238-300x191.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_238-768x490.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_238-1024x653.png 1024w" sizes="(max-width: 601px) 100vw, 601px" /><p id="caption-attachment-3221" class="wp-caption-text">Tipe Data Pada Redis dan Contoh Menggunakannya</p></div>
<p>Pada Contoh di atas, terdapat 2 perintah untuk menyimpan dan memanggil string yaitu dengan <em>SET</em> dan <em>GET. </em>Pada parameter pertama setelah perinta<em> SET/GET</em> merupakan <em>KEY</em> dan parameter kedua merupakan <em>VALUE</em>.</p>
<h3>Hashes</h3>
<p>Dengan menggunakan tipe data hashes, kita bisa menyimpan beberapa isi pasangan <em>FIELD</em> dalam satu <em>KEY. </em>Pada tipe data ini, kita bisa menyimpan maksimal 232 &#8211; 1 pasang data. Untuk menggunakannya, anda bisa lihat contoh di bawah ini.</p>
<div id="attachment_3223" style="width: 609px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3223" decoding="async" loading="lazy" class="wp-image-3223" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_240.png" alt="Tipe Data Pada Redis dan Contoh Menggunakannya" width="599" height="380" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_240.png 1060w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_240-300x190.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_240-768x488.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_240-1024x650.png 1024w" sizes="(max-width: 599px) 100vw, 599px" /><p id="caption-attachment-3223" class="wp-caption-text">Tipe Data Pada Redis dan Contoh Menggunakannya</p></div>
<p>Bisa kita lihat pada gambar diatas, untuk menyimpan <em>HASHES</em> saya menggunakan perintah <em>HMSET</em>. Pada parameter pertama (user:agus) merupakan <em>KEY </em>dan parameter selanjutnya merupakan pasangan pasangan field dengan beberapa macam <em>VALUE.</em></p>
<h3>Lists</h3>
<p>Tipe data Lists, modelnya hampir mirip sama tipe data String. Tetapi Lists memiliki kelebihan lain yaitu dapat menyimpan beberapa <em>VALUE</em> pada satu <em>KEY</em>. Kita bisa menambahkan <em>VALUE </em>pada depan atau belakang data.</p>
<div id="attachment_3225" style="width: 611px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3225" decoding="async" loading="lazy" class="wp-image-3225" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_241.png" alt="Tipe Data Pada Redis dan Contoh Menggunakannya" width="601" height="382" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_241.png 1064w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_241-300x191.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_241-768x488.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_241-1024x651.png 1024w" sizes="(max-width: 601px) 100vw, 601px" /><p id="caption-attachment-3225" class="wp-caption-text">Tipe Data Pada Redis dan Contoh Menggunakannya</p></div>
<p>Pada contoh di atas saya menggunakan perintah <em>LPUSH</em> untuk menyimpan <em>VALUE</em> pada sebelah kiri <em>VALUE</em> sebelumnya. Kemudian perintah <em>RPUSH</em> untuk menyimpan <em>VALUE </em>pada sebelah kanan <em>VALUE</em> sebelumnya.</p>
<h3>Sets</h3>
<p>Tipe data ini memiliki struktur seperti <em>LISTS</em>, bedanya adalah <em>SETS</em> tidak memiliki urutan. Perbedaan yang lain adalah, pada <em>SETS </em>ketika suatu <em>VALUE </em>sudah exist/ ada pada <em>KEY</em> yang sama, maka VALUE itu tidak akan di input kembali ke dalam <em>SETS.</em></p>
<div id="attachment_3228" style="width: 610px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3228" decoding="async" loading="lazy" class="wp-image-3228" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_242.png" alt="Tipe Data Pada Redis dan Contoh Menggunakannya" width="600" height="381" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_242.png 1058w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_242-300x190.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_242-768x487.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_242-1024x649.png 1024w" sizes="(max-width: 600px) 100vw, 600px" /><p id="caption-attachment-3228" class="wp-caption-text">Tipe Data Pada Redis dan Contoh Menggunakannya</p></div>
<p>Untuk menambahkan value, kita bisa menggunakan perintah SADD, untuk melihat VALUE nya kita bisa menggunakan perintah SMEMBERS.</p>
<h3>Sorted Sets</h3>
<p>Pada tipe data <em>Sorted Sets, </em>karakternya mirip seperti <em>SETS</em>. Tetapi kita bisa mengurutkan <em>VALUE</em> pada <em>KEY</em> yang sama.</p>
<div id="attachment_3230" style="width: 610px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3230" decoding="async" loading="lazy" class="wp-image-3230" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_243.png" alt="Tipe Data Pada Redis dan Contoh Menggunakannya" width="600" height="381" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_243.png 1055w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_243-300x190.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_243-768x487.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_243-1024x649.png 1024w" sizes="(max-width: 600px) 100vw, 600px" /><p id="caption-attachment-3230" class="wp-caption-text">Tipe Data Pada Redis dan Contoh Menggunakannya</p></div>
<p>Pada contoh di atas, untuk menambahkan data pada Sorted Sets, parameter setelah KEY adalah <strong>Urutannya</strong>. Parameter setelah urutan adalah <em>VALUE </em>nya. Untuk menampilkan data, kita bisa menggunakan perintah <em>ZRANGEBYSCORE VALUE RANGE.</em></p>
<p>Sekian pembahasan saya mengenai jenis tipe data pada <em>Redis</em>. Semoga tulisan saya dapat bermanfaat. Kritik dan masukkan dari teman-teman sangat saya tunggu. Terus belajar dan berkarya. Terimakasih.</p>
<p>Referensi :</p>
<p>https://redis.io/</p>
<p>The post <a rel="nofollow" href="https://mragus.com/tipe-data-pada-redis-dan-contoh-menggunakannya/">Tipe Data Pada Redis dan Contoh Menggunakannya</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/tipe-data-pada-redis-dan-contoh-menggunakannya/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Mengenal apa itu Redis</title>
		<link>https://mragus.com/mengenal-apa-itu-redis/</link>
					<comments>https://mragus.com/mengenal-apa-itu-redis/#comments</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Thu, 19 Oct 2017 06:51:11 +0000</pubDate>
				<category><![CDATA[Redis]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[nosql]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[redis]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=3192</guid>

					<description><![CDATA[<p>Mengenal apa itu Redis &#8211; Assalamualaikum wr wb, pada kesempatan kali ini saya akan membahas mengenai apa itu redis. Redis merupakan kependekan dari REmote DIctionary Server di kembangkan oleh Salvatore Sanfilippo dan dirilis pada tanggal 10 Mei 2009 serta&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/mengenal-apa-itu-redis/">Mengenal apa itu Redis</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Mengenal apa itu Redis &#8211;</strong> Assalamualaikum wr wb, pada kesempatan kali ini saya akan membahas mengenai apa itu redis. Redis merupakan kependekan dari REmote DIctionary Server di kembangkan oleh Salvatore Sanfilippo dan dirilis pada tanggal 10 Mei 2009 serta langsung menjadi salah satu database No Sql yang cukup populer.<strong><br />
</strong></p>
<p>Redis memiliki struktur key dan value dengan berbagai macam tipe data. Seperti <span id="more-3192"></span>Strings, Lists, Sets, Hashes, Sorted Sets dan Bitmaps. Redis memiliki kelebihan dapat diakses dengan Cepat, karena dataset nya tersimpan pada memory. Waitt&#8230; memory?? Artinya kalau pc atau laptop mati, apakah data akan hilang? I Said No..</p>
<p>Selain cepat, kelebihan lain yang dimiliki oleh redis adalah <em>PERSISTENCE ,</em> artinya redis memiliki Opsi untuk menjaga data tidak akan hilang. Redis memiliki dua mekanisme untuk membuat data nya persistence dengan menggunakan <em>Append Only File</em> (AOF) dan <em>Snapshot</em> (RDB).</p>
<h2>Mengenal apa itu Redis</h2>
<p>Dengan menggunakan <em>Snapshot</em>, dataset akan ditulis secara ascyncronus pada disk dalam interval waktu  tertentu dengan format <strong>.rdb</strong> . Sedangkan dengan menggunakan mekanisme <em>Append Only File, </em>dataset akan di tulis pada disk dengan lebih real time. Terdapat beberapa option jika menggunakan AOF, <em>sync</em> data bisa di setting setiap detik atau setiap kali proses operasi di lakukan.</p>
<p>Kedua mekanisme tersebut masing-masing memeiliki kelebihan dan kekurangan. Anda bisa menggunakan keduanya atau salah satu tergantung kondisi dan kebutuhan anda. Misalnya, dengan menggunakan AOF data akan lebih valid ketika system crash atau reboot, tetapi lebih membutuhkan space yang lebih besar karena <em>sync</em> pada disk lebih sering ketimbang <em>Snapshot</em>.</p>
<h2>Menginstall Redis</h2>
<p>Untuk menginstall redis terdapat beberapa cara.</p>
<p>Cara Pertama :</p>
<pre class="lang:default decode:true">$ wget http://download.redis.io/releases/redis-4.0.2.tar.gz
$ tar xzf redis-4.0.2.tar.gz
$ cd redis-4.0.2
$ make</pre>
<p>Selain itu kita bisa menginstall redis via apt-get.</p>
<pre class="lang:default decode:true">$ apt-get install redis-server</pre>
<p>Setelah Terinstall, kita bisa mencobanya melalu redis-cli. Masukkan perintah berikut melalui terminal.</p>
<pre class="lang:default decode:true">redis-cli</pre>
<div id="attachment_3203" style="width: 569px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3203" decoding="async" loading="lazy" class="wp-image-3203" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_234-1.png" alt="Mengenal apa itu Redis" width="559" height="358" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_234-1.png 1059w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_234-1-300x192.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_234-1-768x491.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_234-1-1024x655.png 1024w" sizes="(max-width: 559px) 100vw, 559px" /><p id="caption-attachment-3203" class="wp-caption-text">Mengenal apa itu Redis</p></div>
<p>Bisa kita lihat port redis berjalan pada 6379. Kita bisa mencobanya dengan contoh yang sederhana dengan menset dan getting data string.</p>
<div id="attachment_3206" style="width: 572px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3206" decoding="async" loading="lazy" class="wp-image-3206" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_235-2.png" alt="Setting dan Getting data pada redis" width="562" height="358" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_235-2.png 1063w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_235-2-300x191.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_235-2-768x489.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_235-2-1024x652.png 1024w" sizes="(max-width: 562px) 100vw, 562px" /><p id="caption-attachment-3206" class="wp-caption-text">Setting dan Getting data pada redis</p></div>
<p>Dengan berbagai macam kelebihannya, redis menjadi database noSql yang cukup populer. Belum saya temui pesaing yang bisa menandingi kecepatan dan fitur-fitur yang dimiliki oleh redis. Tetapi dengan segala kelebihan yang dimiliki, redis juga membutuhkan alokasi space memori yang cukup besar. Hal ini tentunya juga berpengaruh pada <em>cost, </em>karena harga RAM lebih mahal ketimbang Hardisk dan RAM biasanya memiliki ukuran yang lebih kecil dan slot yang sedikit pada mobo.</p>
<p>Sekian tutorial pengenalan tentang database redis ini, semoga dapat bermanfaat. Terimakasih.</p>
<p>Sumber :</p>
<p><a href="https://redis.io/">https://redis.io/</a></p>
<p><a href="https://en.wikipedia.org/wiki/Redis">https://en.wikipedia.org/wiki/Redis</a></p>
<p>The post <a rel="nofollow" href="https://mragus.com/mengenal-apa-itu-redis/">Mengenal apa itu Redis</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/mengenal-apa-itu-redis/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Perbedaan Hashing Encoding dan Enkripsi</title>
		<link>https://mragus.com/perbedaan-hashing-encoding-dan-enkripsi/</link>
					<comments>https://mragus.com/perbedaan-hashing-encoding-dan-enkripsi/#respond</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Sun, 08 Oct 2017 14:08:59 +0000</pubDate>
				<category><![CDATA[Pemrograman]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[criptografi]]></category>
		<category><![CDATA[encoding]]></category>
		<category><![CDATA[enkripsi]]></category>
		<category><![CDATA[hashing]]></category>
		<category><![CDATA[pemrograman]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=3160</guid>

					<description><![CDATA[<p>Perbedaan Hashing Encoding dan Enkripsi. Assalamualaikum wr wb, setelah lebih dari satu bulan tidak menulis artikel baru dalam blog ini karena dengan berbagai kesibukan. Kali ini saya akan mengangkat tema perbedaan hashing, encoding dan enkripsi. Mungkin banyak temen-temen yang&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/perbedaan-hashing-encoding-dan-enkripsi/">Perbedaan Hashing Encoding dan Enkripsi</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Perbedaan Hashing Encoding dan Enkripsi</strong>. Assalamualaikum wr wb, setelah lebih dari satu bulan tidak menulis artikel baru dalam blog ini karena dengan berbagai kesibukan. Kali ini saya akan mengangkat tema perbedaan hashing, encoding dan enkripsi. Mungkin banyak temen-temen yang belum begitu paham atau menganggap bahwa hashing, encoding dan ekripsi merupakan hal yang sama. Tetapi yang perlu di ketahui bahwa <span id="more-3160"></span>pada ketiga hal tersebut memiliki perbedaan yang mendasar dalam cara kerjanya,</p>
<p>Langsung saja tanpa basa basi, saya mulai jelaskan mulai dari hashing.</p>
<h2>Perbedaan Hashing Encoding dan Enkripsi</h2>
<h3>Hashing</h3>
<p>Hashing merupakan metode untuk mengubah sebuah string atau data dalam sebuah kode yang ditujukan untuk merahasiakan data dan berjalan dalam 1 arah. Artinya kita tidak dapat melihat nilai atau data aslinya, kecuali dengan mencocokan data antara karakter yang sudah di hashing dengan karakter yang sudah di hashing lainnya. Terdapat beberapa algoritma populer yang sering dipakai pada hashing, seperti MD5, SHA1, dan Whirlpool.</p>
<p>Berikut adalah contoh menggunakan hashing dengan beberapa algoritma di PHP.</p>
<pre class="lang:default decode:true ">&lt;?php
echo hash('sha1', 'mari belajar pemrograman');

echo hash('md5', 'mari belajar pemrograman');

echo hash('whirlpool', 'mari belajar pemrograman');
?&gt;</pre>
<div id="attachment_3167" style="width: 610px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3167" decoding="async" loading="lazy" class="wp-image-3167" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_227.png" alt="Perbedaan Hashing Encoding dan Enkripsi" width="600" height="230" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_227.png 1523w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_227-300x115.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_227-768x294.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_227-1024x392.png 1024w" sizes="(max-width: 600px) 100vw, 600px" /><p id="caption-attachment-3167" class="wp-caption-text">Perbedaan Hashing Encoding dan Enkripsi</p></div>
<h3>Encoding</h3>
<p>Encoding merupakan sebuah metode untuk merubah bentuk atau format data. Tujuan dari encoding adalah supaya data yang dimaksud dapat dipakai pada system yang lain tetapi tidak ditujukan untuk merahasiakan data. Kita dapat dengan mudah mengetahui data aslinya dengan fungsi decode nya. Beberapa contoh dari encoding adalah ASCII dan base64.</p>
<p>Berikut adalah contoh penggunaan encoding dan decoding dengan PHP.</p>
<pre class="lang:default decode:true ">&lt;?php
echo base64_encode('mari belajar pemrograman');
echo base64_decode('bWFyaSBiZWxhamFyIHBlbXJvZ3JhbWFu');
?&gt;</pre>
<div id="attachment_3170" style="width: 612px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3170" decoding="async" loading="lazy" class="wp-image-3170" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_228-1.png" alt="Perbedaan Hashing Encoding dan Enkripsi" width="602" height="197" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_228-1.png 1264w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_228-1-300x98.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_228-1-768x251.png 768w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_228-1-1024x335.png 1024w" sizes="(max-width: 602px) 100vw, 602px" /><p id="caption-attachment-3170" class="wp-caption-text">Perbedaan Hashing Encoding dan Enkripsi</p></div>
<h3>Enkripsi</h3>
<p>Enkripsi merupakan sebuah metode untuk merahasiakan data sehingga kita tidak akan bisa membaca nilai atau data aslinya tanpa menggunakan key atau kunci. Contoh algoritmanya adalah blowfish.</p>
<p>Berikut adalah contoh penggunaan enkripsi dan dekripsi dengan menggunakan blowfish.</p>
<pre class="lang:default decode:true">&lt;?php		
function encrypt($string, $key) {
   $iv_size = mcrypt_get_iv_size(MCRYPT_BLOWFISH, MCRYPT_MODE_ECB);
   $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
   $encrypted_string = mcrypt_encrypt(MCRYPT_BLOWFISH, $key, utf8_encode($string), MCRYPT_MODE_ECB, $iv);
   return $encrypted_string;
}

function decrypt($encrypted_string, $key) {
   $iv_size = mcrypt_get_iv_size(MCRYPT_BLOWFISH, MCRYPT_MODE_ECB);
   $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
   $decrypted_string = mcrypt_decrypt(MCRYPT_BLOWFISH, $key, $encrypted_string, MCRYPT_MODE_ECB, $iv);
   return $decrypted_string;
}
?&gt;</pre>
<p>Untuk menggunakannya seperti contoh di bawah, pada parameter kedua merupakan privat key nya. Anda bisa menseting key ini sesuai dengan selera temen &#8211; temen.</p>
<pre class="lang:default decode:true ">&lt;?php
encrypt("mari belajar pemrograman", "blablabla");

decrypt($encrypted_string, "blablabla")
?&gt;</pre>
<p>Hasilnya kurang lebih seperti berikut.</p>
<div id="attachment_3187" style="width: 576px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-3187" decoding="async" loading="lazy" class=" wp-image-3187" src="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_233-2.png" alt="Perbedaan Hashing Encoding dan Enkripsi" width="566" height="241" srcset="https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_233-2.png 845w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_233-2-300x127.png 300w, https://mragus.com/wp-content/uploads/2017/10/aguswijisuhariono_233-2-768x326.png 768w" sizes="(max-width: 566px) 100vw, 566px" /><p id="caption-attachment-3187" class="wp-caption-text">Perbedaan Hashing Encoding dan Enkripsi</p></div>
<p>Sekian pembahasan mengenai perbedaan hashing encoding dan enkripsi. Semoga setelah membaca artikel ini, anda bisa memahami perbedaan antara ketiganya. Terus belajar dan berusaha, Terimakasih.</p>
<p>The post <a rel="nofollow" href="https://mragus.com/perbedaan-hashing-encoding-dan-enkripsi/">Perbedaan Hashing Encoding dan Enkripsi</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/perbedaan-hashing-encoding-dan-enkripsi/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Mengirim Email Menggunakan Framework Laravel</title>
		<link>https://mragus.com/mengirim-email-menggunakan-framework-laravel/</link>
					<comments>https://mragus.com/mengirim-email-menggunakan-framework-laravel/#comments</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Thu, 11 May 2017 04:35:03 +0000</pubDate>
				<category><![CDATA[Laravel Framework]]></category>
		<category><![CDATA[laravel]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=2296</guid>

					<description><![CDATA[<p>Assalamualaikum wr wb, pada artikel kali ini saya akan membahas mengenai bagaimana cara mengirim email menggunakan Framework Laravel. Pada artikel sebelumnya saya sudah membuat bahasan mengenai cara mengirim email dengan framework Yii2 disni, jadi tidak lengkap rasanya jika tidak&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/mengirim-email-menggunakan-framework-laravel/">Mengirim Email Menggunakan Framework Laravel</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;">Assalamualaikum wr wb, pada artikel kali ini saya akan membahas mengenai bagaimana cara mengirim email menggunakan Framework Laravel. Pada artikel sebelumnya saya sudah membuat bahasan mengenai cara mengirim email dengan framework Yii2 <a href="https://mragus.com/mengirim-email-pada-framework-yii2-dengan-swiftmailer/">disni</a>, jadi tidak lengkap rasanya jika tidak membuat juga artikel serupa dengan framework Laravel.</p>
<p style="text-align: left;">Untuk pembuatan aplikasi ini saya menggunakan layanan email dari Google dan Laravel dengan <span id="more-2296"></span>versi 5. Untuk scriptnya sendiri cukup mudah dan scriptnya tidak terlalu panjang. Oke, langsung saja tanpa basa basi lagi kita mulai setting dan buat script nya.</p>
<h2 style="text-align: left;">Mengirim Email Menggunakan Framework Laravel</h2>
<p style="text-align: left;">Hal yang pertama-tama kita lakukan adalah kita membuat konfigurasi email terkait dengan SMTP email apa yang akan kita gunakan. Settingnya terletak pada file .env, dan berikut adalah contoh konfigurasi dengan menggunakan smtp google.</p>
<pre class="lang:default decode:true EnlighterJSRAW">MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=isiemaildisini@gmail.com
MAIL_PASSWORD=passworddisni
MAIL_ENCRYPTION=tls</pre>
<h3 style="text-align: left;">Pembuatan Method</h3>
<p style="text-align: left;">Selanjutnya saya akan membuat 2 method untuk menampilkan form email dan method yang di gunakan untuk menghandle proses kirim email. Sesuaikan method dan route nya.</p>
<pre class="lang:default decode:true EnlighterJSRAW">Route::get('site/form-mail','SiteController@formMail');
Route::post('site/send-mail','SiteController@sendMail');</pre>
<h4 style="text-align: left;">Method pertama</h4>
<p style="text-align: left;">Berikut adalah method pertama untuk menampilkan form.</p>
<pre class="lang:default decode:true EnlighterJSRAW">public function formMail(){
   return view('site.formMail');
}</pre>
<p style="text-align: left;">Kemudian buat viewnya di folder site dengan nama <em>formMail.</em></p>
<pre class="lang:default decode:true EnlighterJSRAW">&lt;div class="row"&gt;
 {!! Form::open(['action' =&gt; 'SiteController@sendMail','method'=&gt;'post']) !!}
 &lt;div class="col-sm-6"&gt;
  &lt;div class="form-group"&gt;
   &lt;label&gt;Email Tujuan&lt;/label&gt;
   {!! Form::text('email',null,['class'=&gt;'form-control']) !!}
  &lt;/div&gt;
  &lt;div class="form-group"&gt;
   &lt;label&gt;Subjek&lt;/label&gt;
   {!! Form::text('subjek',null,['class'=&gt;'form-control']) !!}
  &lt;/div&gt;
  &lt;div class="form-group"&gt;
   &lt;label&gt;Opsi Template&lt;/label&gt;
   {!! Form::select('opsi_template',['1'=&gt;'Dengan Template','2'=&gt;'Tanpa Template'],null,['class'=&gt;'form-control','promt'=&gt;'- pilih opsi -']) !!}
  &lt;/div&gt; 
  {!! Form::submit('Kirim Email',['class'=&gt;'btn btn-primary']) !!}
 &lt;/div&gt;
 &lt;div class="col-sm-6"&gt;
  &lt;div class="form-group"&gt;
   &lt;label&gt;Pesan&lt;/label&gt;
   {!! Form::textarea('pesan',null,['class'=&gt;'form-control']) !!}
  &lt;/div&gt;
 &lt;/div&gt;
 {!! Form::close() !!}
&lt;/div&gt;</pre>
<p style="text-align: left;">Setelah jadi kira kira penampakannya seperti berikut.</p>
<div id="attachment_2305" style="width: 543px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2305" decoding="async" loading="lazy" class="wp-image-2305 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono089.png" alt="Mengirim Email Menggunakan Framework Laravel" width="533" height="152" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono089.png 1797w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono089-300x86.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono089-768x219.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono089-1024x292.png 1024w" sizes="(max-width: 533px) 100vw, 533px" /><p id="caption-attachment-2305" class="wp-caption-text">Mengirim Email Menggunakan Framework Laravel</p></div>
<p style="text-align: left;">Dropdown yang saya buat pada form, dimaksudkan untuk memberikan opsi. Apakah email akan dikirimkan hanya berupa text atau dengan menggunakan template.</p>
<h4 style="text-align: left;">Method kedua</h4>
<p style="text-align: left;">Method kedua ini adalah digunakan untuk menghandle proses kirim email. Berikut adalah script yang saya buat.</p>
<pre class="lang:default decode:true EnlighterJSRAW">public function sendMail(Request $request){
        $this-&gt;validate($request,[
                'email' =&gt; 'required',
                'subjek' =&gt; 'required',
                'pesan' =&gt;'required',
                'opsi_template' =&gt; 'required'
            ]);
        if($request-&gt;opsi_template==2){
            $sendMail = Mail::raw($request-&gt;pesan, function ($message)use($request) {
                $message-&gt;from('bijiagus@gmail.com','Agus Wiji Suhariono');
                $message-&gt;subject($request-&gt;subjek);
                $message-&gt;to($request-&gt;email);
            });
        }else{
            $sendMail = Mail::send('email.template', ['request'=&gt;$request], function        ($message)use($request){
                $message-&gt;from('bijiagus@gmail.com','Agus Wiji Suhariono');
                $message-&gt;subject($request-&gt;subjek);
                $message-&gt;to($request-&gt;email);
            });
        }
        if($sendMail){
             \Session::flash('flash_message','Email berhasil dikirim');

            return redirect()-&gt;action('SiteController@formMail');
        }
    }</pre>
<p style="text-align: left;">Pada method tersebut terdapat 2 kondisi, jika opsi template adalah 2, maka email hanya akan dikirim menggunakan <em>Raw String </em>dan untuk kondisi kedua menggunakan template view. Anda bisa melihat berbagai konfigurasi yang tersedia di <a href="https://laravel.com/docs/5.2/mail">dokumentasi resmi Laravel</a>,  seperti memberikan attachment dan bcc serta lain sebagainya.</p>
<p style="text-align: left;">Untuk yang menggunakan template view kita harus membuat view yang berisi template yang akan digunakan. Berikut adalah script yang saya buat (folder<em> email </em>dengan nama file<em> template</em>).</p>
<pre class="lang:default decode:true EnlighterJSRAW ">&lt;head&gt;
   &lt;meta content="text/html; charset=utf8" http-equiv="Content-Type"/&gt;
   &lt;title&gt;Gracias por configurar la facturaci=C3=B3n en G&amp;nbsp;Suite&lt;/title&gt;
   &lt;style type="text/css"&gt;.ExternalClass {
      width: 100%;
      }
      .ExternalClass, .ExternalClass p, .ExternalClass span, .ExternalClass font,=
      .ExternalClass td, .ExternalClass div {
      line-height: 100%;
      }
      body {
      -webkit-text-size-adjust: none;
      -ms-text-size-adjust: none;
      margin: 0;
      padding: 0;
      }
      table {
      border-collapse: collapse;
      mso-table-lspace: 0pt;
      mso-table-rspace: 0pt;
      }
      table td {
      border-collapse: collapse;
      }
      img {
      outline: none;
      text-decoration: none;
      -ms-interpolation-mode: bicubic;
      }
      a img {
      border: none;
      }
      p {
      margin: 0;
      padding: 0;
      margin-bottom: 0;
      }
      .forApple a {
      color: #666666 !important;
      text-decoration: none !important;
      }
   &lt;/style&gt;
&lt;/head&gt;
&lt;body dir="ltr"&gt;
   &lt;img alt="Anuncio" border="0" height="1" src="" width="1"&gt;
   &lt;table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0"
      style="background-color:#ffffff" width="100%"&gt;
      &lt;tr&gt;
         &lt;td align="center"&gt;
            &lt;div style="max-width:558px;margin:0 auto;padding:0 10px"&gt;
            &lt;table align="center" border="0" cellpadding="0" cellspacing="0" st
            yle="max-width:558px;padding:0;margin:0;font-family:Arial,Helvetica,sans-=
            serif;font-weight:normal;font-size:13px;line-height:18px;color:#444444;text=
            -align:left" width="100%"&gt;
      &lt;tr&gt;
         &lt;td style="font-family:Arial,Helvetica,sans-serif;font-weight:normal;font=
         -size:12px;line-height:20px;color:#444444;padding:5px 0" width="100%"&gt;
         Tes Template &lt;a href="" style="text-decoration:no=
         ne;color:#1155cc" target="_blank"&gt;Agus Biji Corps&lt;/a&gt;
         &lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
      &lt;tr&gt;
         &lt;td align="left" style="font-family:Arial,Helvetica,sans-serif;font-wei=
         ght:normal;font-size:15px;line-height:18px;padding:22px 0 8px 10px;border-c=
         ollapse:collapse;border-bottom:1px solid #dcdcdc" valign="top" width="1=
         00%"&gt;
         &lt;img alt="Google" border="0" height="40" src="http://www.xapps.link/views/unnamed.png" style="display:block"&gt;
         &lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
         &lt;td style="padding:44px 0 0" width="100%"&gt;
         &lt;table bgcolor="#ffffff" border="0" cellpadding="0" cellspacing="0"
         style="font-family:Arial,Helvetica,sans-serif;font-weight:normal;font-si=
         ze:13px;line-height:18px;color:#444444;background-color:#ffffff;padding:0;m=
         argin:0" width="100%"&gt;
      &lt;tr&gt;
         &lt;td align="center" style="font-family:Arial,Helvetica,sans-serif;font-w=
         eight:normal;font-size:28px;line-height:32px;color:#1a1a1a;font-weight:norm=
         al" valign="top" width="100%"&gt;
       	Judul Template&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
         &lt;td align="center" style="padding:15px 20px 0;font-family:Arial,Helveti=
         ca,sans-serif;font-weight:normal;font-size:15px;line-height:22px;color:#444=
         444" valign="top" width="100%"&gt;
         Sub Judul Template&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
         &lt;td style="padding:20px 0 0" width="100%"&gt;
         &lt;table align="left" border="0" cellpadding="0" cellspacing="0" widt
            h="380"&gt;
            &lt;tr&gt;
               &lt;td align="left" style="padding:20px 0 0;font-family:Arial,Helvetica,sa=
               ns-serif;font-weight:normal;font-size:15px;line-height:22px;color:#333333;f=
               ont-weight:bold" valign="top" width="100%"&gt;
              	Halo {{ $request-&gt;email }}
              &lt;/td&gt;
            &lt;/tr&gt;
            &lt;tr&gt;
               &lt;td align="left" style="padding:10px 30px 0 0;font-family:Arial,Helveti=
               ca,sans-serif;font-weight:normal;font-size:13px;line-height:18px;color:#333=
               333" valign="top" width="100%"&gt;
              	{{ $request-&gt;pesan }}
               &lt;/td&gt;
            &lt;/tr&gt;
            &lt;tr&gt;
               &lt;td width="100%"&gt;
                  &lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;
                     &lt;tr&gt;
                        &lt;td align="left" style="padding:10px 10px 0 0;font-family:Arial,Helvet=
                        ica,sans-serif;font-weight:normal;font-size:13px;line-height:18px;color:#33=
                        3333" valign="top" width="50%"&gt;
                        Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.&lt;/td&gt;
                        
                     &lt;/tr&gt;
            
                  &lt;/table&gt;
               &lt;/td&gt;
            &lt;/tr&gt;
         &lt;/table&gt;
         &lt;table align="left" border="0" cellpadding="0" cellspacing="0" widt
            h="155"&gt;
            &lt;tr&gt;
               &lt;td style="padding:20px 0 0" width="100%"&gt;
               &lt;table align="left" border="0" cellpadding="0" cellspacing="0" styl
                  e="font-family:Arial,sans-serif;margin:0;padding:0;border-collapse:collap=
                  se"&gt;
                  &lt;tr height="36"&gt;
                     &lt;td bgcolor="#3369E8" class="btn-left" height="36" width="3"&gt;
                        &lt;img border="0" height="36" src="http://www.gstatic.com/gmktg/mtv-img=
                           /left_of_button.png" style="display:block" width="3"&gt;
                     &lt;/td&gt;
                     &lt;td bgcolor="#3369E8"&gt;
                        &lt;table align="center" border="0" cellpadding="0" cellspacing="0"&gt;
                           &lt;tr&gt;
                              &lt;td align="center" background="http://www.gstatic.com/gmktg/mtv-img/mid=
                              dle_of_button.png" class="btn-mid" height="36" style="background-repe=
                              at:repeat-x;background-image:url('http://www.gstatic.com/gmktg/mtv-img/midd=
                              le_of_button.png')" valign="middle" width="100"&gt;
                              &lt;table align="center" border="0" cellpadding="0" cellspacing="0" st
                              yle="margin-top:0;margin-right:0;margin-left:0;padding-top:0;padding-righ=
                              t:0;padding-bottom:0;padding-left:0;border-collapse:collapse"&gt;
                           &lt;tr&gt;
                              &lt;td align="center" height="20" style="text-align:center;line-height:2=
                                 0px" valign="middle" width="100"&gt;
                                 &lt;a class="thebtn" href="https:/mragus.com/" style="margin:0;p=
                                 adding:0;text-align:center;color:#ffffff;font-weight:normal;font-size:13px;=
                                 display:block;text-decoration:none;font-family:Arial,Helvetica,sans-serif" 
                                 target="_blank"&gt;Cek Link Ini&lt;/a&gt;
                              &lt;/td&gt;
                           &lt;/tr&gt;
                        &lt;/table&gt;
                     &lt;/td&gt;
                  &lt;/tr&gt;
               &lt;/table&gt;
               &lt;/td&gt;
               &lt;td bgcolor="#3369E8" class="btn-right" height="36" width="3"&gt;
                  &lt;img border="0" height="36" src="http://www.gstatic.com/gmktg/mtv-img=
                     /right_of_button.png" style="display:block" width="3"&gt;
               &lt;/td&gt;
            &lt;/tr&gt;
         &lt;/table&gt;
         &lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
         &lt;td align="left" style="padding:10px 0 0;font-family:Arial,Helvetica,sa=
         ns-serif;font-weight:normal;font-size:13px;line-height:18px;color:#333333" 
         valign="top" width="100%"&gt;
         &lt;a href="#?utm_source=3420083&amp;utm_medium=email&amp;utm_campaign=
            =trials1" style="color:#333333;text-decoration:none" target="_blank"&gt;
         &lt;font color="#333333"&gt;bijiagus.com&lt;/font&gt;&lt;/a&gt;
         &lt;/td&gt;
      &lt;/tr&gt;
   &lt;/table&gt;
   &lt;/td&gt;
   &lt;/tr&gt;
   &lt;tr&gt;
      &lt;td width="100%"&gt;
         &lt;table align="left" border="0" cellpadding="0" cellspacing="0" widt
            h="380"&gt;
            &lt;tr&gt;
               &lt;td align="left" style="padding:20px 30px 0 0;font-family:Arial,Helveti=
               ca,sans-serif;font-weight:normal;font-size:13px;line-height:18px;color:#333=
               333" valign="top" width="100%"&gt;Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.&lt;/td&gt;
            &lt;/tr&gt;
         &lt;/table&gt;
      &lt;/td&gt;
   &lt;/tr&gt;
   &lt;tr&gt;
      &lt;td align="left" style="padding:20px 0 40px;font-family:Arial,Helvetica=
      ,sans-serif;font-weight:normal;font-size:13px;line-height:18px;color:#33333=
      3;border-collapse:collapse;border-bottom:1px solid #dcdcdc" valign="top" 
      width="100%"&gt;
      Agus Wiji Suhariono         &lt;br&gt;
      &lt;strong&gt;agus@bijiagus.com&lt;/strong&gt;
      &lt;/td&gt;
   &lt;/tr&gt;
   &lt;/table&gt;
   &lt;/td&gt;
   &lt;/tr&gt;
   &lt;tr&gt;
      &lt;td style="font-family:Arial,Helvetica,sans-serif;font-weight:normal;font=
      -size:10px;line-height:14px;color:#666666;padding:20px 0 0" width="100%"&gt;
      &lt;span class="forApple"&gt;© Contoh Template Di ambil dari bootsnip.com&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;/td&gt;
   &lt;/tr&gt;
   &lt;/table&gt;
   &lt;/div&gt;
   &lt;/td&gt;
   &lt;/tr&gt;
   &lt;/table&gt;</pre>
<h3 style="text-align: left;">Testing</h3>
<p style="text-align: left;">Setelah semua script di atas sudah di buat semua, saatnya kita mengetes nya. Isi form dan sesuaikan datanya. Pada test pertama saya akan memilih mengirim email tanpa menggunakan template.</p>
<div id="attachment_2306" style="width: 538px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2306" decoding="async" loading="lazy" class="wp-image-2306 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono090.png" alt="Mengirim Email Menggunakan Framework Laravel" width="528" height="210" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono090.png 1852w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono090-300x119.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono090-768x305.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono090-1024x407.png 1024w" sizes="(max-width: 528px) 100vw, 528px" /><p id="caption-attachment-2306" class="wp-caption-text">Mengirim Email Menggunakan Framework Laravel</p></div>
<p style="text-align: left;">Berikut adalah tampilan email yang saya terima.</p>
<div id="attachment_2307" style="width: 543px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2307" decoding="async" loading="lazy" class="wp-image-2307 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono091-1024x462.png" alt="Mengirim Email Menggunakan Framework Laravel" width="533" height="240" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono091-1024x462.png 1024w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono091-300x135.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono091-768x346.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono091.png 1553w" sizes="(max-width: 533px) 100vw, 533px" /><p id="caption-attachment-2307" class="wp-caption-text">Mengirim Email Menggunakan Framework Laravel</p></div>
<p style="text-align: left;">Selanjutnya kita akan tes dengan opsi menggunakan template.</p>
<div id="attachment_2308" style="width: 540px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2308" decoding="async" loading="lazy" class="wp-image-2308 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono092.png" alt="Mengirim Email Menggunakan Framework Laravel" width="530" height="291" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono092.png 1578w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono092-300x165.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono092-768x421.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono092-1024x562.png 1024w" sizes="(max-width: 530px) 100vw, 530px" /><p id="caption-attachment-2308" class="wp-caption-text">Mengirim Email Menggunakan Framework Laravel</p></div>
<p style="text-align: left;">Terdapat perbedaan bukan, tampilan yang menggunakan template akan terlihat lebih rapi dan bagus. Untuk Selanjutnya anda dapat mengembangkan template sesuai dengan desain yang anda inginkan. Sekian tutorial dari saya ini, semoga dapat bermanfaat dan digunakan dengan baik.</p>
<p style="text-align: left;">Terimakasih.</p>
<p>The post <a rel="nofollow" href="https://mragus.com/mengirim-email-menggunakan-framework-laravel/">Mengirim Email Menggunakan Framework Laravel</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/mengirim-email-menggunakan-framework-laravel/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Belajar Membuat Tabel View di MySql</title>
		<link>https://mragus.com/belajar-membuat-tabel-view-di-mysql/</link>
					<comments>https://mragus.com/belajar-membuat-tabel-view-di-mysql/#comments</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Mon, 01 May 2017 12:55:40 +0000</pubDate>
				<category><![CDATA[MySql]]></category>
		<category><![CDATA[Mysql]]></category>
		<category><![CDATA[pemrograman]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=2263</guid>

					<description><![CDATA[<p>Assalamualaikum wr wb, pada tulisan kali ini saya akan berbagi ilmu dengan judul Belajar Membuat Tabel View di MySql. Tabel View merupakan tabel virtual yang di buat dengan query tertentu untuk menampilkan data dari satu tabel atau lebih dengan&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/belajar-membuat-tabel-view-di-mysql/">Belajar Membuat Tabel View di MySql</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;">Assalamualaikum wr wb, pada tulisan kali ini saya akan berbagi ilmu dengan judul Belajar Membuat Tabel View di MySql. Tabel View merupakan tabel virtual yang di buat dengan query tertentu untuk menampilkan data dari satu tabel atau lebih dengan tujuan untuk memudahkan dalam penyajian data. Hal ini akan sangat cocok misalnya kita akan membuat sebuah rekap yang berasal dari banyak tabel dengan jumlah data yang sangat <span id="more-2263"></span>banyak. Dalam tutorial ini saya akan memberikan penjelasan untuk membuat, mengedit dan menghapus tabel view di MySql.</p>
<p style="text-align: left;">Tabel yang saya gunakan adalah tabel propinsi dan kabupaten di Indonesia. Saya ingin membuat rekap data untuk menampilkan jumlah kabupaten dan kota pada tiap tiap propinsi. Untuk lebih jelasnya, silahkan simak penjelasan saya di bawah ini.</p>
<h2 style="text-align: left;">Belajar Membuat Tabel View di MySql</h2>
<p style="text-align: left;">Saya menggunakan dua tabel dalam tutorial kali ini dengan Tabel kabupaten kota memiliki relasi dengan tabel propinsi. Untuk struktur tabelnya adalah sebagai berikut.</p>
<p style="text-align: left;"><strong>tb_propinsi</strong></p>
<pre class="lang:default decode:true EnlighterJSRAW">+--------------+-------------+------+-----+---------+-----------------------------+
| Field        | Type        | Null | Key | Default | Extra                       |
+--------------+-------------+------+-----+---------+-----------------------------+
| propinsi_id  | int(11)     | NO   | PRI | NULL    | auto_increment              |
| nama         | varchar(45) | NO   |     | NULL    |                             |
| dalam_negeri | tinyint(4)  | YES  |     | NULL    |                             |
| created_at   | datetime    | YES  |     | NULL    | on update CURRENT_TIMESTAMP |
| updated_at   | datetime    | YES  |     | NULL    |                             |
+--------------+-------------+------+-----+---------+-----------------------------+
5 rows in set (0,00 sec)
</pre>
<p style="text-align: left;"><strong>tb_kabupaten_kota</strong></p>
<pre class="lang:default decode:true EnlighterJSRAW">+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| kab_id      | int(11)      | NO   | PRI | NULL    | auto_increment |
| nama        | varchar(150) | NO   |     | NULL    |                |
| propinsi_id | int(11)      | NO   | MUL | NULL    |                |
| kab_kodya   | int(11)      | YES  |     | NULL    |                |
+-------------+--------------+------+-----+---------+----------------+
4 rows in set (0,00 sec)
</pre>
<h3 style="text-align: left;">Query</h3>
<p style="text-align: left;">Langkah berikutnya saya membuat query untuk menampilan jumlah data kabupaten dan kota per propinsi. Untuk Query dan hasilnya sebagai berikut.</p>
<pre class="lang:default decode:true EnlighterJSRAW">SELECT p.nama as nama_propinsi, 
(SELECT COUNT(kb.kab_id) FROM tb_kabupaten_kota kb WHERE kb.propinsi_id=p.propinsi_id) as total_kabupaten_kota
FROM tb_propinsi p</pre>
<p style="text-align: left;">Hasil.</p>
<div id="attachment_2273" style="width: 535px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2273" decoding="async" loading="lazy" class="wp-image-2273 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono006.png" alt="Belajar Membuat Tabel View di MySql" width="525" height="311" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono006.png 1463w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono006-300x177.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono006-768x454.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono006-1024x605.png 1024w" sizes="(max-width: 525px) 100vw, 525px" /><p id="caption-attachment-2273" class="wp-caption-text">Belajar Membuat Tabel View di MySql</p></div>
<h4 style="text-align: left;">Membuat / Create Tabel View</h4>
<p style="text-align: left;">Setelah query dirasa cukup dan benar, langkah selanjutnya kita buat tabel view. Untuk membuat tabel view query-nya sangatlah mudah.</p>
<p style="text-align: left;"><em>CREATE VIEW nama_view AS query</em></p>
<p style="text-align: left;">Untuk sciptnya adalah sebagai berikut.</p>
<pre class="lang:default decode:true EnlighterJSRAW">CREATE VIEW rekap_kabupaten_per_propinsi AS SELECT p.nama as nama_propinsi, 
(SELECT COUNT(kb.kab_id) FROM tb_kabupaten_kota kb WHERE kb.propinsi_id=p.propinsi_id) as total_kabupaten_kota
FROM tb_propinsi p</pre>
<p style="text-align: left;">Setelah query di eksekusi, kita akan menemukan tabel view yang berhasil kita buat.</p>
<div id="attachment_2274" style="width: 285px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2274" decoding="async" loading="lazy" class="wp-image-2274 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono007.png" alt="Belajar Membuat Tabel View di MySql" width="275" height="517" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono007.png 415w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono007-160x300.png 160w" sizes="(max-width: 275px) 100vw, 275px" /><p id="caption-attachment-2274" class="wp-caption-text">Belajar Membuat Tabel View di MySql</p></div>
<p style="text-align: left;">Kemudian kita select data dari tabel view tersebut, dan hasilnya adalah sebagai berikut.</p>
<div id="attachment_2275" style="width: 544px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2275" decoding="async" loading="lazy" class="wp-image-2275 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono008.png" alt="Belajar Membuat Tabel View di MySql" width="534" height="318" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono008.png 1454w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono008-300x178.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono008-768x457.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono008-1024x609.png 1024w" sizes="(max-width: 534px) 100vw, 534px" /><p id="caption-attachment-2275" class="wp-caption-text">Belajar Membuat Tabel View di MySql</p></div>
<h4 style="text-align: left;">Mengedit  / Update Tabel View</h4>
<p style="text-align: left;">Untuk langkah selanjutnya saya akan mengupdate tabel view dengan menampilkan jumlah kabupaten dan kota per propinsi. Untuk mengupdate tabel view query nya sebagai berikut</p>
<p style="text-align: left;"><em>CREATE OR REPLACE VIEW nama_view AS query</em></p>
<p style="text-align: left;">Untuk query lengkapnya sebagai berikut.</p>
<pre class="lang:default decode:true EnlighterJSRAW ">CREATE OR REPLACE VIEW rekap_kabupaten_per_propinsi AS SELECT p.nama as nama_propinsi, 
(SELECT COUNT(kb.kab_id) FROM tb_kabupaten_kota kb WHERE kb.propinsi_id=p.propinsi_id) as total_kabupaten_kota,
(SELECT COUNT(kb.kab_id) FROM tb_kabupaten_kota kb WHERE kb.propinsi_id=p.propinsi_id AND kab_kodya=1) as jml_kab,
(SELECT COUNT(kb.kab_id) FROM tb_kabupaten_kota kb WHERE kb.propinsi_id=p.propinsi_id AND kab_kodya=2) as jml_kodya
FROM tb_propinsi p</pre>
<p style="text-align: left;"><sup>Keterangan : untuk kab_kodya dengan nilai 1 merupakan kabupaten, dan kab_kodya dengan nilai 2 merupakan kota.</sup></p>
<p style="text-align: left;">Kemudian kita eksekusi query nya.</p>
<div id="attachment_2277" style="width: 538px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2277" decoding="async" loading="lazy" class="wp-image-2277 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono009.png" alt="Belajar Membuat Tabel View di MySql" width="528" height="286" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono009.png 1390w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono009-300x163.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono009-768x416.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono009-1024x555.png 1024w" sizes="(max-width: 528px) 100vw, 528px" /><p id="caption-attachment-2277" class="wp-caption-text">Belajar Membuat Tabel View di MySql</p></div>
<p style="text-align: left;">Setelah Tabel view berhasil kita update, kemudian kita select data dari tabel virtual yang kita update tadi. Untuk hasilnya adalah sebagai berikut.</p>
<div id="attachment_2278" style="width: 534px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2278" decoding="async" loading="lazy" class="wp-image-2278 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono010.png" alt="Belajar Membuat Tabel View di MySql" width="524" height="380" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono010.png 1186w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono010-300x217.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono010-768x556.png 768w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono010-1024x742.png 1024w" sizes="(max-width: 524px) 100vw, 524px" /><p id="caption-attachment-2278" class="wp-caption-text">Belajar Membuat Tabel View di MySql</p></div>
<h4 style="text-align: left;">Menghapus / Delete Tabel View</h4>
<p style="text-align: left;">Untuk menghapus tabel view query nya adalah sebagai berikut, DROP VIEW nama_view.</p>
<div id="attachment_2279" style="width: 538px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2279" decoding="async" loading="lazy" class="wp-image-2279 " src="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono011.png" alt="Belajar Membuat Tabel View di MySql" width="528" height="411" srcset="https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono011.png 941w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono011-300x233.png 300w, https://mragus.com/wp-content/uploads/2017/05/agus_wiji_suhariono011-768x597.png 768w" sizes="(max-width: 528px) 100vw, 528px" /><p id="caption-attachment-2279" class="wp-caption-text">Belajar Membuat Tabel View di MySql</p></div>
<p style="text-align: left;">Tabel Virtual ini akan sangat membantu kita dalam membuat rekap dan tampilan data dari satu tabel atau lebih sesuai dengan yang kita inginkan. Kita tidak perlu membuat sebuah aplikasi terlebih dahulu untuk sebuah penyajian data yang di butuhkan dengan cepat. Kita hanya perlu melakukan query dan membuat tabel view dengan tampilan yang bisa kita sesuaikan. Sekian tutorial dan tulisan saya ini, semoga dapat bermanfaat. Terimakasih.</p>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/belajar-membuat-tabel-view-di-mysql/">Belajar Membuat Tabel View di MySql</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/belajar-membuat-tabel-view-di-mysql/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Membuat Pagination di Modal Bootstrap dengan Framework Laravel</title>
		<link>https://mragus.com/membuat-pagination-di-modal-bootstrap-dengan-framework-laravel/</link>
					<comments>https://mragus.com/membuat-pagination-di-modal-bootstrap-dengan-framework-laravel/#comments</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Sun, 12 Mar 2017 15:07:39 +0000</pubDate>
				<category><![CDATA[Laravel Framework]]></category>
		<category><![CDATA[laravel]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=2122</guid>

					<description><![CDATA[<p>Assalamualaikum wr wb, pada kesempatan kali ini saya akan membagi tutorial tentang cara membuat Pagination di Modal Bootstrap dengan Framework Laravel. Modal bootstrap merupakan konten yang berupa kotak dialog untuk menampilkan informasi tertentu. Terdapat banyak pertanyaan dari teman-teman pada&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/membuat-pagination-di-modal-bootstrap-dengan-framework-laravel/">Membuat Pagination di Modal Bootstrap dengan Framework Laravel</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;">Assalamualaikum wr wb, pada kesempatan kali ini saya akan membagi tutorial tentang cara membuat Pagination di <a href="https://mragus.com/membuat-modal-bootstrap-di-framework-laravel/">Modal Bootstrap</a> dengan Framework Laravel. Modal bootstrap merupakan konten yang berupa kotak dialog untuk menampilkan informasi tertentu. <span id="more-2122"></span></p>
<p style="text-align: left;">Terdapat banyak pertanyaan dari teman-teman pada waktu menampilkan sebuat tabel pada modal bootstrap, ketika di klik pada paginationnya, halaman akan lepas dan keluar dari modal.</p>
<h2>Membuat Pagination di Modal Bootstrap dengan Framework Laravel</h2>
<p style="text-align: left;">Hal ini terkadang menjadi dilema bagi seorang programmer, kita dapat menampilkan sebuah informasi penunjang berupa tabel pada modal bootstrap pada aplikasi kita, tetapi terkadang kita memilih menampilkan informasi itu pada halaman lain, karena terkendala masalah pagination dan data yang terlalu banyak.</p>
<p style="text-align: left;">Tetapi hal tersebut dapat diatasi dengan mudah dengan menambahkan JQuery sehingga request akan dijalankan dalam bentuk Ajax.</p>
<p style="text-align: left;">Oke, tanpa basa basi langsung saja kita membuat Pagination di Modal Bootstrap dengan Framework Laravel <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> .</p>
<h3 style="text-align: left;">Struktur Tabel</h3>
<p style="text-align: left;">Tabel yang saya gunakan adalah tabel post dengan jumlah data 1000 rows.</p>
<pre class="lang:default decode:true EnlighterJSRAW">mysql&gt; desc posts;
+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| id          | int(11)      | NO   | PRI | NULL    | auto_increment |
| author_id   | int(11)      | NO   |     | NULL    |                |
| title       | varchar(255) | NO   |     | NULL    |                |
| description | varchar(500) | NO   |     | NULL    |                |
| content     | text         | NO   |     | NULL    |                |
| date        | date         | NO   |     | NULL    |                |
+-------------+--------------+------+-----+---------+----------------+
</pre>
<p style="text-align: left;">Langkah pertama, kita buat script untuk menampilkan modal dengan ukuran large pada layouts (agar bisa di pakai di konten yang lain).</p>
<pre class="lang:default decode:true EnlighterJSRAW">&lt;div class="modal fade" id="modalLg" role="dialog" aria-labelledby="myModalLabel" data-keyboard="false" data-backdrop="static"&gt;
    &lt;div class="modal-dialog modal-lg" role="document"&gt;
         &lt;div class="modal-content"&gt;
              &lt;div class="modal-header"&gt;
                   &lt;button type="button" class="close" data-dismiss="modal" aria-label="Close"&gt;&lt;span aria-hidden="true"&gt;&amp;times;&lt;/span&gt;&lt;/button&gt;
                         &lt;h4 class="modal-title" id="modalLgTitle"&gt;&lt;/h4&gt;
              &lt;/div&gt;
              &lt;div class="modal-body"&gt;
                   &lt;div class="modalError"&gt;&lt;/div&gt;
                   &lt;div id="modalLgContent"&gt;&lt;/div&gt;
              &lt;/div&gt;
          &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;</pre>
<p style="text-align: left;">Tambahkan javascript yang di gunakan untuk menampilkan modal Large.</p>
<pre class="lang:default decode:true EnlighterJSRAW">$('.modalLg').off('click').on('click', function (e) {
        $("#modalLg").modal('show');
        $('#modalLgContent').load($(this).attr('href'));
        $('#modalLgTitle').html($(this).attr('title'));
        e.preventDefault();
    });</pre>
<p style="text-align: left;">Selanjutnya buat contoller untuk menampilkan halaman yang isinya tombol view data.</p>
<pre class="lang:default decode:true EnlighterJSRAW">public function modalPagination(){
        return view('site.modalPagination');
    }</pre>
<p style="text-align: left;">untuk view modalPagination.blade.php.</p>
<pre class="lang:default decode:true EnlighterJSRAW">@extends('layouts.main')

@section('title', 'Modal Pagination')
@section('content')
&lt;div class="row"&gt;
 &lt;div class="col-lg-12"&gt;
  &lt;a class="btn btn-success modalLg" href="{{ action('SiteController@viewModalPagination') }}" title="Pagination di Modal"&gt;View Data&lt;/a&gt;
 &lt;/div&gt;
&lt;/div&gt;
@endsection</pre>
<p style="text-align: left;">Kemudian buat controler untuk menampilkan view yang akan muncul pada konten modal bootstrap.</p>
<pre class="lang:default decode:true EnlighterJSRAW">public function viewModalPagination(){
        $dataPost = Post::orderBy('title','ASC')-&gt;paginate(5);
        return view('site.viewModalPagination',compact('dataPost'))-&gt;renderSections()['content'];
    }</pre>
<p style="text-align: left;">Lanjutkan membuat viewnya viewModalPagination.blade.php, untuk javascriptnya saya buat juga pada file ini, berikut adalah scriptnya :</p>
<pre class="lang:default decode:true EnlighterJSRAW ">@extends('layouts.main')

@section('title', 'Modal Pagination')
@section('content')
&lt;script type="text/javascript"&gt;
    $(document).on('ajaxComplete ajaxReady ready', function () {
        $('ul.pagination li a').off('click').on('click', function (e) {
            $("#modalLg").modal('show');
            $('#modalLgContent').load($(this).attr('href'));
            $('#modalLgTitle').html($(this).attr('title'));
            e.preventDefault();
        });
    });
&lt;/script&gt;
&lt;div class="row"&gt;
    &lt;div class="col-lg-12"&gt;
        &lt;i&gt;Jumlah Data : {{ $dataPost-&gt;total() }}&lt;/i&gt;
        &lt;table class="table table-bordered" id="post-table"&gt;
            &lt;thead&gt;
                &lt;tr&gt;
                    &lt;th&gt;Id&lt;/th&gt;
                    &lt;th&gt;Author ID&lt;/th&gt;
                    &lt;th&gt;Title&lt;/th&gt;
                    &lt;th&gt;Description&lt;/th&gt;
                    &lt;th&gt;Content&lt;/th&gt;
                    &lt;th&gt;Date&lt;/th&gt;
                &lt;/tr&gt;
            &lt;/thead&gt;
            &lt;tbody&gt;
                @if($dataPost-&gt;total() &gt; 0)
                @foreach($dataPost as $row)
                &lt;tr&gt;
                    &lt;td&gt;{{ $row-&gt;id }}&lt;/td&gt;
                    &lt;td&gt;{{ $row-&gt;author-&gt;first_name }}&lt;/td&gt;
                    &lt;td&gt;{{ $row-&gt;title }}&lt;/td&gt;
                    &lt;td&gt;{{ $row-&gt;description }}&lt;/td&gt;
                    &lt;td&gt;{{ $row-&gt;content }}&lt;/td&gt;
                    &lt;td&gt;{{ $row-&gt;date }}&lt;/td&gt;
                &lt;/tr&gt;
                @endforeach
                @else
                &lt;tr&gt;
                    &lt;td colspan="6"&gt;Data tidak tersedia&lt;/td&gt;
                &lt;/tr&gt;
                @endif
            &lt;/tbody&gt;
        &lt;/table&gt;
        {!! $dataPost-&gt;links() !!}
    &lt;/div&gt;
&lt;/div&gt;
@endsection</pre>
<h3 style="text-align: left;">Uji Coba</h3>
<p style="text-align: left;">Setelah semua script di atas di buat, kita mulai uji coba dengan menampilkan halaman index yang terdapat tombol viewdata.</p>
<p style="text-align: left;"><img decoding="async" loading="lazy" class="aligncenter wp-image-2126 " src="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_016-1024x453.jpg" alt="Membuat Pagination di Modal Bootstrap dengan Framework Laravel" width="530" height="234" srcset="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_016-1024x453.jpg 1024w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_016-300x133.jpg 300w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_016-768x339.jpg 768w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_016.jpg 1199w" sizes="(max-width: 530px) 100vw, 530px" /></p>
<p style="text-align: left;">Kemudian klik tombol tersebut untuk menampilkan modal bootstrap.</p>
<p style="text-align: left;"><img decoding="async" loading="lazy" class="aligncenter wp-image-2127 " src="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_017.jpg" alt="Membuat Pagination di Modal Bootstrap dengan Framework Laravel" width="630" height="431" srcset="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_017.jpg 1318w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_017-300x205.jpg 300w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_017-768x525.jpg 768w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_017-1024x700.jpg 1024w" sizes="(max-width: 630px) 100vw, 630px" /></p>
<p style="text-align: left;">Untuk mencoba, klik link paginationnya.</p>
<div id="attachment_2128" style="width: 592px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2128" decoding="async" loading="lazy" class="wp-image-2128 " src="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_018.jpg" alt="Membuat Pagination di Modal Bootstrap dengan Framework Laravel" width="582" height="420" srcset="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_018.jpg 1241w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_018-300x216.jpg 300w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_018-768x554.jpg 768w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_018-1024x739.jpg 1024w" sizes="(max-width: 582px) 100vw, 582px" /><p id="caption-attachment-2128" class="wp-caption-text">Membuat Pagination di Modal Bootstrap dengan Framework Laravel</p></div>
<p style="text-align: left;">Kita bisa lihat di console, pagination request menggunakan ajax.</p>
<div id="attachment_2129" style="width: 545px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2129" decoding="async" loading="lazy" class="wp-image-2129 " src="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_019.jpg" alt="Membuat Pagination di Modal Bootstrap dengan Framework Laravel" width="535" height="181" srcset="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_019.jpg 1434w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_019-300x101.jpg 300w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_019-768x260.jpg 768w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_019-1024x346.jpg 1024w" sizes="(max-width: 535px) 100vw, 535px" /><p id="caption-attachment-2129" class="wp-caption-text">Membuat Pagination di Modal Bootstrap dengan Framework Laravel</p></div>
<p style="text-align: left;">Mudah bukan <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> , sekian tutorial dari saya, semoga dapat bermanfaat, tetap belajar dan berusaha. Terimakasih.</p>
<p style="text-align: left;">source code : <a href="https://github.com/AgusWijiSuhariono/demoApp">https://github.com/AgusWijiSuhariono/demoApp</a></p>
<p>The post <a rel="nofollow" href="https://mragus.com/membuat-pagination-di-modal-bootstrap-dengan-framework-laravel/">Membuat Pagination di Modal Bootstrap dengan Framework Laravel</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/membuat-pagination-di-modal-bootstrap-dengan-framework-laravel/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Cara menginstall NetBeans di Ubuntu</title>
		<link>https://mragus.com/cara-menginstall-netbeans-di-ubuntu/</link>
					<comments>https://mragus.com/cara-menginstall-netbeans-di-ubuntu/#respond</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Sun, 05 Mar 2017 16:26:22 +0000</pubDate>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[software]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=2064</guid>

					<description><![CDATA[<p>Assalamualaikum wr wb, pada kesempatan kali ini saya akan membagikan tutorial singkat tentang bagaimana cara menginstall netbeans di ubuntu. NetBeans merupakan sebuah perangkat lunak dengan basis JAVA dan digunakan untuk mengembangkan sebuah aplikasi. NetBeans dapat berjalan di berbagai Sistem&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/cara-menginstall-netbeans-di-ubuntu/">Cara menginstall NetBeans di Ubuntu</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;">Assalamualaikum wr wb, pada kesempatan kali ini saya akan membagikan tutorial singkat tentang bagaimana cara menginstall netbeans di ubuntu. NetBeans merupakan sebuah perangkat lunak dengan basis JAVA dan digunakan untuk mengembangkan sebuah aplikasi. NetBeans dapat berjalan di berbagai Sistem Operasi seperti Windows, Linux, Mac OS dan Sistem Operasi yang lain yang telah mendukung JVM. NetBeans  pertama kali<span id="more-2064"></span> di kembangkan oleh <a href="https://en.wikipedia.org/wiki/Sun_Microsystems">Sun Microsystem</a> dan sekarang telah dimiliki oleh perusahaan raksasa di bidang Teknologi Komputer <a href="https://en.wikipedia.org/wiki/Oracle_Corporation">Oracle</a>.</p>
<p style="text-align: left;">Netbeans awalnya di desain untuk mengembangkan aplikasi berbasis JAVA, tetapi seiring dengan berjalannya waktu sekarang sudah mendukung untuk bahasa pemrograman yang lain seperti PHP, C++ dan HTML5. Saya sudah lama menggunakan aplikasi ini, kira kira mulai dari kuliah sampai sekarang untuk membantu berbagai hal dalam pekerjaan, coding tentunya. NetBeans saya percaya karena kehandalanya dalam membaca sebuah library pada aplikasi yang saya buat meskipun menggunakan sebuah framework, seperti Laravel ataupun Yii2. Tanpa basa &#8211; basi lagi, langsung saja kita mulai cara menginstall NetBeans di Ubuntu.</p>
<h3 style="text-align: left;">Instalasi</h3>
<p style="text-align: left;">Langkah pertama adalah kita harus menginstall JDK terlebih dahulu, karena netbeans yang akan saya pakai adalah versi 8.0.2 maka untuk JDK nya kita butuhkan yang versi 8.</p>
<p style="text-align: left;">Untuk proses instalasi JDK anda dapat lihat di postingan saya sebelumnya <a href="https://mragus.com/cara-menginstall-jdk-di-ubuntu/">disini</a>. Kemudian download netbeans terlebih dahulu pada website resminya <a href="https://netbeans.org/downloads/">disini</a>.</p>
<div id="attachment_2069" style="width: 536px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2069" decoding="async" loading="lazy" class="wp-image-2069 " src="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_004-1024x571.png" alt="Cara menginstall NetBeans di Ubuntu" width="526" height="293" srcset="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_004-1024x571.png 1024w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_004-300x167.png 300w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_004-768x428.png 768w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_004.png 1774w" sizes="(max-width: 526px) 100vw, 526px" /><p id="caption-attachment-2069" class="wp-caption-text">Cara menginstall NetBeans di Ubuntu</p></div>
<p style="text-align: left;">Dari gambar di atas anda dapat melihat berbagai macam netbeans dengan beberapa support teknologi. Download aplikasi NetBeans sesuai kebutuhan anda dan jangan lupa sesuaikan platform yang anda gunakan (pada tutorial ini tentunya plarform yang digunakan adalah Linux).</p>
<p style="text-align: left;">Setelah selesai mendownload, buka terminal dan arahkan direktori ke tempat file (biasanya pada folder download). Kemudian buat file netbeans yang di download agar dapat di eksekusi dengan perintah berikut (tanpa tanda &#8221; &#8220;):</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">sudo chmod +x "file netbeans"</pre>
<p style="text-align: left;">dan untuk instalasinya masukkan perintah berikut (tanpa tanda &#8221; &#8220;):</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">./"file netbeans"</pre>
<div id="attachment_2070" style="width: 534px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2070" decoding="async" loading="lazy" class="wp-image-2070 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_331-1024x671.png" alt="Cara menginstall NetBeans di Ubuntu" width="524" height="344" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_331-1024x671.png 1024w, https://mragus.com/wp-content/uploads/2017/03/Selection_331-300x197.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_331-768x503.png 768w, https://mragus.com/wp-content/uploads/2017/03/Selection_331.png 1229w" sizes="(max-width: 524px) 100vw, 524px" /><p id="caption-attachment-2070" class="wp-caption-text">Cara menginstall NetBeans di Ubuntu</p></div>
<p style="text-align: left;">tunggu proses sampai GUI untuk Instalasi muncul.</p>
<div id="attachment_2071" style="width: 540px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2071" decoding="async" loading="lazy" class="wp-image-2071 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_332.png" alt="Cara menginstall NetBeans di Ubuntu" width="530" height="531" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_332.png 778w, https://mragus.com/wp-content/uploads/2017/03/Selection_332-150x150.png 150w, https://mragus.com/wp-content/uploads/2017/03/Selection_332-300x300.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_332-768x770.png 768w" sizes="(max-width: 530px) 100vw, 530px" /><p id="caption-attachment-2071" class="wp-caption-text">Cara menginstall NetBeans di Ubuntu</p></div>
<p style="text-align: left;">Anda juga dapat memilih paket yang diinginkan dengan memilih customize.</p>
<div id="attachment_2072" style="width: 531px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2072" decoding="async" loading="lazy" class="wp-image-2072 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_333-1024x829.png" alt="Cara menginstall NetBeans di Ubuntu" width="521" height="422" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_333-1024x829.png 1024w, https://mragus.com/wp-content/uploads/2017/03/Selection_333-300x243.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_333-768x622.png 768w, https://mragus.com/wp-content/uploads/2017/03/Selection_333.png 1123w" sizes="(max-width: 521px) 100vw, 521px" /><p id="caption-attachment-2072" class="wp-caption-text">Cara menginstall NetBeans di Ubuntu</p></div>
<p style="text-align: left;">Lanjutkan sampai proses instalasi selesai, klik finish.</p>
<div id="attachment_2073" style="width: 530px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2073" decoding="async" loading="lazy" class="wp-image-2073 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_335.png" alt="Cara menginstall NetBeans di Ubuntu" width="520" height="549" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_335.png 741w, https://mragus.com/wp-content/uploads/2017/03/Selection_335-284x300.png 284w" sizes="(max-width: 520px) 100vw, 520px" /><p id="caption-attachment-2073" class="wp-caption-text">Cara menginstall NetBeans di Ubuntu</p></div>
<p style="text-align: left;">Ketika netbeans sudah terinstall, maka shortcutnya akan muncul di desktop ubuntu anda.</p>
<div id="attachment_2074" style="width: 540px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2074" decoding="async" loading="lazy" class="wp-image-2074 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_336-1024x592.png" alt="Cara menginstall NetBeans di Ubuntu" width="530" height="306" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_336-1024x592.png 1024w, https://mragus.com/wp-content/uploads/2017/03/Selection_336-300x173.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_336-768x444.png 768w, https://mragus.com/wp-content/uploads/2017/03/Selection_336.png 1222w" sizes="(max-width: 530px) 100vw, 530px" /><p id="caption-attachment-2074" class="wp-caption-text">Cara menginstall NetBeans di Ubuntu</p></div>
<p style="text-align: left;">Mudah bukan <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> , sekian tutorial dari saya ini, semoga dapat bermanfaat. Terimakasih <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> .</p>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/cara-menginstall-netbeans-di-ubuntu/">Cara menginstall NetBeans di Ubuntu</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/cara-menginstall-netbeans-di-ubuntu/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cara Menginstall JDK di Ubuntu</title>
		<link>https://mragus.com/cara-menginstall-jdk-di-ubuntu/</link>
					<comments>https://mragus.com/cara-menginstall-jdk-di-ubuntu/#respond</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Sun, 05 Mar 2017 15:26:54 +0000</pubDate>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jdk]]></category>
		<category><![CDATA[pemrograman]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=2048</guid>

					<description><![CDATA[<p>Assalamualaikum wr wb, pada kesempatan kali ini saya akan membagikan tutorial mengenai cara menginstall JDK di Ubuntu. JDK (Java Development KIT) merupakan sebuah perangkat lunak yang di gunakan untuk mengkompile dari Kode Java agar dapat dijalankan oleh JRE (Java&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/cara-menginstall-jdk-di-ubuntu/">Cara Menginstall JDK di Ubuntu</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;">Assalamualaikum wr wb, pada kesempatan kali ini saya akan membagikan tutorial mengenai cara menginstall JDK di Ubuntu. JDK (Java Development KIT) merupakan sebuah perangkat lunak yang di gunakan untuk mengkompile dari Kode Java agar dapat dijalankan oleh JRE (Java Runtime Envirotment). JDK ini juga sangat di butuhkan untuk dapat menjalankan beberapa aplikasi penting, contohnya adalah <a href="https://netbeans.org/">Netbeans</a> dan <a href="https://developer.android.com/studio/index.html">Android Studio</a> <span id="more-2048"></span>yang sekarang lagi tren sebagai IDE untuk aplikasi mobile dengan basis kodenya JAVA.</p>
<p style="text-align: left;">Oke, langsung pada topik pembicaraan, kita mulai eksekusi.</p>
<h3 style="text-align: left;">Cara Menginstall JDK di Ubuntu</h3>
<p style="text-align: left;">Karena belum ada repositori JDK dari Ubuntu, kita tambahkan dulu repositorunya dengan memasukkan perintah ini :</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">sudo add-apt-repository ppa:webupd8team/java</pre>
<p style="text-align: left;"><img decoding="async" loading="lazy" class="aligncenter wp-image-2051 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_326-300x183.png" alt="" width="505" height="308" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_326-300x183.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_326-768x468.png 768w, https://mragus.com/wp-content/uploads/2017/03/Selection_326.png 1020w" sizes="(max-width: 505px) 100vw, 505px" /></p>
<p style="text-align: left;">kemudian update repository dengan menggunakan perintah ini :</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">sudo apt-get update</pre>
<p style="text-align: left;">Tunggu sampai proses selesai.</p>
<div id="attachment_2052" style="width: 536px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2052" decoding="async" loading="lazy" class="wp-image-2052 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_327.png" alt="Cara Menginstall JDK di Ubuntu" width="526" height="334" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_327.png 997w, https://mragus.com/wp-content/uploads/2017/03/Selection_327-300x190.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_327-768x488.png 768w" sizes="(max-width: 526px) 100vw, 526px" /><p id="caption-attachment-2052" class="wp-caption-text">Cara Menginstall JDK di Ubuntu</p></div>
<p style="text-align: left;">Pada ubuntu 16.04, saya menggunakan JDK versi 8,  dan untuk menginstall JDK nya dengan menggunakan perintah di bawah ini :</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">sudo apt install oracle-java8-installer</pre>
<div id="attachment_2053" style="width: 529px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2053" decoding="async" loading="lazy" class="wp-image-2053 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_328.png" alt="Cara Menginstall JDK di Ubuntu" width="519" height="335" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_328.png 1002w, https://mragus.com/wp-content/uploads/2017/03/Selection_328-300x193.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_328-768x495.png 768w" sizes="(max-width: 519px) 100vw, 519px" /><p id="caption-attachment-2053" class="wp-caption-text">Cara Menginstall JDK di Ubuntu</p></div>
<p style="text-align: left;">Pada waktu proses instalasi nanti akan muncul agreement terkait lisensi dan pilih yes, tunggu proses hingga selesai.</p>
<div id="attachment_2054" style="width: 525px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2054" decoding="async" loading="lazy" class="wp-image-2054 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_329-300x193.png" alt="Cara Menginstall JDK di Ubuntu" width="515" height="331" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_329-300x193.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_329-768x494.png 768w, https://mragus.com/wp-content/uploads/2017/03/Selection_329.png 1016w" sizes="(max-width: 515px) 100vw, 515px" /><p id="caption-attachment-2054" class="wp-caption-text">Cara Menginstall JDK di Ubuntu</p></div>
<div id="attachment_2055" style="width: 530px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2055" decoding="async" loading="lazy" class="wp-image-2055 " src="https://mragus.com/wp-content/uploads/2017/03/Selection_330-1024x654.png" alt="Cara Menginstall JDK di Ubuntu" width="520" height="332" srcset="https://mragus.com/wp-content/uploads/2017/03/Selection_330-1024x654.png 1024w, https://mragus.com/wp-content/uploads/2017/03/Selection_330-300x192.png 300w, https://mragus.com/wp-content/uploads/2017/03/Selection_330-768x491.png 768w, https://mragus.com/wp-content/uploads/2017/03/Selection_330.png 1030w" sizes="(max-width: 520px) 100vw, 520px" /><p id="caption-attachment-2055" class="wp-caption-text">Cara Menginstall JDK di Ubuntu</p></div>
<p style="text-align: left;">Setelah selesai proses instalasi, kita dapat mengecek versi nya dengan perintah berikut</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">javac -version</pre>
<div id="attachment_2056" style="width: 527px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2056" decoding="async" loading="lazy" class="wp-image-2056 " src="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_002-1024x615.png" alt="Cara Menginstall JDK di Ubuntu" width="517" height="311" srcset="https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_002-1024x615.png 1024w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_002-300x180.png 300w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_002-768x461.png 768w, https://mragus.com/wp-content/uploads/2017/03/Agus_wiji_suhariono_Selection_002.png 1145w" sizes="(max-width: 517px) 100vw, 517px" /><p id="caption-attachment-2056" class="wp-caption-text">Cara Menginstall JDK di Ubuntu</p></div>
<p style="text-align: left;">Mudah bukan cara instalasinya ga pakek ribet, untuk menginstall versi JDK yang lain tinggal ganti saja perintah di terminal sesuai dengan versi yang diinginkan. Sekian tutorial dari saya, semoga dapat bermanfaat, saran dan masukkan akan senang hati saya terima. Terimakasih <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> .</p>
<p>The post <a rel="nofollow" href="https://mragus.com/cara-menginstall-jdk-di-ubuntu/">Cara Menginstall JDK di Ubuntu</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/cara-menginstall-jdk-di-ubuntu/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Before Save dan After Save di Yii2</title>
		<link>https://mragus.com/before-save-dan-after-save-di-yii2/</link>
					<comments>https://mragus.com/before-save-dan-after-save-di-yii2/#respond</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Sun, 18 Dec 2016 14:18:28 +0000</pubDate>
				<category><![CDATA[Yii2 Framework]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[yii2]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=2002</guid>

					<description><![CDATA[<p>Assalamualaikum wr wb, pada kesempatan kali ini saya akan berbagi ilmu mengenai penjelasan dan cara menggunakan before save dan after save di Yii2. Setelah lama tidak update blog karena berbagai kesibukan, kita mulai lagi belajar dari hal hal yang&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/before-save-dan-after-save-di-yii2/">Before Save dan After Save di Yii2</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;">Assalamualaikum wr wb, pada kesempatan kali ini saya akan berbagi ilmu mengenai penjelasan dan cara menggunakan before save dan after save di Yii2. Setelah lama tidak update blog karena berbagai kesibukan, kita mulai lagi belajar dari hal hal yang ringan tapi cukup bermanfaat. Kita akan membuat sebuah fungsi di Yii2 <span id="more-2002"></span>yang cara menggunakan nya mirip seperti trigger di Sql, fungsi ini sangat berguna karena berjalan secara paralel pada waktu melakukan proses save atau update data pada model active record. Untuk lebih jelasnya langsung saja kita coba praktekkan cara membuat Before Save dan After Save di Yii2.</p>
<h2 style="text-align: left;">Before Save dan After Save di Yii2</h2>
<p style="text-align: left;">Disini saya akan menggunakan tabel dengan struktur seperti di bawah ini.</p>
<pre class="lang:default decode:true EnlighterJSRAW">mysql&gt; desc tb_propinsi;
+--------------+-------------+------+-----+---------+----------------+
| Field        | Type        | Null | Key | Default | Extra          |
+--------------+-------------+------+-----+---------+----------------+
| propinsi_id  | int(11)     | NO   | PRI | NULL    | auto_increment |
| nama         | varchar(45) | NO   |     | NULL    |                |
| dalam_negeri | tinyint(4)  | YES  |     | NULL    |                |
| created_at   | datetime    | NO   |     | NULL    |                |
| updated_at   | datetime    | NO   |     | NULL    |                |
+--------------+-------------+------+-----+---------+----------------+
5 rows in set (0,00 sec)
</pre>
<h3 style="text-align: left;">Kasus Pertama</h3>
<p style="text-align: left;">Kita buat sebuah CRUD menggunakan <a href="http://www.yiiframework.com/doc-2.0/guide-start-gii.html">GII</a> untuk tabel propinsi tersebut, tapi tanpa ada input untuk created_at dan updated_at dan coba kita lakukan proses insert data.</p>
<div id="attachment_2007" style="width: 427px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2007" decoding="async" loading="lazy" class="wp-image-2007 " src="https://mragus.com/wp-content/uploads/2016/12/Selection_140.png" alt="Before Save dan After Save di Yii2" width="417" height="303" srcset="https://mragus.com/wp-content/uploads/2016/12/Selection_140.png 797w, https://mragus.com/wp-content/uploads/2016/12/Selection_140-300x218.png 300w, https://mragus.com/wp-content/uploads/2016/12/Selection_140-768x558.png 768w" sizes="(max-width: 417px) 100vw, 417px" /><p id="caption-attachment-2007" class="wp-caption-text">Before Save dan After Save di Yii2</p></div>
<p style="text-align: left;">Maka akan terjadi error seperti berikut karena field created_at dan updated_at saya buat not null dan tidak ada default value pada form inputan.</p>
<div id="attachment_2006" style="width: 535px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2006" decoding="async" loading="lazy" class="wp-image-2006 " src="https://mragus.com/wp-content/uploads/2016/12/Selection_139-1024x415.png" alt="Before Save dan After Save di Yii2" width="525" height="213" srcset="https://mragus.com/wp-content/uploads/2016/12/Selection_139-1024x415.png 1024w, https://mragus.com/wp-content/uploads/2016/12/Selection_139-300x122.png 300w, https://mragus.com/wp-content/uploads/2016/12/Selection_139-768x311.png 768w, https://mragus.com/wp-content/uploads/2016/12/Selection_139.png 1416w" sizes="(max-width: 525px) 100vw, 525px" /><p id="caption-attachment-2006" class="wp-caption-text">Before Save dan After Save di Yii2</p></div>
<h3 style="text-align: left;">Solusi</h3>
<p style="text-align: left;">Nah, untuk menyelesaikan masalah di atas kita bisa menggunakan fungsi before save.</p>
<blockquote>
<p style="text-align: justify;">Before save adalah proses yang di lakukan sebelum proses save ke model active record terjadi.</p>
</blockquote>
<p style="text-align: left;">Kita buat script seperti pada dokumentasi nya <a href="http://www.yiiframework.com/doc-2.0/yii-db-baseactiverecord.html#beforeSave()-detail">disini</a>, dan ubah scrip pada model TbPropinsi dengan menambahkan script di bawah ini.</p>
<pre class="lang:default decode:true EnlighterJSRAW">public function beforeSave($insert) {
        if (parent::beforeSave($insert)) {
            $this-&gt;created_at = date('Y-m-d H:i:s');
            $this-&gt;updated_at = date('Y-m-d H:i:s');
            return true;
        } else {
            return false;
        }
    }</pre>
<p style="text-align: left;">Kemudian coba kita eksekusi lagi proses Insert Data Propinsi. Foilah sukses berjalan tanpa error pada field created at, updated at dan data sudah terisi sesuai before save yang kita definisikan.</p>
<div id="attachment_2010" style="width: 538px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2010" decoding="async" loading="lazy" class="wp-image-2010 " src="https://mragus.com/wp-content/uploads/2016/12/Selection_142-1024x314.png" alt="Before Save dan After Save di Yii2" width="528" height="162" srcset="https://mragus.com/wp-content/uploads/2016/12/Selection_142-1024x314.png 1024w, https://mragus.com/wp-content/uploads/2016/12/Selection_142-300x92.png 300w, https://mragus.com/wp-content/uploads/2016/12/Selection_142-768x235.png 768w, https://mragus.com/wp-content/uploads/2016/12/Selection_142.png 1754w" sizes="(max-width: 528px) 100vw, 528px" /><p id="caption-attachment-2010" class="wp-caption-text">Before Save dan After Save di Yii2</p></div>
<h3 style="text-align: left;">Kasus Kedua</h3>
<p style="text-align: left;">Pada kasus kedua ini saya akan mencoba menginsert data secara paralel pada tabel yang lain ketika proses menyimpan data pada tabel propinsi terjadi. Tabel yang saya gunakan adalah tabel kabupaten. Pada form Insert Tabel Propinsi, akan terjadi proses insert ke tabel propinsi dan tabel kabupaten.</p>
<pre class="lang:default decode:true EnlighterJSRAW">mysql&gt; desc tb_kabupaten_kota;
+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| kab_id      | int(11)      | NO   | PRI | NULL    | auto_increment |
| nama        | varchar(150) | NO   |     | NULL    |                |
| propinsi_id | int(11)      | NO   | MUL | NULL    |                |
| kab_kodya   | int(11)      | YES  |     | NULL    |                |
+-------------+--------------+------+-----+---------+----------------+
</pre>
<p style="text-align: left;">Seperti yang terlihat, ada sebuat field foreign key propinsi id pada tabel tb_kabupaten_kota tersebut, jika ingin melakukan proses paralel insert pada tabel kabupaten, <strong>tidak bisa menggunakan berfore save seperti pada kasus pertama.</strong> Karena row pada tabel propinsi belum terbentuk dan data untuk foreign key propinsi_id tidak ada. Untuk itulah maka pada kasus ini kita menggunakan fungsi <a href="http://www.yiiframework.com/doc-2.0/yii-db-baseactiverecord.html#afterSave()-detail">after save</a>.</p>
<blockquote>
<p style="text-align: justify;">After save adalah proses yang dilakukan setelah proses save di model Active Record Terjadi.</p>
</blockquote>
<p style="text-align: left;">Langsung saja kita tambahkan script di model TbPropinsi untuk menginsert data secara paralel pada tabel TbKabupatenKota.</p>
<pre class="lang:default decode:true EnlighterJSRAW ">public function afterSave($isNew, $old) {
       if ($isNew){  
           $kabupaten = new TbKabupatenKota;
           $kabupaten-&gt;propinsi_id = $this-&gt;propinsi_id;
           $kabupaten-&gt;nama = "kabupaten dari propinsi ".$this-&gt;nama;
           $kabupaten-&gt;kab_kodya = 1;
           $kabupaten-&gt;save();        
       }
   }</pre>
<p style="text-align: left;"><strong><em>*fungsi di atas berjalan jika proses insert data baru pada model tbPropinsi di eksekusi.</em></strong></p>
<h3 style="text-align: left;">Uji Coba</h3>
<p style="text-align: left;">Kita coba masukkan data pada <em>Form Create Propinsi</em>.</p>
<div id="attachment_2013" style="width: 451px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2013" decoding="async" loading="lazy" class="wp-image-2013 " src="https://mragus.com/wp-content/uploads/2016/12/Selection_143.png" alt="Before Save dan After Save di Yii2" width="441" height="368" srcset="https://mragus.com/wp-content/uploads/2016/12/Selection_143.png 674w, https://mragus.com/wp-content/uploads/2016/12/Selection_143-300x251.png 300w" sizes="(max-width: 441px) 100vw, 441px" /><p id="caption-attachment-2013" class="wp-caption-text">Before Save dan After Save di Yii2</p></div>
<p style="text-align: left;">Kemudian kita lihat data pada tabel kabupaten kota apakah data sudah bisa di insert beserta foreign key dari Tabel Propinsi. Tadaa, data berhasil di insert sesuai dengan fungsi after save yang kita buat tadi <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> .</p>
<div id="attachment_2014" style="width: 533px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-2014" decoding="async" loading="lazy" class="wp-image-2014 " src="https://mragus.com/wp-content/uploads/2016/12/Selection_144-1024x334.png" alt="Before Save dan After Save di Yii2" width="523" height="170" srcset="https://mragus.com/wp-content/uploads/2016/12/Selection_144-1024x334.png 1024w, https://mragus.com/wp-content/uploads/2016/12/Selection_144-300x98.png 300w, https://mragus.com/wp-content/uploads/2016/12/Selection_144-768x251.png 768w, https://mragus.com/wp-content/uploads/2016/12/Selection_144.png 1782w" sizes="(max-width: 523px) 100vw, 523px" /><p id="caption-attachment-2014" class="wp-caption-text">Before Save dan After Save di Yii2</p></div>
<p style="text-align: left;">Sekian bahasan yang saya sampaikan, semoga dapat bermanfaat. Kritik dan masukkan silahkan sampaikan saja, jangan sungkan sungkan <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /> .</p>
<p style="text-align: left;">Terimakasih.</p>
<p style="text-align: left;"><em>referensi dari <a href="http://www.yiiframework.com/">Yii2 framework</a></em></p>
<p>The post <a rel="nofollow" href="https://mragus.com/before-save-dan-after-save-di-yii2/">Before Save dan After Save di Yii2</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/before-save-dan-after-save-di-yii2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Autentikasi User menggunakan role dan middleware di Framework Laravel</title>
		<link>https://mragus.com/autentikasi-user-menggunakan-role-dan-middleware-di-framework-laravel/</link>
					<comments>https://mragus.com/autentikasi-user-menggunakan-role-dan-middleware-di-framework-laravel/#comments</comments>
		
		<dc:creator><![CDATA[Agus Wiji Suhariono]]></dc:creator>
		<pubDate>Sun, 25 Sep 2016 11:32:59 +0000</pubDate>
				<category><![CDATA[Laravel Framework]]></category>
		<category><![CDATA[laravel]]></category>
		<category><![CDATA[pemrograman]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">https://mragus.com/?p=1944</guid>

					<description><![CDATA[<p>Assalamualaikum wr wb, pada kesempatan kali ini saya akan share postingan mengenai cara membuat autentikasi user menggunakan role dan middleware di Framework Laravel. Pada sebuah aplikasi, autentikasi merupakan hal yang harus di perhatikan. Autentikasi menjadi hal yang penting karena&#46;&#46;&#46;</p>
<p>The post <a rel="nofollow" href="https://mragus.com/autentikasi-user-menggunakan-role-dan-middleware-di-framework-laravel/">Autentikasi User menggunakan role dan middleware di Framework Laravel</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;">Assalamualaikum wr wb, pada kesempatan kali ini saya akan share postingan mengenai cara membuat autentikasi user menggunakan role dan middleware di Framework Laravel. Pada sebuah aplikasi, autentikasi merupakan hal yang harus di perhatikan. Autentikasi menjadi hal yang penting karena digunakan untuk memfilter informasi yang <span id="more-1944"></span>akan kita sajikan pada pengguna. Jika kita membuat sebuah aplikasi yang enterprise, tentunya tidak semua user di samaratkan fiturnya untuk mengakses aplikasi tersebut. Oleh karena itu kita perlu membuat sebuat user leveling atau role untuk menangani akses user sesuai dengan jabatan atau ketentuan tertentu.</p>
<p style="text-align: left;">Laravel menyediakan fitur untuk membuat konfigurasi autentikasi pengguna dengan mudah, dan menghemat waktu. Tetapi untuk membuat sebuah role kita perlu modifikasi route dan menambahkan sebuah middleware, karena middleware lah yang akan menjadi penengah antara request dan response.</p>
<h3 style="text-align: left;">Autentikasi user menggunakan role dan middleware di framework laravel</h3>
<p style="text-align: left;">Pertama-tama kita buat terlebih dahulu desain database nya, pertama adalah table user yang digunakan untuk menyimpan data akun, dan tabel role yang di gunakan untuk menyimpan data role.</p>
<p style="text-align: left;">Tabel user :</p>
<pre class="lang:default decode:true EnlighterJSRAW">+----------------+------------------+------+-----+---------+----------------+
| Field          | Type             | Null | Key | Default | Extra          |
+----------------+------------------+------+-----+---------+----------------+
| id             | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| role_id        | int(10) unsigned | NO   |     | 0       |                |
| name           | varchar(255)     | NO   |     | NULL    |                |
| email          | varchar(255)     | NO   | UNI | NULL    |                |
| password       | varchar(255)     | NO   |     | NULL    |                |
| remember_token | varchar(100)     | YES  |     | NULL    |                |
| created_at     | timestamp        | YES  |     | NULL    |                |
| updated_at     | timestamp        | YES  |     | NULL    |                |
+----------------+------------------+------+-----+---------+----------------+
</pre>
<p style="text-align: left;"> Tabel Role :</p>
<pre class="lang:default decode:true EnlighterJSRAW">+-------+----------+------+-----+---------+----------------+
| Field | Type     | Null | Key | Default | Extra          |
+-------+----------+------+-----+---------+----------------+
| id    | int(11)  | NO   | PRI | NULL    | auto_increment |
| nama  | tinytext | NO   |     | NULL    |                |
+-------+----------+------+-----+---------+----------------+
</pre>
<p style="text-align: left;">Kemudian kita buat model role dan user pada project kita. Saya akan membuat 2 buah role dengan nama level admin dan tamu, gunakan tinker untuk memasukkan data.</p>
<div id="attachment_1948" style="width: 525px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-1948" decoding="async" loading="lazy" class="wp-image-1948 " src="https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-18-215340-e1474800220822.png" alt="Autentikasi User menggunakan role dan middleware di Framework Laravel" width="515" height="140" srcset="https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-18-215340-e1474800220822.png 728w, https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-18-215340-e1474800220822-300x82.png 300w" sizes="(max-width: 515px) 100vw, 515px" /><p id="caption-attachment-1948" class="wp-caption-text">Autentikasi User menggunakan role dan middleware di Framework Laravel</p></div>
<div id="attachment_1949" style="width: 530px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-1949" decoding="async" loading="lazy" class="wp-image-1949 " src="https://mragus.com/wp-content/uploads/2016/09/Selection_147-e1474800287677.png" alt="Autentikasi User menggunakan role dan middleware di Framework Laravel" width="520" height="189" srcset="https://mragus.com/wp-content/uploads/2016/09/Selection_147-e1474800287677.png 715w, https://mragus.com/wp-content/uploads/2016/09/Selection_147-e1474800287677-300x109.png 300w" sizes="(max-width: 520px) 100vw, 520px" /><p id="caption-attachment-1949" class="wp-caption-text">Autentikasi User menggunakan role dan middleware di Framework Laravel</p></div>
<h3 style="text-align: left;">Scripting</h3>
<p style="text-align: left;">Kita mulai ngoding, mulai dari pembuatan midleware, serta penambahan fungsi pada model user. Dimulai dengan membuat sebuah middleware dengan nama CekRole dengan menggunakan artisan.</p>
<pre class="lang:default decode:true EnlighterJSRAW">php artisan make:middleware CekRole</pre>
<p style="text-align: left;">Kemudian kita buat dua buah fungsi :</p>
<ol style="text-align: left;">
<li>Fungsi handle digunakan untuk membandingkan role user dan route yang di akses apakah sesuai, jika tidak sesuai maka akan di redirect dengan http status 503.</li>
<li>Fungsi cekRoute digunakan untuk mengecek aksesibility route.</li>
</ol>
<pre class="lang:default decode:true EnlighterJSRAW">&lt;?php
namespace App\Http\Middleware;
use Closure;

class CekRole
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $roles = $this-&gt;CekRoute($request-&gt;route());
        
        if($request-&gt;user()-&gt;hasRole($roles) || !$roles)
        {
            return $next($request);
        }
        return abort(503, 'Anda tidak memiliki hak akses');
    }

    private function CekRoute($route)
    {
        $actions = $route-&gt;getAction();
        return isset($actions['roles']) ? $actions['roles'] : null;
    }
}
</pre>
<p style="text-align: left;">Kernel.php</p>
<pre class="lang:default decode:true EnlighterJSRAW">protected $routeMiddleware = [
        'auth' =&gt; \App\Http\Middleware\Authenticate::class,
        'auth.basic' =&gt; \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
        'can' =&gt; \Illuminate\Foundation\Http\Middleware\Authorize::class,
        'guest' =&gt; \App\Http\Middleware\RedirectIfAuthenticated::class,
        'throttle' =&gt; \Illuminate\Routing\Middleware\ThrottleRequests::class,
        'roles'    =&gt; \App\Http\Middleware\CekRole::class,
    ];</pre>
<p style="text-align: left;">Jangan lupa daftarkan middleware pada kernel(App\Http\Kernel.php), kemudian lanjut kita buat fungsi pada model user.</p>
<pre class="lang:default decode:true EnlighterJSRAW">&lt;?php
namespace App;

use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $table = 'users';
    protected $fillable = [
        'name', 'email', 'password',
    ];

    /**
     * The attributes that should be hidden for arrays.
     *
     * @var array
     */
    protected $hidden = [
        'password', 'remember_token',
    ];

    public function role()
    {
        return $this-&gt;belongsTo('App\Role','role_id');
    }

    public function hasRole($roles)
    {
        $this-&gt;have_role = $this-&gt;getUserRole();
        
        if(is_array($roles)){
            foreach($roles as $need_role){
                if($this-&gt;cekUserRole($need_role)) {
                    return true;
                }
            }
        } else{
            return $this-&gt;cekUserRole($roles);
        }
        return false;
    }
    private function getUserRole()
    {
       return $this-&gt;role()-&gt;getResults();
    }
    
    private function cekUserRole($role)
    {
        return (strtolower($role)==strtolower($this-&gt;have_role-&gt;nama)) ? true : false;
    }
}
</pre>
<p style="text-align: left;">Penjelasan :</p>
<ol style="text-align: left;">
<li>Fungsi getUserRole() : untuk mengecek id role dari table user ke table role.</li>
<li>Fungsi cekUserRole() : untuk membandingkan role di routes dengan role di user.</li>
<li>public function role() : relationship fungsi ke model role.</li>
<li>hasRole :  untuk membandingkan role, dengan menggunakan fungsi getUserRole() dan cekUserRole(), pada fungsi ini terdapat kondisi, is array untuk mengecek apakah role dari route berupa array atau tidak.</li>
</ol>
<p style="text-align: left;">Kita sesuaikan juga routesnya, kita tentukan filter role apa saja yang bisa mengakses.</p>
<pre class="lang:default decode:true EnlighterJSRAW ">Route::auth();

Route::get('/home',function(){
 return view('welcome');
});

Route::get('/', function () {
    return view('welcome');
});

Route::group(['middleware' =&gt; ['web', 'auth', 'roles']],function(){
 Route::group(['roles'=&gt;'Tamu'],function(){
  Route::resource('site', 'SiteController');
 });
 
 Route::group(['roles'=&gt;'Admin'],function(){
  Route::resource('user', 'UserController');
 });
});</pre>
<h3 style="text-align: left;">Uji Coba</h3>
<p style="text-align: left;">Setelah semua persiapan di atas sudah di buat, selanjutnya kita mulai uji coba, disini saya akan login dengan role sebagai admin. Role admin hanya dapat mengakses route UserController.</p>
<div id="attachment_1969" style="width: 530px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-1969" decoding="async" loading="lazy" class="wp-image-1969 " src="https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193226-1024x518.png" alt="Autentikasi User menggunakan role dan middleware di Framework Laravel" width="520" height="263" srcset="https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193226-1024x518.png 1024w, https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193226-300x152.png 300w, https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193226-768x389.png 768w, https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193226.png 1597w" sizes="(max-width: 520px) 100vw, 520px" /><p id="caption-attachment-1969" class="wp-caption-text">Autentikasi User menggunakan role dan middleware di Framework Laravel</p></div>
<div id="attachment_1968" style="width: 532px" class="wp-caption aligncenter"><img aria-describedby="caption-attachment-1968" decoding="async" loading="lazy" class="wp-image-1968 " src="https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193047-1024x521.png" alt="Autentikasi User menggunakan role dan middleware di Framework Laravel" width="522" height="265" srcset="https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193047-1024x521.png 1024w, https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193047-300x153.png 300w, https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193047-768x390.png 768w, https://mragus.com/wp-content/uploads/2016/09/Screenshot-from-2016-09-25-193047.png 1599w" sizes="(max-width: 522px) 100vw, 522px" /><p id="caption-attachment-1968" class="wp-caption-text">Autentikasi User menggunakan role dan middleware di Framework Laravel</p></div>
<p style="text-align: left;">User dengan role admin bisa mengakses aplikasi dengan route user, tetapi ketika mengakses route site akan di redirect ke halaman error. Mudah Bukan <img src="https://s.w.org/images/core/emoji/14.0.0/72x72/1f600.png" alt="😀" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p style="text-align: left;">Sekian tutorial singkat dari saya, semoga dapat bermanfaat. Terimakasih.</p>
<p>The post <a rel="nofollow" href="https://mragus.com/autentikasi-user-menggunakan-role-dan-middleware-di-framework-laravel/">Autentikasi User menggunakan role dan middleware di Framework Laravel</a> appeared first on <a rel="nofollow" href="https://mragus.com">Mr Agus</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mragus.com/autentikasi-user-menggunakan-role-dan-middleware-di-framework-laravel/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
	</channel>
</rss>
