tag:blogger.com,1999:blog-38325455696918886272024-03-20T20:29:22.834+07:00Nubie ProgramKumpulan kode program untuk belajar pemograman dasarManalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comBlogger34125tag:blogger.com,1999:blog-3832545569691888627.post-54154986220003651922024-02-17T22:19:00.002+07:002024-02-17T22:19:22.488+07:00Batch Converter RAR ke ZIP dengan WinRAR<p>Script batch berikut adalah sebuah alat sederhana untuk mengonversi file RAR menjadi file ZIP menggunakan perangkat lunak WinRAR. Ini dapat membantu memudahkan proses konversi antara format file yang umum digunakan. </p><span><a name='more'></a></span><h2 style="text-align: left;">Batch Converter RAR ke ZIP dengan WinRAR dan Command Prompt CMD Windows</h2><div style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiMvrWL1dxemE3-Mzun8usnBd9Qik658znD6ghwyc7UgPDDjc5gxvOrmVnl-TibJGbpBOQlOA8NRfFSwHwdovoygAlVTz7_FK-fIpfjhCvK-zOd-or4jCNINEePfa6dlSCCMTvy61N-o/s320/Command-Prompt.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="Batch Converter RAR ke ZIP dengan WinRAR" border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiMvrWL1dxemE3-Mzun8usnBd9Qik658znD6ghwyc7UgPDDjc5gxvOrmVnl-TibJGbpBOQlOA8NRfFSwHwdovoygAlVTz7_FK-fIpfjhCvK-zOd-or4jCNINEePfa6dlSCCMTvy61N-o/w320-h320/Command-Prompt.jpg" title="Batch Converter RAR ke ZIP dengan WinRAR" width="320" /></a></div><p>Pastikan Kamu memiliki instalasi WinRAR yang valid di direktori yang ditentukan di dalam skrip batch. Jika tidak, Kamu perlu mengganti alamat direktori dengan lokasi instalasi WinRAR yang sesuai. </p><h3 style="text-align: left;">Code Batch Converter RAR to ZIP</h3><div>Berikut ini adalah script Batch yg dapat kamu copy kemudian save dengan notepad ke extensi nama_converter.bat.</div><p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code>@echo off
:menu
CLS
echo -------------------------------------
echo.
echo RAR to ZIP Converter with WinRAR
echo created by manaluzufrin
echo.
echo Pilih Fungsi
echo 1. Batch Convert RAR to ZIP
echo 2. Batch Convert ZIP to RAR
echo 0. Keluar
echo -------------------------------------
set /p choice=Masukkan nomor fungsi (0/1/2):
set WinRAR="C:\Program Files\WinRAR\WinRAR.exe"
if not exist %WinRAR% (
echo WINRAR tidak ditemukan, harap instal terlebih dahulu
pause
exit /b
)
if "%choice%"=="0" (
exit /b
)else if "%choice%"=="1" (
if exist *.rar (
echo File RAR ditemukan.
rem Loop melalui semua file di direktori
for %%F in (*.rar) do (
echo File dalam proses: %%F
MD "%%~dpnF"
REM Ekstraksi file RAR
%WinRAR% x "%%~nF.rar" "%%~dpnF"
REM Buat File Zip
%WinRAR% a -afzip "%%~nF.zip" "%%~nF"
rmdir /s /q "%%~nF"
)
REM Tampilkan pesan selesai
echo Konversi RAR to ZIP Selesai.
pause
goto menu
) else (
echo File RAR tidak ditemukan.
pause
goto menu
)
)else if "%choice%"=="2" (
if exist *.zip (
echo File ZIP ditemukan.
rem Loop melalui semua file di direktori
for %%F in (*.zip) do (
echo File dalam proses: %%F
MD "%%~dpnF"
REM Ekstraksi file zip
%WinRAR% x -y "%%~nF.zip" "%%~dpnF"
REM Buat File RAR
%WinRAR% a -afrar -y "%%~nF.rar" "%%~nF"
rmdir /s /q "%%~nF"
)
REM Tampilkan pesan selesai
echo Konversi ZIP to RAR Selesai.
pause
goto menu
) else (
echo File ZIP tidak ditemukan.
pause
goto menu
)
)else (
echo Pilihan tidak valid.
pause
goto menu
)
pause</code></span></pre><p></p><h3 style="text-align: left;">Cara Menggunakan dan Penjelasan</h3><p>Copy kan script Batch Converter RAR ke ZIP ini ke folder tempat kamu ingin mengkonversikan file ZIP ke RAR atau sebaliknya. </p><p>Ketika Kamu menjalankan script ini, Kamu akan diberikan pilihan untuk memilih fungsi yang ingin dilakukan:</p><p></p><ul style="text-align: left;"><li>Pilih 1 untuk mengonversi file RAR menjadi ZIP.</li><li>Pilih 2 untuk mengonversi file ZIP menjadi RAR.</li><li>Pilih 0 untuk keluar dari program.</li></ul><p></p><p>Pastikan Kamu telah menginstal WinRAR di komputer Kamu sebelum menggunakan script ini. Jika belum, Kamu akan diberi pesan untuk menginstalnya terlebih dahulu.</p><p>Jika Kamu memilih opsi 1 dan terdapat file RAR di direktori, script akan secara otomatis mengekstrak file RAR, membuat file ZIP, dan menghapus file sementara yang telah diekstrak.</p><p>Jika Kamu memilih opsi 2 dan terdapat file ZIP di direktori, script akan mengekstrak file ZIP, membuat file RAR, dan menghapus file sementara yang telah diekstrak.</p><p>Setelah proses konversi selesai, Kamu akan diberikan pesan bahwa proses konversi telah selesai dan Kamu dapat kembali memilih fungsi atau keluar dari program.</p><p>Dengan menggunakan script batch ini, Kamu dapat dengan mudah mengonversi file RAR ke ZIP atau sebaliknya tanpa harus repot-repot melakukannya secara manual satu satu. Selamat mencoba!</p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-60379342469671799772024-01-18T15:34:00.002+07:002024-01-18T15:34:14.841+07:00HTML Code Tester Sederhana dengan Fungsi Preview Dinamis<p> Dalam era digital saat ini, kemampuan untuk menguji dan menampilkan kode HTML secara cepat dan efisien menjadi sangat penting bagi pengembang web, pendidik, dan bahkan hobiis. HTML Code Tester adalah alat yang dirancang untuk memenuhi kebutuhan ini. </p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Membuat HTML Code Tester Sederhana dengan HTML dan Javascript</h2><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s320/JavaScript.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s320/JavaScript.jpg" width="320" /></a></div><br /><div><br /></div><div>Dalam artikel ini, kita akan membahas pembuatan HTML Code Tester yg sederhana dengan menggunakan HTML, CSS, dan JavaScript. </div><h3 style="text-align: left;">Fitur Utama HTML Code Tester Sederhana</h3><p></p><ul style="text-align: left;"><li>HTML Code Tester yang kita bangun memiliki fitur-fitur sebagai berikut:</li><li>Editor Kode: Sebuah area teks tempat pengguna dapat menulis atau menempelkan kode HTML.</li><li>Tombol Eksekusi: Untuk menjalankan kode HTML yang ditulis di editor.</li><li>Area Hasil: Sebuah frame tempat hasil dari kode HTML yang dijalankan ditampilkan.</li><li>Pilihan Tampilan Responsif: Tombol untuk mengubah ukuran tampilan hasil antara layar penuh, ukuran ponsel, ukuran tablet, dan ukuran default.</li></ul><h3 style="text-align: left;">Struktur Kode</h3><p>Kode ini terdiri dari tiga bagian utama: HTML, CSS, dan JavaScript.</p><h4 style="text-align: left;">Script HTML</h4><p>Bagian HTML mengandung elemen-elemen dasar seperti editor teks, tombol untuk menjalankan kode, dan iframe untuk menampilkan hasil.</p><p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code><div>
<h2>Code</h2>
<textarea id="editor" placeholder="Type your HTML here..." class="form-control"></textarea><br />
<button onclick="runCode()" class="btn btn-primary">Run Code</button>
</div>
<h2>Result</h2>
<button onclick="setFullScreen()" class="btn btn-secondary">Full Screen</button>
<button onclick="setPhoneSize()" class="btn btn-secondary">Phone Size</button>
<button onclick="setTabletSize()" class="btn btn-secondary">Tablet Size</button>
<button onclick="setDefaultSize()" class="btn btn-secondary">Default Size</button>
<div id="result">
<iframe id="resultFrame"></iframe>
</div></code></span></pre><p></p>
<h4 style="text-align: left;">Script CSS</h4><p>CSS digunakan untuk memberikan tampilan yang menarik dan responsif pada editor dan area hasil.</p><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code><style>
#editor {
/* Styling untuk editor */
}
#result {
/* Styling untuk area hasil */
}
.full-screen, .phone-size, .tablet-size {
/* Responsif style untuk area hasil */
}
iframe {
/* Styling untuk iframe */
}
</style></code></span></pre>
<p></p>
<p></p><h4 style="text-align: left;">Script Javascript</h4>JavaScript bertanggung jawab untuk interaktivitas, termasuk menjalankan kode HTML dan mengubah ukuran tampilan hasil.<p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code><script>
function runCode() {
// Fungsi untuk menjalankan kode HTML
}
function setFullScreen() {
// Fungsi untuk mengatur tampilan layar penuh
}
// Fungsi tambahan untuk ukuran ponsel, tablet, dan default
</script></code></span></pre>
<p></p><h3 style="text-align: left;">Cara Kerja</h3><p></p><ul style="text-align: left;"><li>Menulis Kode: Pengguna menulis atau menempelkan kode HTML di editor.</li><li>Menjalankan Kode: Setelah menekan tombol 'Run Code', fungsi `runCode()` akan dijalankan. Fungsi ini mengambil kode dari editor dan menampilkan hasilnya di iframe.</li><li>Mengubah Tampilan Hasil: Pengguna dapat memilih tampilan layar penuh, ponsel, tablet, atau default untuk melihat bagaimana kode HTML mereka bereaksi di berbagai ukuran layar.</li></ul><h3 style="text-align: left;">Keseluruhan Code</h3><div><br /></div><div><br /></div><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code><style>
#editor {
font-family: monospace;
height: 300px;
white-space: nowrap;
overflow: auto;
background: #000;
color: #d5d5d5;
}
#result {
border: 1px solid #ccc;
padding: 5px;
overflow: auto;
margin-top: 10px;
}
.full-screen {
width: 100%;
height: 100vh; /* Full height of the viewport */
}
.phone-size {
width: 360px;
height: 640px;
}
.tablet-size {
width: 768px;
height: 1024px;
}
iframe {
border: none;
width: 100%;
height: 100vh;
overflow-y: hidden; /* Hide the vertical scrollbar */
}
</style>
<div>
<h2>Code</h2>
<textarea id="editor" placeholder="Type your HTML here..." class="form-control"></textarea><br />
<button onclick="runCode()" class="btn btn-primary">Run Code</button>
</div>
<h2>Result</h2>
<button onclick="setFullScreen()" class="btn btn-secondary">Full Screen</button>
<button onclick="setPhoneSize()" class="btn btn-secondary">Phone Size</button>
<button onclick="setTabletSize()" class="btn btn-secondary">Tablet Size</button>
<button onclick="setDefaultSize()" class="btn btn-secondary">Default Size</button>
<div id="result">
<iframe id="resultFrame"></iframe>
</div>
<script>
function runCode() {
const code = document.getElementById('editor').value;
const resultFrame = document.getElementById('resultFrame').contentDocument;
resultFrame.open();
resultFrame.write(code);
resultFrame.close();
}
function setFullScreen() {
const result = document.getElementById('result');
result.className = 'full-screen';
}
function setPhoneSize() {
const result = document.getElementById('result');
result.className = 'phone-size';
}
function setTabletSize() {
const result = document.getElementById('result');
result.className = 'tablet-size';
}
function setDefaultSize() {
const result = document.getElementById('result');
result.className = '';
}
</script></code></span></pre>
<p></p>
<h2 style="text-align: left;">Preview</h2>
<style>
#editor {
font-family: monospace;
height: 300px;
white-space: nowrap;
overflow: auto;
background: #000;
color: #d5d5d5;
}
#result {
border: 1px solid #ccc;
padding: 5px;
overflow: auto;
margin-top: 10px;
}
.full-screen {
width: 100%;
height: 100vh; /* Full height of the viewport */
}
.phone-size {
width: 360px;
height: 640px;
}
.tablet-size {
width: 768px;
height: 1024px;
}
iframe {
border: none;
width: 100%;
height: 100vh;
overflow-y: hidden; /* Hide the vertical scrollbar */
}
</style>
<div>
<h2>Code</h2>
<textarea class="form-control" id="editor"></textarea><br />
<button class="btn btn-primary" onclick="runCode()">Run Code</button>
</div>
<h2>Result</h2>
<button class="btn btn-secondary" onclick="setFullScreen()">Full Screen</button>
<button class="btn btn-secondary" onclick="setPhoneSize()">Phone Size</button>
<button class="btn btn-secondary" onclick="setTabletSize()">Tablet Size</button>
<button class="btn btn-secondary" onclick="setDefaultSize()">Default Size</button>
<div id="result">
<iframe id="resultFrame"></iframe>
</div>
<script>
function runCode() {
const code = document.getElementById('editor').value;
const resultFrame = document.getElementById('resultFrame').contentDocument;
resultFrame.open();
resultFrame.write(code);
resultFrame.close();
}
function setFullScreen() {
const result = document.getElementById('result');
result.className = 'full-screen';
}
function setPhoneSize() {
const result = document.getElementById('result');
result.className = 'phone-size';
}
function setTabletSize() {
const result = document.getElementById('result');
result.className = 'tablet-size';
}
function setDefaultSize() {
const result = document.getElementById('result');
result.className = '';
}
</script>
<p>HTML Code Tester ini adalah alat yang sangat berguna untuk pengujian dan demonstrasi kode HTML. Dengan kemampuan untuk mengedit dan melihat hasil secara real-time di berbagai ukuran layar, ini menjadi alat yang tak ternilai bagi pengembang web untuk menguji dan menyempurnakan kode kamu.</p>
<p></p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-61560188267546224212023-12-19T12:42:00.004+07:002023-12-28T12:48:48.257+07:00Ubah Max Limit Download dan Upload Mikrotik Secara Batch<p>Untuk merubah batas maksimum (max limit) pada simple queue di MikroTik secara batch, Kamu dapat menggunakan perintah di Terminal MikroTik atau menyusun skrip (script) untuk otomatisasi. Berikut adalah contoh cara melakukannya:</p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Ubah Max Limit Download dan Upload Mikrotik Secara Batch Menggunakan Terminal MikroTik</h2><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhftYZmtWpT1Rd1QoeIfBWg1-e_M4-1qXKpKleVIu3gIQXBEFoDmiH7J-z-mnHQ3LFS30TFCMo0hADTXNOAsnMtLTGuEGUsM2TIXpOjEWYuEnT-MpKc9szvxFAb2GpeHz06tAf9k_MVyk4/s300/MikroTik-Router.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="300" data-original-width="300" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhftYZmtWpT1Rd1QoeIfBWg1-e_M4-1qXKpKleVIu3gIQXBEFoDmiH7J-z-mnHQ3LFS30TFCMo0hADTXNOAsnMtLTGuEGUsM2TIXpOjEWYuEnT-MpKc9szvxFAb2GpeHz06tAf9k_MVyk4/s1600/MikroTik-Router.jpg" width="300" /></a></div><br /><div><br /></div><p>Kamu dapat masuk ke Winbox dan kemudian klik pada menu "New Terminal", atau Gunakan koneksi SSH atau Telnet ke perangkat MikroTik.</p><p>Gunakan perintah berikut untuk mengubah max limit secara batch:</p><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code>/queue simple set [find] max-limit=new_max_limit</code></span></pre>
<p></p><p>Gantilah new_max_limit dengan batas maksimum baru yang Kamu inginkan.</p><p>Contoh:</p><p>
</p><pre><code>/queue simple set [find] max-limit=2M/2M</code></pre>
<p>
Kamu juga dapat menambahkan variabel yg harus dicari semisal nama dari simple queque nya, misalnya "Global" sehingga yg dirubah hanya yg memiliki nama Global, seperti dibawah ini.</p>
<span style="font-family: courier;"><pre><code>/queue simple set [find name="Global"] max-limit=50M/50M</code></pre></span>
<p>Perintah ini akan mengubah semua simple queue yang ada dengan batas maksimum baru menjadi 2 Mbps untuk download dan 2 Mbps untuk upload.</p><p><br /></p><h2 style="text-align: left;">Ubah Max Limit Download dan Upload Mikrotik Secara Batch Menggunakan Script</h2><p>Kamu juga dapat membuat skrip untuk melakukan tugas ini secara otomatis. Berikut adalah contoh skrip menggunakan bahasa skrip MikroTik (RouterOS Script):</p><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code>:foreach queueId in=[find] do={
/queue simple set $queueId max-limit=new_max_limit
}</code></span></pre>
<p></p>
<p></p><p>Simpan skrip tersebut dan jalankan di Terminal MikroTik. Pastikan untuk menggantikan new_max_limit dengan nilai batas maksimum yang diinginkan.</p><p>Contoh:</p><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code>:foreach queueId in=[find] do={
/queue simple set $queueId max-limit=2M/2M
}</code></span></pre>
<p></p><p>Skrip ini akan mengubah semua simple queue yang ada dengan batas maksimum baru menjadi 2 Mbps untuk download dan 2 Mbps untuk upload.</p><p>Harap diingat bahwa Kamu harus berhati-hati ketika melakukan perubahan secara batch, pastikan untuk memahami dampaknya pada jaringan Kamu dan pastikan bahwa perubahan tersebut sesuai dengan kebutuhan dan kebijakan jaringan Kamu.</p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-3201569222224323902023-11-30T15:20:00.002+07:002023-12-01T13:33:15.130+07:00Menggunakan Script Batch untuk Mengelola Service<p>Script batch adalah kumpulan perintah yang dijalankan secara berurutan di lingkungan sistem operasi Windows. </p><span><a name='more'></a></span><h2 style="text-align: left;">Script Batch untuk Mengelola Service</h2><p>Dalam konteks ini, manaluzufrin akan menjelaskan dan membahas script batch yang dirancang untuk mengelola Service MySQL80 sebagai contoh. Script ini memungkinkan pengguna untuk menghentikan atau memulai kembali Service MySQL80 dengan mudah.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiMvrWL1dxemE3-Mzun8usnBd9Qik658znD6ghwyc7UgPDDjc5gxvOrmVnl-TibJGbpBOQlOA8NRfFSwHwdovoygAlVTz7_FK-fIpfjhCvK-zOd-or4jCNINEePfa6dlSCCMTvy61N-o/s320/Command-Prompt.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="Menggunakan Script Batch untuk Mengelola Service" border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkiMvrWL1dxemE3-Mzun8usnBd9Qik658znD6ghwyc7UgPDDjc5gxvOrmVnl-TibJGbpBOQlOA8NRfFSwHwdovoygAlVTz7_FK-fIpfjhCvK-zOd-or4jCNINEePfa6dlSCCMTvy61N-o/w320-h320/Command-Prompt.jpg" title="Menggunakan Script Batch untuk Mengelola Service" width="320" /></a></div><br /><p><br /></p><h3 style="text-align: left;">Aplikasi Sederhana Script Batch Untuk Mengelola Service</h3><p>Kamu dapat menyimpan aplikasi sederhana ini dalam ekstensi .bat dan menjalankannya dengan run as administrator dikarenakan script ini berhubungan dengan service dari Windows itu sendiri.</p><p><br /></p><p><span style="font-family: courier;">
<span style="font-family: courier;"></span></span></p><pre><span style="font-family: courier;"><span style="font-family: courier;"><code>@echo off
:: Periksa apakah skrip dijalankan sebagai administrator
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
:: Jika bukan administrator, jalankan skrip sebagai administrator
if %errorlevel% neq 0 (
echo Mohon jalankan skrip ini sebagai Administrator.
echo Silakan klik kanan pada file bat dan pilih "Run as Administrator".
pause
goto :eof
)
:menu
CLS
ECHO.
ECHO =====================================
ECHO Pilih operasi yang ingin dilakukan:
ECHO 1. Menghentikan Service MYSQL80
ECHO 2. Memulai Service MYSQL80
ECHO 3. Status Service MYSQL80
ECHO 4. Keluar
ECHO =====================================
ECHO.
:: Tampilkan status service saat ini
echo Status Service MYSQL80:
sc query MYSQL80 | find "STATE"
set /p choice=Masukkan nomor pilihan (1/2/3/4):
:: Lanjutkan dengan operasi sesuai pilihan pengguna
if "%choice%"=="1" (
echo Menghentikan Service MYSQL80...
net stop MYSQL80
echo Service berhasil dihentikan.
goto menu
) else if "%choice%"=="2" (
echo Memulai Service MYSQL80...
net start MYSQL80
echo Service berhasil dimulai.
goto menu
) else if "%choice%"=="3" (
echo Status Service MYSQL80:
sc query MYSQL80 | find "STATE"
goto menu
) else if "%choice%"=="4" (
echo Keluar.
goto :eof
) else (
echo Pilihan tidak valid. Silakan masukkan 1, 2, 3, atau 4.
goto menu
)
</code></span></span></pre>
<h4 style="text-align: left;">Tampilan menu</h4><p></p><ul style="text-align: left;"><li>@echo off: Menonaktifkan pencetakan baris perintah, sehingga hanya output dari perintah yang dijalankan yang akan ditampilkan.</li><li>:menu: Label untuk membuat loop menu sehingga pengguna dapat memilih operasi berulang kali.</li><li>CLS: Membersihkan layar konsol untuk memberikan tampilan yang bersih.</li><li>ECHO: Menampilkan teks di layar konsol untuk memberikan petunjuk kepada pengguna.</li><li>set /p choice=Masukkan nomor pilihan (1/2/3):: Meminta input dari pengguna untuk memilih operasi.</li></ul><p></p><h4 style="text-align: left;">Mengecek Hak Akses Administrator</h4><p>Periksa apakah skrip dijalankan sebagai administrator: Menggunakan perintah cacls untuk memeriksa hak akses administrator.</p><p>Jika bukan administrator: Memberikan pesan kepada pengguna untuk menjalankan skrip sebagai administrator dan menghentikan eksekusi.</p><h4 style="text-align: left;">Eksekusi Operasi Sesuai Pilihan Pengguna</h4><p></p><ul style="text-align: left;"><li>if-else statement: Mengevaluasi pilihan pengguna dan melanjutkan dengan operasi yang sesuai.</li><li>net stop/start MYSQL80: Menghentikan atau memulai kembali Service MySQL80.</li><li>goto menu: Kembali ke menu utama setelah menyelesaikan operasi.</li></ul><p></p><p></p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-15731132319377233312023-10-19T16:22:00.005+07:002023-10-19T16:23:33.871+07:00Menjalankan PHP Web Server di Luar Folder htdocs<p>Kamu dapat menjalankan sebuah aplikasi web dengan base pemograman PHP secara sementara di luar folder HTDOCS. Perintah ini mirip dengan perintah "php artisan serve" yang digunakan dalam Laravel untuk menjalankan server pengembangan. </p><span><a name='more'></a></span><p style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpMhUdA0qV9qUCScEDysbKzMmA-VbnZ5KWpDeyytPccW_Xd68ruI7GLtdhLD4x4x2ZVUE_CtTqyotK51tpZtOeNvASuS1HNaKgbJ-cSUGAjRSO4md5culUuutaCacCFlkFqpwDJEF7jHE/s327/php.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="Menjalankan PHP Web Server di Luar Folder htdocs" border="0" data-original-height="327" data-original-width="327" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpMhUdA0qV9qUCScEDysbKzMmA-VbnZ5KWpDeyytPccW_Xd68ruI7GLtdhLD4x4x2ZVUE_CtTqyotK51tpZtOeNvASuS1HNaKgbJ-cSUGAjRSO4md5culUuutaCacCFlkFqpwDJEF7jHE/w320-h320/php.jpg" title="Menjalankan PHP Web Server di Luar Folder htdocs" width="320" /></a></p><h2 style="text-align: left;">Cara Menjalankan PHP Web Server di Luar htdocs</h2><p>Di bawah ini adalah panduan untuk menjalankan server PHP di luar folder htdocs:</p><p><br /></p><p><b>1. Pastikan PHP Terinstal</b></p><p>Pastikan PHP sudah terinstal di sistem Kamu. Kamu dapat mengunduh PHP dari <a href="http://php.net">php.net</a>.</p><p><br /></p><p><b>2. Buka Terminal atau Command Prompt</b></p><p>Buka terminal atau command prompt di sistem Kamu. Kamu bisa menggunakan terminal bawaan di sistem operasi atau terminal pihak ketiga seperti Git Bash.</p><p><br /></p><p><b>3. Navigasi ke Folder Proyek Kamu</b></p><p>Gunakan perintah "cd" untuk berpindah ke folder tempat proyek PHP Kamu berada:</p><p><br /></p><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code>cd c:\path\to\your\project</code></span></pre>
<p></p><p><br /></p><p>Pastikan Kamu mengganti "C:\path\to\your\project" dengan jalur yang sesuai dengan lokasi proyek Kamu.</p><p><br /></p><p><b>4. Jalankan Server PHP</b></p><p>Gunakan perintah berikut untuk menjalankan server PHP di localhost:</p><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code>php.exe -S localhost:8000 -t c:\path\to\your\project</code></span></pre>
<p></p><p><br /></p><p></p><ul style="text-align: left;"><li>"-S localhost:8000" merupakan cara menetapkan server ke alamat localhost pada port 8000. Kamu dapat mengganti 8000 dengan port lain jika diperlukan.</li><li>"-t C:\path\to\your\project" menentukan direktori root proyek.</li></ul><p></p><p><br /></p><p><b>5. Akses Web Server Kamu</b></p><p>Buka browser web dan kunjungi <a href="http://localhost:8000">http://localhost:8000</a>. Kamu sekarang dapat melihat proyek PHP Kamu berjalan.</p><p><br /></p><h4 style="text-align: left;">Catatan Tambahan</h4><p></p><ul style="text-align: left;"><li>Pastikan tidak ada konflik port dengan aplikasi lain yang berjalan di sistem Kamu.</li><li>Ini adalah server pengembangan dan tidak seharusnya digunakan untuk produksi.</li></ul><p></p><p>Dengan mengikuti langkah-langkah di atas, Kamu dapat menjalankan server PHP di luar folder htdocs, mirip dengan penggunaan "php artisan serve" di Laravel.</p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-18836256285467435842022-12-06T13:25:00.005+07:002022-12-06T13:25:45.847+07:00Menghilangkan Tanggal dan Tahun di Permalink Blogspot dengan Javascript<p>Menghilangkan tanggal dan tahun pada permalink blogspot sangat kamu butuhkan untuk membuat link url blog kamu menjadi lebih estetik dan mudah diingat oleh para pembaca. </p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Apa itu Permalink?</h2><p>Permalink adalah kependekan dari permanen link. Permalink merupakan URL yang mengarah pada suatu postingan. Permalink ini bersifat permanen untuk dapat mengakses postingan jauh lebih lama.</p><p><br /></p><h2 style="text-align: left;">Menghapus tanggal dan tahun dari Permalink Blogger</h2><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s320/JavaScript.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="Menghilangkan Tanggal dan Tahun di Permalink Blogspot dengan Javascript" border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/w320-h320/JavaScript.jpg" title="Menghilangkan Tanggal dan Tahun di Permalink Blogspot dengan Javascript" width="320" /></a></div><p>Penghapusan tanggal dan tahun dari permanen link postingan blogger kamu ini dapat membuat link kamu menjadi lebih estetik dan ringkas. Untuk menghilangkan tanggal dan tahun di permalink atau URL suatu post blogspot dapat kamu akali dengan menggunakan script javascript dibawah ini.</p><p><br /></p><p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code> <script type='text/javascript'>
//<![CDATA[
// BloggerJS v0.3.1
// Copyright (c) 2017-2018 Kenny Cruz
// Licensed under the MIT License
var urlTotal,nextPageToken,postsDatePrefix=!1,accessOnly=!1,useApiV3=!1,apiKey="",blogId="",postsOrPages=["pages","posts"],jsonIndex=1,secondRequest=!0,feedPriority=0,amp="&"[0];function urlVal(){var e=window.location.pathname,t=e.length;return".html"===e.substring(t-5)?0:t>1?1:2}function urlMod(){var e=window.location.pathname;"p"===e.substring(1,2)?(e=(e=e.substring(e.indexOf("/",1)+1)).substr(0,e.indexOf(".html")),history.replaceState(null,null,"../"+e)):(e=(e=postsDatePrefix?e.substring(1):e.substring(e.indexOf("/",7)+1)).substr(0,e.indexOf(".html")),history.replaceState(null,null,"../../"+e))}function urlSearch(e,t){var n=e+".html";t.forEach(function(e){-1!==e.search(n)&&(window.location=e)})}function urlManager(){var e=urlVal();0===e?accessOnly||urlMod():1===e?getJSON(postsOrPages[feedPriority],1):2===e&&(accessOnly||history.replaceState(null,null,"/"))}function getJSON(e,t){var n=document.createElement("script");if(useApiV3){var o="https://www.googleapis.com/blogger/v3/blogs/"+blogId+"/"+e+"?key="+apiKey+"#maxResults=500#fields=nextPageToken%2Citems(url)#callback=bloggerJSON";nextPageToken&&(o+="#pageToken="+nextPageToken),nextPageToken=void 0}else o=window.location.protocol+"//"+window.location.hostname+"/feeds/"+e+"/default?start-index="+t+"#max-results=150#orderby=published#alt=json-in-script#callback=bloggerJSON";o=o.replace(/#/g,amp),n.type="text/javascript",n.src=o,document.getElementsByTagName("head")[0].appendChild(n)}function bloggerJSON(e){var t=[];if(useApiV3||void 0===urlTotal&&(urlTotal=parseInt(e.feed.openSearch$totalResults.$t)),useApiV3){try{e.items.forEach(function(e,n){t.push(e.url)})}catch(e){}nextPageToken=e.nextPageToken}else try{e.feed.entry.forEach(function(n,o){var r=e.feed.entry[o];r.link.forEach(function(e,n){"alternate"===r.link[n].rel&&t.push(r.link[n].href)})})}catch(e){}urlSearch(window.location.pathname,t),urlTotal>150?(jsonIndex+=150,urlTotal-=150,getJSON(postsOrPages[feedPriority],jsonIndex)):nextPageToken?getJSON(postsOrPages[feedPriority]):secondRequest&&(nextPageToken=void 0,urlTotal=void 0,jsonIndex=1,secondRequest=!1,0===feedPriority?(feedPriority=1,getJSON("posts",1)):1===feedPriority&&(feedPriority=0,getJSON("pages",1)))}function bloggerJS(e){e&&(feedPriority=e),urlManager()}bloggerJS();
//]]>
</script></code></span></pre><p></p><p><br /></p><p>Kamu dapat menaruh javascript diatas dalam template kamu di antara tag <head> dan </head>. Lalu save template blogspot kamu. Setelah itu, maka setiap link kamu akan kehilangan tulisan tanggal dan tahun.</p><p>Pada dasarnya, permanent link dari blogspot atau blogger dapat diubah melalui laman dashboard compose setiap postingan pada option Link di samping kanan. Namun, untuk tanggal dan tahun kamu tidak dapat serta merta menghapusnya. Hal ini lah mendasari lahirnya customisasi menggunakan javascript untuk menghapus tanggal dan tahun pada link postingan blogspot ini.</p><p>Namun, karena ini bersifat customisasi akan selalu ada kekurangannya. Semisal untuk script ini, memang link postingan kamu akan terasa lebih ringkas, namun jika kamu langsung menuju link yang terpampang setelah menggunakan script ini maka kamu dapat melihat link error not found terlebih dahulu sebelum menuju postingan yg dituju.</p>
Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-47861960814925438842022-11-04T15:12:00.019+07:002022-11-04T15:45:50.288+07:00Membuat Game Brick Breaker dengan Javascript<p> Kali ini Nubie akan membuat sebuah game yang sedang naik daun, Brick Breaker dengan menggunakan Javascript.</p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Apa itu Brick Breaker ?</h2><p>Game brick breaker adalah game yang terdiri dari barisan kotak-kotak yang disebut sebagai Brick, Ball dan juga Paddle. Game ini menitik beratkan cara bermain bagaimana kamu mengatur bola tersebut untuk menghancurkan Brick yang tersusun dan mengarahkannya menggunakan Paddle.</p><p>Point kamu akan dihitung bila bola kamu mengenai Brick dan Brick yang kena akan hilang.</p><p><br /></p><h2 style="text-align: left;">Game sederhana Brick Breaker dengan JS</h2><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s320/JavaScript.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s320/JavaScript.jpg" width="320" /></a></div><div><br /></div><p>Nah, bagi kamu yang ingin membuat game sederhana Brick Breaker ini kamu dapat menggunakan bahasa pemograman Javascript, loh. Kamu dapat menaruh game sederhana ini di website kamu tanpa membutuhkan ekseksui aplikasi lainnya. Untuk mengaksesnya pun kamu hanya membutuhkan Browser kesayangan kamu.</p><p>Nubie programmer akan memberikan contoh sederhana source code membuat Brick Breaker dengan Javascript. </p><h3 style="text-align: left;">Contoh Brick Breaker dengan JS</h3>
<p> </p>
<div class="text-center"><button class="btn btn-danger" id="cButton" onclick="StartGame()">Start Game</button></div>
<canvas height="500" id="myCanvas" width="700"></canvas>
<script type="application/javascript">
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var ballRadius = 5;
var x = canvas.width / 2;
var y = canvas.height - 30;
var dx = 2;
var dy = -2;
var paddleHeight = 5;
var paddleWidth = 75;
var paddleX = (canvas.width - paddleWidth) / 2;
var rightPressed = false;
var leftPressed = false;
var brickRowCount = 10;
var brickColumnCount = 20;
var brickWidth = 35;
var brickHeight = 10;
var brickPadding = 5;
var brickOffsetTop = 30;
var brickOffsetLeft = 30;
var bricks = [];
for (var c = 0; c < brickColumnCount; c++) {
bricks[c] = [];
for (var r = 0; r < brickRowCount; r++) {
bricks[c][r] = {x: 0, y: 0, status: 1};
}
}
var score = 0;
var bricksHit = 0;
var bricksHitPerLive = 0;
var lives = 3;
function drawBall() {
ctx.beginPath();
ctx.arc(x, y, ballRadius, 0, Math.PI * 2);
//ctx.fillStyle = setRandomColor();
ctx.fillStyle = "#ffffff";
ctx.fill();
ctx.closePath();
}
function drawPaddle() {
ctx.beginPath();
ctx.rect(paddleX, canvas.height - paddleHeight, paddleWidth, paddleHeight);
ctx.fillStyle = "#0095DD";
ctx.fill();
ctx.closePath();
}
function drawBricks() {
for (var c = 0; c < brickColumnCount; c++) {
for (var r = 0; r < brickRowCount; r++) {
if (bricks[c][r].status == 1) {
var brickX = (c * (brickWidth + brickPadding)) + brickOffsetLeft;
var brickY = (r * (brickHeight + brickPadding)) + brickOffsetTop;
bricks[c][r].x = brickX;
bricks[c][r].y = brickY;
ctx.beginPath();
ctx.rect(brickX, brickY, brickWidth, brickHeight);
ctx.fillStyle = "#1eff00";
ctx.fill();
ctx.closePath();
}
}
}
}
function drawScore() {
ctx.font = "16px courier";
ctx.fillStyle = "#ffffff";
ctx.fillText("Score: " + score, 8, 20)
}
function drawLives() {
ctx.font = "16px courier";
ctx.fillStyle = "#fffff";
ctx.fillText("Lives: " + lives, canvas.width - 80, 20)
}
function draw() {
ctx.clearRect(0, 0, canvas.width, canvas.height);
drawBricks();
drawPaddle();
drawBall();
drawScore();
drawLives();
collisionDetection();
if (x + dx > canvas.width - ballRadius || x + dx < ballRadius) {
dx = -dx;
}
if (y + dy < ballRadius + ballRadius) {
dy = -dy;
} else if (y + dy > canvas.height - ballRadius) {
if (x > paddleX && x < paddleX + paddleWidth && y + dy > canvas.height - paddleHeight * 2) {
dy = -dy - 0.2;
} else {
lives--;
bricksHitPerLive = 0;
if (!lives) {
alert("GAME OVER");
document.location.reload();
} else {
x = canvas.width / 2;
y = canvas.height - 30;
dx = 2;
dy = -2;
paddleX = (canvas.width - paddleWidth) / 2;
}
}
}
x += dx;
y += dy;
if (rightPressed) {
paddleX += 5;
if (paddleX + paddleWidth > canvas.width) {
paddleX = canvas.width - paddleWidth;
}
} else if (leftPressed) {
paddleX -= 5;
if (paddleX < 0) {
paddleX = 0;
}
}
requestAnimationFrame(draw);
}
document.addEventListener("keydown", keyDownHandler, false);
document.addEventListener("keyup", keyUpHandler, false);
document.addEventListener("mousemove", mouseMoveHandler, false)
function keyDownHandler(e) {
if (e.key == "Right" || e.key == "ArrowRight") {
rightPressed = true;
} else if (e.key == "Left" || e.key == "ArrowLeft") {
leftPressed = true;
}
}
function keyUpHandler(e) {
if (e.key == "Right" || e.key == "ArrowRight") {
rightPressed = false;
} else if (e.key == "Left" || e.key == "ArrowLeft") {
leftPressed = false;
}
}
function mouseMoveHandler(e) {
var relativeX = e.clientX - canvas.offsetLeft;
if (relativeX > 0 && relativeX < canvas.width) {
paddleX = relativeX - paddleWidth / 2;
}
}
function StartGame() {
draw();
}
function collisionDetection() {
for (var c = 0; c < brickColumnCount; c++) {
for (var r = 0; r < brickRowCount; r++) {
var b = bricks[c][r];
if (b.status == 1) {
if (x > b.x && x < b.x + brickWidth && y > b.y && y < b.y + brickHeight) {
dy = -dy;
b.status = 0;
bricksHit++;
bricksHitPerLive++;
score += bricksHitPerLive;
if (bricksHit == brickRowCount * brickColumnCount) {
alert("YOU WIN, CONGRATULATIONS!\nYOU SCORED " + score + " POINTS.");
document.location.reload();
}
}
}
}
}
}
function setRandomColor() {
var randomColor = '#' + Math.floor(Math.random() * 16777215).toString(16);
return randomColor;
}
</script>
<p><br /></p><p><br /></p><h3 style="text-align: left;">Source Code Brick Breaker JS</h3><p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code><canvas height="500" id="myCanvas" width="700"></canvas>
<script type="application/javascript">
var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var ballRadius = 5;
var x = canvas.width / 2;
var y = canvas.height - 30;
var dx = 2;
var dy = -2;
var paddleHeight = 5;
var paddleWidth = 75;
var paddleX = (canvas.width - paddleWidth) / 2;
var rightPressed = false;
var leftPressed = false;
var brickRowCount = 10;
var brickColumnCount = 20;
var brickWidth = 35;
var brickHeight = 10;
var brickPadding = 5;
var brickOffsetTop = 30;
var brickOffsetLeft = 30;
var bricks = [];
for (var c = 0; c < brickColumnCount; c++) {
bricks[c] = [];
for (var r = 0; r < brickRowCount; r++) {
bricks[c][r] = {x: 0, y: 0, status: 1};
}
}
var score = 0;
var bricksHit = 0;
var bricksHitPerLive = 0;
var lives = 3;
function drawBall() {
ctx.beginPath();
ctx.arc(x, y, ballRadius, 0, Math.PI * 2);
//ctx.fillStyle = setRandomColor();
ctx.fillStyle = "#ffffff";
ctx.fill();
ctx.closePath();
}
function drawPaddle() {
ctx.beginPath();
ctx.rect(paddleX, canvas.height - paddleHeight, paddleWidth, paddleHeight);
ctx.fillStyle = "#0095DD";
ctx.fill();
ctx.closePath();
}
function drawBricks() {
for (var c = 0; c < brickColumnCount; c++) {
for (var r = 0; r < brickRowCount; r++) {
if (bricks[c][r].status == 1) {
var brickX = (c * (brickWidth + brickPadding)) + brickOffsetLeft;
var brickY = (r * (brickHeight + brickPadding)) + brickOffsetTop;
bricks[c][r].x = brickX;
bricks[c][r].y = brickY;
ctx.beginPath();
ctx.rect(brickX, brickY, brickWidth, brickHeight);
ctx.fillStyle = "#1eff00";
ctx.fill();
ctx.closePath();
}
}
}
}
function drawScore() {
ctx.font = "16px courier";
ctx.fillStyle = "#ffffff";
ctx.fillText("Score: " + score, 8, 20)
}
function drawLives() {
ctx.font = "16px courier";
ctx.fillStyle = "#fffff";
ctx.fillText("Lives: " + lives, canvas.width - 80, 20)
}
function draw() {
ctx.clearRect(0, 0, canvas.width, canvas.height);
drawBricks();
drawPaddle();
drawBall();
drawScore();
drawLives();
collisionDetection();
if (x + dx > canvas.width - ballRadius || x + dx < ballRadius) {
dx = -dx;
}
if (y + dy < ballRadius + ballRadius) {
dy = -dy;
} else if (y + dy > canvas.height - ballRadius) {
if (x > paddleX && x < paddleX + paddleWidth && y + dy > canvas.height - paddleHeight * 2) {
dy = -dy - 0.2;
} else {
lives--;
bricksHitPerLive = 0;
if (!lives) {
alert("GAME OVER");
document.location.reload();
} else {
x = canvas.width / 2;
y = canvas.height - 30;
dx = 2;
dy = -2;
paddleX = (canvas.width - paddleWidth) / 2;
}
}
}
x += dx;
y += dy;
if (rightPressed) {
paddleX += 5;
if (paddleX + paddleWidth > canvas.width) {
paddleX = canvas.width - paddleWidth;
}
} else if (leftPressed) {
paddleX -= 5;
if (paddleX < 0) {
paddleX = 0;
}
}
requestAnimationFrame(draw);
}
document.addEventListener("keydown", keyDownHandler, false);
document.addEventListener("keyup", keyUpHandler, false);
document.addEventListener("mousemove", mouseMoveHandler, false)
function keyDownHandler(e) {
if (e.key == "Right" || e.key == "ArrowRight") {
rightPressed = true;
} else if (e.key == "Left" || e.key == "ArrowLeft") {
leftPressed = true;
}
}
function keyUpHandler(e) {
if (e.key == "Right" || e.key == "ArrowRight") {
rightPressed = false;
} else if (e.key == "Left" || e.key == "ArrowLeft") {
leftPressed = false;
}
}
function mouseMoveHandler(e) {
var relativeX = e.clientX - canvas.offsetLeft;
if (relativeX > 0 && relativeX < canvas.width) {
paddleX = relativeX - paddleWidth / 2;
}
}
draw();
function collisionDetection() {
for (var c = 0; c < brickColumnCount; c++) {
for (var r = 0; r < brickRowCount; r++) {
var b = bricks[c][r];
if (b.status == 1) {
if (x > b.x && x < b.x + brickWidth && y > b.y && y < b.y + brickHeight) {
dy = -dy;
b.status = 0;
bricksHit++;
bricksHitPerLive++;
score += bricksHitPerLive;
if (bricksHit == brickRowCount * brickColumnCount) {
alert("YOU WIN, CONGRATULATIONS!\nYOU SCORED " + score + " POINTS.");
document.location.reload();
}
}
}
}
}
}
function setRandomColor() {
var randomColor = '#' + Math.floor(Math.random() * 16777215).toString(16);
return randomColor;
}
</script></code></span></pre><p></p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-56615605241290264272022-10-28T13:08:00.010+07:002022-10-28T13:11:27.407+07:00Fungsi Copy dengan Javascript<p>Berikut ini Nubie akan menjelaskan fungsi copy dengan javascript yang kamu dapat gunakan untuk membuat sebuah aplikasi web-based.</p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Fungsi Copy pada JS</h2><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s320/JavaScript.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="Fungsi Copy dengan Javascript" border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/w320-h320/JavaScript.jpg" title="Fungsi Copy dengan Javascript" width="320" /></a></div><p>Pada Javascript kamu dapat membuat fungsi Copy suatu element text dalam sebuah html dengan bantuan sebuah trigger berupa Tombol.</p><p>Secara dasar, fungsi copy di Javascript ini hanya berupa execCommand seperti dibawah ini :</p><p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code> document.execCommand("copy");</code></span></pre><p></p><p><br /></p><p>Fungsi execCommand Copy ini harus kamu gabungkan dengan fungsi select text js untuk memblok text yang ingin kamu copy. Dan kamu pun memerlukan sebuah tombol untuk mempermudah trigger penggunaan execCommand ini.</p><h3 style="text-align: left;">Contoh</h3><p>
<button class="btn btn-danger" id="cButton" onclick="CopyHasil()" target="#HTMLEntitiesText">Copy</button><br /><br />
<textarea class="form-control" id="TextArea">Text yang bisa kamu copy dengan mengklik tombol copy diatas</textarea>
<script type="application/javascript">
function CopyHasil() {
let textarea = document.getElementById("TextArea");
textarea.select();
document.execCommand("copy");
}
</script>
</p><p><br /></p><h3 style="text-align: left;">Source</h3><p>
<span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code><button id="cButton" onclick="CopyHasil()" target="#HTMLEntitiesText">Copy</button>
<textarea id="TextArea">Text yang bisa kamu copy dengan mengklik tombol copy diatas</textarea>
<script type="application/javascript">
function CopyHasil() {
let textarea = document.getElementById("TextArea");
textarea.select();
document.execCommand("copy");
}
</script> </code></span></pre>
<p></p><p><br /></p><p>Nah, itulah penjelasan singkat fungsi execCommand Copy pada Javascript berikut contoh penggunaannya.</p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-88600730700881792892022-10-27T15:48:00.006+07:002022-10-27T15:52:41.053+07:00Merubah Text menjadi HTML Entity dengan Javascript<p>Kali ini Nubie akan membagikan ke kamu cara merubah text biasa menjadi sebuah HTML Entity atau HTML Entities.</p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Apa itu HTML Entity ?</h2><p>HTML Entity adalah sepotong teks ("string") yang dimulai dengan ampersand (&) dan diakhiri dengan titik koma (;). HTML Entities sering digunakan untuk menampilkan karakter yang dicadangkan (yang sebaliknya akan ditafsirkan sebagai kode HTML), dan karakter yang tidak terlihat (seperti spasi yang tidak terputus). Kamu juga dapat menggunakannya sebagai pengganti karakter lain yang sulit diketik dengan keyboard standar.</p><p><br /></p><h2 style="text-align: left;">Aplikasi Sederhana JS : Text menjadi HTML Entity</h2><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s320/JavaScript.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s1600/JavaScript.jpg" width="320" /></a></div><br /><div><br /></div><p>Kamu dapat merubah suatu text ataupun script yg sebelumnya tampak biasa saja menjadi sebuah entitas HTML yang disebut sebagai HTML Entity. HTML Entity ini nantinya akan merubah setiap entitas yang memiliki karakter pengganti HTML. </p><p>Penggunaan HTML Entity ini lebih aman digunakan untuk sebuah postingan. Karena entitas ini menerjemahkan semua huruf ataupun tanda baca menjadi text code yang hanya dapat dibaca html</p><p><br /></p>
<button class="btn btn-danger" id="cButton" onclick="ConvertToHTMLEntities()" type="button" value="Convert"><svg aria-hidden="true" class="jt-icon"><use xlink:href="#i-edit"></use></svg> Convert</button>
<p><label>Text Asal</label><textarea class="form-control" id="postText" onclick="this.focus();this.select()" rows="20" style="min-width: 100%;"></textarea></p>
<p><label>Text yang telah menggunakan HTML Entities</label></p><p><textarea class="form-control" id="HTMLEntitiesText" readonly="readonly" rows="20" style="min-width: 100%;"></textarea></p>
<script type="application/javascript">
function ConvertToHTMLEntities() {
var BaseText = document.getElementById("postText");
var FinishText = document.getElementById("HTMLEntitiesText");
var encodedStr = BaseText.value.replace(/[\u00A0-\u9999<>\&]/gim, function(i) {
return '&#'+i.charCodeAt(0)+';';
});
FinishText.value = encodedStr.replace(/&/gim, '&');
}
</script>
<h3 style="text-align: left;">Source Code</h3><p>
Berikut ini adalah script yang Nubie gunakan untuk membuat Tools merubah Text menjadi HTML Entity diatas.
</p>
<p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><code><button class="btn btn-danger" id="cButton" onclick="ConvertToHTMLEntities()" type="button" value="Convert"><svg aria-hidden="true" class="jt-icon"><use xlink:href="#i-edit"></use></svg> Convert</button>
<p><label>Text Asal</label><textarea class="form-control" id="postText" onclick="this.focus();this.select()" rows="20" style="min-width: 100%;"></textarea></p>
<p><label>Text yang telah menggunakan HTML Entities</label></p><p><textarea class="form-control" id="HTMLEntitiesText" readonly="readonly" rows="20" style="min-width: 100%;"></textarea></p>
<script type="application/javascript">
function ConvertToHTMLEntities() {
var BaseText = document.getElementById("postText");
var FinishText = document.getElementById("HTMLEntitiesText");
var encodedStr = BaseText.value.replace(/[\u00A0-\u9999<>\&]/gim, function(i) {
return '&#'+i.charCodeAt(0)+';';
});
FinishText.value = encodedStr.replace(/&/gim, '&');
}
</script></code></span></pre><p></p>
Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-4369614476326063862022-09-07T14:51:00.024+07:002022-10-27T10:11:43.322+07:00Cara Mengambil Postingan dari Feeds Blogspot dengan Java Script JSON<p style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s1600/JavaScript.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR49kL29Mu_9TM-ul1AMYaTbKKB9eMDnXTfpPByRN4dNnu_1uAplJyDZUqSimRF-FlM7PU3NoFbFzXICVyX92TlQC-aA7O1J07tXywCqwtcoqs8iL-ekFHdUZxXiuxHQTmkQBSD6x-XXk/s1600/JavaScript.jpg" /></a></p><p>Buat kamu yang memiliki blog yang cukup banyak dan ingin menampilkan postingan terbaru dari blog satu ke yg lainnya, kamu membutuhkan script dibawah ini.</p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Script Ambil Post Feeds Blogger dengan JSON</h2><p>Secara default google mengaktifkan JSON di setiap produk nya terutama Blogspot atau blogger. Google juga menjelaskan dalam page developernya tentang penggunaan JSON untuk mengambil data dari suatu blog. Jadi, selain bisa mengambil post dari blogger milik kamu, script dibawah ini juga dapat mengambil post melalui feed blog orang lain juga loh.</p><p>Seperti yang kamu tahu, blogger ataupun blogspot merupakan salah satu fasilitas blogging dari Google yang memiliki feeds format XML. Biasanya feeds dari blogspot ini berurl di https://nubieprogram.blogspot.com/feeds/posts/default . Nah, dari url tersebut kamu dapat membaca keseluran isi blog kamu tanpa kecuali, mulai dari judul, isi, gambar hingga tagnya. Untuk itu, kamu membutuhkan script JSON dibawah ini untuk mengambil dan memproses nya kedalam aturan yang ingin kamu gunakan.</p>
<pre><div id="Postingan"></div>
<script type="text/javascript">
function AmbilPostFeed(json) {
var list = [];
var data = json.feed.entry;
for (var i = 0; i < data.length; i++) {
var img = data[i].media$thumbnail ? "<img src='" + data[i].media$thumbnail.url + "'>" : "";
var Title = data[i].title.$t;
var content = data[i].content.$t;
var stripcontent = content.replace(/(<([^>]+)>)/gi, "");
var TrimmedContent = stripcontent.substring(0, 150);
for(var o=0;o<data[i].link.length;o++){
if("replies"==data[i].link[o].rel&&"text/html"==data[i].link[o].type)
var l=data[i].link[o].title,m=data[i].link[o].href;
if("alternate"==data[i].link[o].rel){
Postlink=data[i].link[o].href;break
}
}
list.push("<a href='"+ Postlink +"'><h1>"+ Title +"</h1></a><p>" + img + "." + TrimmedContent + </p>");
}
document.getElementById('Postingan').innerHTML = list.join('');
}
</script>
<script src="https://nubieprogram.blogspot.com/feeds/posts/default?alt=json&amp;max-results=3&amp;callback=AmbilPostFeed"></script>
</pre>
<p>Dari script diatas, kamu dapat merubahnya sesuai dengan blog kamu, namun pastikan setiap tag memiliki kesamaan nama ya.</p><p><br /></p><h3 style="text-align: left;">Script Ambil Post Feeds Blogger dengan JSON Berdasarkan Label Terpilih</h3><p>Bagi kamu yang ingin mengambil postingan dari feeds blogspot dengan java script JSON yang memiliki label terpilih atau dengan kata lain mengambil seluruh post dari salah satu label, maka kamu hanya perlu merubah script diatas menjadi seperti dibawah ini;</p><p><br /></p>
<pre><div id="PostinganLabel"></div>
<script type="text/javascript">
function PostinganLabelPost(json) {
var list = [];
var data = json.feed.entry;
for (var i = 0; i < data.length; i++) {
var img = data[i].media$thumbnail ? "<img src='" + data[i].media$thumbnail.url + "'>" : "";
var content = data[i].content.$t;
var stripcontent = content.replace(/(<([^>]+)>)/gi, "");
var trimcontent = stripcontent.substring(0, 0);
for(var o=0;o<data[i].link.length;o++){
if("replies"==data[i].link[o].rel&&"text/html"==data[i].link[o].type)
var l=data[i].link[o].title,m=data[i].link[o].href;
if("alternate"==data[i].link[o].rel){
Postlink=data[i].link[o].href;break
}
}
list.push("<a href='"+ Postlink +"'><h1>"+ Title +"</h1></a><p>" + img + "." + TrimmedContent + </p>");
}
document.getElementById('PostinganLabel').innerHTML = list.join('');
}
</script>
<script src="https://nubieprogram.blogspot.com/feeds/posts/default/-/labelterpilih?alt=json&max-results=3&callback=PostinganLabelPost"></script></pre>
<p><br /></p><p>Kamu dapat merubah labelterpilih pada script diatas sesuai dengan label yang kamu inginkan. Itulah cara mengambil postingan dari Feeds blogspot atau blogger dengan menggunakan Java Script JSON.</p><h4 style="text-align: left;">Related Article</h4><p></p><ul style="text-align: left;"><li><a href="https://developers.google.com/gdata/docs/json#json" rel="nofollow" target="_blank">Google Data APIs | JSON Alt Type</a></li></ul>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-10686713789797286162020-10-27T11:33:00.004+07:002022-10-27T11:05:56.364+07:003 Step Cara Aktifkan File_Get_Contents dan FOpen pada PHP<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpMhUdA0qV9qUCScEDysbKzMmA-VbnZ5KWpDeyytPccW_Xd68ruI7GLtdhLD4x4x2ZVUE_CtTqyotK51tpZtOeNvASuS1HNaKgbJ-cSUGAjRSO4md5culUuutaCacCFlkFqpwDJEF7jHE/s327/php.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="327" data-original-width="327" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpMhUdA0qV9qUCScEDysbKzMmA-VbnZ5KWpDeyytPccW_Xd68ruI7GLtdhLD4x4x2ZVUE_CtTqyotK51tpZtOeNvASuS1HNaKgbJ-cSUGAjRSO4md5culUuutaCacCFlkFqpwDJEF7jHE/s320/php.jpg" /></a></div><br /><p><br /></p><p>Sebelumnya gue udah pernah nulis <a href="https://nubieprogram.blogspot.com/2016/04/pengertian-dan-fungsi-allowurlfopen-di.html">Pengertian dan Fungsi Allow_URL_Fopen di PHP</a> yg ngejelasin gimana sih cara make fungsi file_get_contents() ataupun Allow_URL_Fopen. Nah, sekarang gue mau kasih tau cara gimana sih cara aktifin biar fungsi itu bisa digunakan.</p><span><a name='more'></a></span><p><br /></p><p>Secara default, di hosting website menonaktifkan fungsi fopen() ini. Mungkin beberapa hosting on, tapi kebanyakan sih off. Nah, untuk itu maka tutorial ini hadir, tutorial yg cukup singkat ini akan ngejelasin gimana sih caranya aktifin fopen.</p><p>1. Buatlah file php.ini pada folder public_html, bila sudah ada bisa langsung di edit ya.</p><p>2. Tulis lah pada baris baru command dibawah ini,</p><p style="text-align: center;"><span style="font-family: courier;"><pre>allow_url_fopen = On</pre></span></p><p>3. Done, maka allow_url_fopen akan aktif.</p><p><br /></p><p>Selain 3 step diatas, ada satu cara lagi yg dapat digunakan, yaitu melalui CPanel, lalu pilih Menu Select PHP Version, lalu pilih switch to PHP Options. Setelah itu carilah extension allow_url_fopen dan beri tanda centang. Untuk cara ini dibeberapa CPanel sudah tidak mendukung, jadi mungkin lebih baik untuk mencoba 3 step diatas.</p><p>Apabila kedua cara ini masih tetap tidak bisa, kemungkinan fopen di nonaktifkan dari hosting temen-temen, silahkan hubungi layanan hosting temen-temen untuk lebih jelasnya.</p><p><br /></p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-18058399379981098492020-10-26T09:42:00.004+07:002022-10-27T11:09:02.852+07:00Instal Webmin (System Administration web-based) di Linux Ubuntu<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpWa9xG4h-G5WAFqBJ3XNsGNi4p1ojoHvsBSGwRJoMVmZDHMLXUprd2QK_ccStW7iGBgURHq0vaHgKe9P0XrHK8PurZw1QeUkknQv_x_Mfax5N9-3Ud5ldUX2g5ctUmNPps_yQvqYPoEE/s1600/webmin-logo.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="300" data-original-width="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpWa9xG4h-G5WAFqBJ3XNsGNi4p1ojoHvsBSGwRJoMVmZDHMLXUprd2QK_ccStW7iGBgURHq0vaHgKe9P0XrHK8PurZw1QeUkknQv_x_Mfax5N9-3Ud5ldUX2g5ctUmNPps_yQvqYPoEE/s1600/webmin-logo.png" /></a></div>Webmin adalah System Administration web-based Interface yg digunakan di system operasi Linux pada umumnya. Webmin ini berfungsi buat mengendalikan Linux secara Online via PHP Web Interface. Nah, gimana cara instalasinya.<br /><br /><a name='more'></a>Oke, bagi sebagian orang ato pakar Linux mungkin udah paham banget ini Webmin dan cara instalnya. Tapi, kali aja pada lupa ato mungkin newbie yg kek gue mampir kesini buat baca" bisa juga make tutorial ini.<br /><br />Webmin disini, sebenernya tuh kaya Server Management buat Unix / Linux tapi make tampilan web gitu. Jadi, Administrator cuma perlu login via website dan bisa ngatur server linuxnya secara remote. secara kasarnya gue bisa bilang, "Shutdown dan Restart Linux Ubuntu via browser".<br /><br />Buat yg belum paham, mungkin nantinya bakal paham kalo udah diinstal kali ya. Karena disini gue mau ngasih tau cara instalnya doang (karna gue juga bukan dosen / guru) jadi lebih baik gue langsung ke cara instalasinya aja ya.<br /><br /><b>Cara Instal Webmin di Linux Ubuntu 16.04</b><br />1. Pertama-tama kita perlu menginputkan sources address dari webmin ke sourcelist repository milik Ubuntu kita, dengan cara, buka sourcelist dengan mengetikkan command konsol berikut :<br /><br /><span style="font-family: courier;"><pre>sudo nano /etc/apt/sources.list</pre></span><br /><br />lalu inputkan dibagian paling bawah address berikut<br /><br /><span style="font-family: courier;"><pre>deb http://download.webmin.com/download/repository sarge contrib</pre></span><br /><br />Lalu save.<br /><br />2. Lalu kita perlu menambahkan key agar system percaya repository webmin ini. Masih di konsol ketikkan,<br /><br /><span style="font-family: courier;"><pre>wget http://www.webmin.com/jcameron-key.asc</pre></span><br /><span>lalu</span><br /><span style="font-family: courier;"><pre>sudo apt-key add jcameron-key.asc</pre></span><br /><br />3. Update package<br /><br /><span style="font-family: courier;"><pre>sudo apt-get update </pre></span><br /><br />4. Lalu Instal webmin dengan mengetikkan,<br /><br />sudo apt-get install webmin<br /><br />Lalu tunggu hingga selesai. setelah selesai, maka webmin ini dapat diakses dengan browser dengan address<br /><br /><span style="font-family: courier;"><pre>https://AlamatIpAddressServer:10000</pre></span><br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyNdMxiq26nqVBwCxLZRG-7waYgrJngYDESvS4-lwlRZy5jGvt3MTVksgVlcGVdK3fq1UM4GtBEOTQ2XntM8icWZ42XqM8fBi3UgMxL7zf_og2WCM8Zq1eDgknHWhQh850kZAHRq9nbBg/s1600/webmin-login.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="694" data-original-width="1365" height="162" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyNdMxiq26nqVBwCxLZRG-7waYgrJngYDESvS4-lwlRZy5jGvt3MTVksgVlcGVdK3fq1UM4GtBEOTQ2XntM8icWZ42XqM8fBi3UgMxL7zf_og2WCM8Zq1eDgknHWhQh850kZAHRq9nbBg/s320/webmin-login.jpg" width="320" /></a></div><br />dan login dengan user serta password root user Linux teman-teman semua. <br /><i><br /></i><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkxWmWVuaLOXVcJz0LpZVn6UMV61amcBZfURIdx4fq2c7b91mlMSXAT_-5O12XT4irt2YmuwyF_XipJr2CHmogR7w_n7hEeaKqTtTMaemu3XEAQxeKqxSHfe1Ev2mtr2VufRnmYiyIUdg/s1600/webmin-dashboard.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="660" data-original-width="1365" height="154" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkxWmWVuaLOXVcJz0LpZVn6UMV61amcBZfURIdx4fq2c7b91mlMSXAT_-5O12XT4irt2YmuwyF_XipJr2CHmogR7w_n7hEeaKqTtTMaemu3XEAQxeKqxSHfe1Ev2mtr2VufRnmYiyIUdg/s320/webmin-dashboard.jpg" width="320" /></a></div><i><br /></i><i><br /></i>eh, tambahan kalo server temen-temen ga mendukung https, maka bisa diganti ke http webminnya dengan edit .<br /><br /><span style="font-family: courier;"><pre>/etc/webmin/miniserv.conf</pre></span><br /><br />lalu ganti<br /><span style="font-family: "courier new" , "courier" , monospace;"><br /></span><span style="font-family: courier;"><pre>ssl=1</pre></span><br /><br />menjadi<br /><br /><span style="font-family: courier;"><pre>ssl=0</pre></span><br /><br />dan selesai deh.<br /><br /><br /><p> </p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-62193070830377069122020-10-24T09:10:00.007+07:002022-10-27T11:10:31.975+07:00Install dan Update PHP 7.2 Pada Ubuntu 18.04 LTS<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAstn7DO8XTs1aWlDn1_7_8Djy5Q-MvHDHAiMb1BmfNBL-gv3HZ_RXAauVNhM3OeSw-8XqaRWDLFuiQWilDgANG5v-u8vb_kJl7s3z-LqKdyXLnSU9Uflsnun4PUBIBefpbO652pRrKtA/s320/Ubuntu.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAstn7DO8XTs1aWlDn1_7_8Djy5Q-MvHDHAiMb1BmfNBL-gv3HZ_RXAauVNhM3OeSw-8XqaRWDLFuiQWilDgANG5v-u8vb_kJl7s3z-LqKdyXLnSU9Uflsnun4PUBIBefpbO652pRrKtA/s0/Ubuntu.jpg" /></a></div><br /><p>Disini gue mau ngasih tau, gimana caranya install ataupun update PHP yg ada pada Ubuntu 18.04 LTS menjadi PHP 7.2.</p><span><a name='more'></a></span><p>Gue pikir ini cukup simple dilakukan, tapi tetep inget urutan commandnya ya jngn dilewat satu pun. Nah, Pada konsol Ubuntu 18.04 LTS ketikkan command berikut ini secara berurutan</p><p><br /></p><p><span style="font-family: courier;"><pre>sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install -y php7.2</pre></span></p><p><br /></p><p>Setelah semua sukses terinstall maka di Ubuntu 18.04 LTS nya sudah terinstal PHP 7.2 dengan baik, hanya saja gimana cara setting default PHP version nya?</p><p><br /></p><h3 style="text-align: left;">Cara Update Versi PHP pada Ubuntu 18.04 LTS</h3><p>Nah, di Ubuntu 18.04 LTS gue sudah ada PHP 5.6 yg secara default digunakan dan ada PHP 7.2 yg baru diinstal dan blom di enable. Untuk itu, gue akan mengganti versi PHP 5.6 yg lg running menjadi PHP 7.2.</p><p><br /></p><p>Pada Konsol Ubuntu ketikkan command berikut ini secara berurutan</p><p><br /></p><p><span style="font-family: courier;"><pre>sudo a2dismod PHP5.6</pre></span></p><p><br /></p><p>Command diatas ini adalah untuk mendisable PHP 5.6 yg nantinya kita ganti jadi PHP 7.2</p><p><br /></p><p><span style="font-family: courier;"><pre>sudo a2enmod PHP7.2</pre></span></p><p><br /></p><p>Lalu restart apache nya dengan command</p><p><br /></p><p><span style="font-family: courier;"><pre>sudo service apache2 restart</pre></span></p><p><br /></p><p>Nah, setelah melewati 2 cara diatas, maka di Ubuntu 18.04 LTS gue udah terinstall dan tergunakan PHP 7.2. Asal nurutin langkah-langkahnya sih ini bakal mudah. Selamat mencoba ya.</p><p><br /></p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-45732325595703998122020-10-22T12:39:00.011+07:002022-10-27T13:47:35.193+07:00Crop Image pada HTML dengan CSS Object-Fit<p>Kali ini gue mau ngasih tau tips trik gimana caranya menampilkan gambar yg ter-crop dengan menggunakan CSS dan HTML. Misal, pernah kan punya gambar yg gede banget trus butuh cuma beberapa bagian, tapi terlalu malas untuk menyesuaikan cropping dengan Photoshop atau image editor lainnya, mungkin ini solusinya.</p><span><a name='more'></a></span><p><br /></p><h2 style="text-align: left;">Crop Image dengan Object-Fit</h2><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyexr9NAU77pdIkI5nirljGHsMFtrzjwRvy27hPPKWo0GSiUtxLzCoZgwfr9T1U_r1sNApyBeWDCXrH1v-6VuC7JpjnDyGOMQW14gBtsiGqdFe9LuNHjFTYH5En3rye5wA2ZS6emh4l2E/s320/HTML-CSS.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyexr9NAU77pdIkI5nirljGHsMFtrzjwRvy27hPPKWo0GSiUtxLzCoZgwfr9T1U_r1sNApyBeWDCXrH1v-6VuC7JpjnDyGOMQW14gBtsiGqdFe9LuNHjFTYH5En3rye5wA2ZS6emh4l2E/w320-h320/HTML-CSS.jpg" width="320" /></a></div><br /><p><br /></p><p>Cropping image pada HTML dengan bantuan CSS sebenernya cukup mudah, ga perlu script yg jelibet ataupun lainnya. Gue bakal jelasin per baris scriptnya.</p><p>Pada file htmlnya buat lah script seperti ini</p><p><br /></p><p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;"><img src="url/image.jpg" /></span></pre><p></p><p><br /></p><p>Script diatas dipergunakan untuk memanggil gambar pada tag img. Sedangkan class cropped-image di fungsikan sebagai penanda bahwa lahan yg di gunakan untuk image ini nantinya bernama cropped-image pada htmlnya. </p><p>Pada tahap ini, kita akan melihat gambar nya tampil utuh pada HTML nya jika di view dengan browser.</p><p>Nah, tahap pembuatan HTML nya udah sampe sini aja, next kita buatkan CSS nya untuk membantu gambar nya tercrop. Isis dari CSS nya adalah seperti berikut.</p><p><br /></p><p><span style="font-family: courier;"></span></p><pre><span style="font-family: courier;">/* Style untuk crop image */
.cropped-image{
width: 200px; /* lebar crop gambar yg diinginkan */
height: 200px; /* tinggi crop gambar yg diinginkan */
object-fit: cover;
object-position: 20% 10%; /* menentukan view crop image yg diinginkan */
border: 5px solid black;
}</span></pre><p></p><p><br /></p><p>Nah, karna sebelumnya gue menggunakan class dengan nama cropped-image maka di file css nya kita menggunakan .cropped-image. Hal ini di tujukan agar style yg kita berikan tertuju pada div class dengan nama cropped-image.</p><p>Tag Object-fit, adalah tag yg digunakan untuk menempatkan gambar ataupun video pada sebuah kontener dengan variasi jenis.</p><h3 style="text-align: left;">Variasi Object-fit,</h3><h4 style="text-align: left;">object-fit: fill;</h4><div><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJSShd7jAGZj8eQUH0ZeLJkGV3LLkKCk3S1A4OynZgKXfKoceGRQZzKKEFu2KafTXPkrpenzse7g-ys5z3r6YO21SymbMeQFvQj7MUl2tmKIU9fA5jNnDw-n0Zw1J-yPzsA6uGTtKWw6o/s463/Army+Grumpy+Cat.jpg" style="border: 1px solid rgb(0, 0, 0); height: 200px; object-fit: fill; width: 100px;" /></div><p>Object-fit jenis ini hampir tidak ada bedanya dengan tanpa menggunakan Object-fit tag pada gambar. Karna full gambar tetap akan mengikuti ukuran yg di tetapkan oleh tag width dan height.</p><h4 style="text-align: left;">object-fit: contain; </h4><div><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJSShd7jAGZj8eQUH0ZeLJkGV3LLkKCk3S1A4OynZgKXfKoceGRQZzKKEFu2KafTXPkrpenzse7g-ys5z3r6YO21SymbMeQFvQj7MUl2tmKIU9fA5jNnDw-n0Zw1J-yPzsA6uGTtKWw6o/s463/Army+Grumpy+Cat.jpg" style="border: 1px solid rgb(0, 0, 0); height: 200px; object-fit: contain; width: 100px;" /></div><p>Object-fit: contain ini lebih mengedepankan penampilan keseluruhan dari gambar ataupun video dengan mengecilkan skala nya dengan mem-fit kan lebar nya dengan lebar width kontainer, tanpa merubah proporsi dari fotonya tersebut.</p><h4 style="text-align: left;">object-fit: cover;</h4><div><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJSShd7jAGZj8eQUH0ZeLJkGV3LLkKCk3S1A4OynZgKXfKoceGRQZzKKEFu2KafTXPkrpenzse7g-ys5z3r6YO21SymbMeQFvQj7MUl2tmKIU9fA5jNnDw-n0Zw1J-yPzsA6uGTtKWw6o/s463/Army+Grumpy+Cat.jpg" style="border: 1px solid rgb(0, 0, 0); height: 200px; object-fit: cover; width: 100px;" /></div><p>Object-fit: cover ini adalah yg kita gunakan, yap tag ini menampilkan image dengan kesesuaian dari tinggi kontainer dan memotong bagian berlebih di kiri dan kanannya.</p><h4 style="text-align: left;">object-fit: none;</h4><div><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJSShd7jAGZj8eQUH0ZeLJkGV3LLkKCk3S1A4OynZgKXfKoceGRQZzKKEFu2KafTXPkrpenzse7g-ys5z3r6YO21SymbMeQFvQj7MUl2tmKIU9fA5jNnDw-n0Zw1J-yPzsA6uGTtKWw6o/s463/Army+Grumpy+Cat.jpg" style="border: 1px solid rgb(0, 0, 0); height: 200px; object-fit: none; width: 100px;" /></div><p>Object fit: none digunakan untuk menampilkan gambar dengan bagian tertentu dengan skala dan size full. Untuk mengatur bagian yg ingin dtampilkan menggunakan object-position.</p><h4 style="text-align: left;">object-fit: scale-down;</h4><div><img src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJSShd7jAGZj8eQUH0ZeLJkGV3LLkKCk3S1A4OynZgKXfKoceGRQZzKKEFu2KafTXPkrpenzse7g-ys5z3r6YO21SymbMeQFvQj7MUl2tmKIU9fA5jNnDw-n0Zw1J-yPzsA6uGTtKWw6o/s463/Army+Grumpy+Cat.jpg" style="border: 1px solid rgb(0, 0, 0); height: 200px; object-fit: scale-down; width: 100px;" /></div><p>Sedangkan yg scale-down adalah object-fit yg lebih mengedepankan penampilan keseluruhan image dengan mengecilkan scala sesuai dengan kontainer yg di berikan padanya.</p><p>Temen-temen bisa memilih menggunakan Object-Fit manapun, tergantung dengan kebutuhan, hanya saja untuk melakukan cropping image, gue menyarankan menggunakan Object-Fit: Cover.</p>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-8940864639560485932020-10-21T14:03:00.002+07:002022-10-27T11:13:50.394+07:00FIXED : PHP module not installed pada Owncloud X<p> </p><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBFEjf6wwaFblUhmOSYadpFsEpsqlG4ws6KoWlROpnJZINVHjHnhvQvrUjM9xQ3Jz4855qanpndqCgHcT_CdM3J7PgL9pfGJXzGSc4t4e_ZFfil1o_2430qAOgrsX3_uPBVNZqX_5uZWE/s483/Owncloud+10.3.2+Upgrade+Proses.jpg" style="border: 0px; box-sizing: border-box; color: #8a0808; font-family: inherit; font-style: inherit; margin: 0px 1em; outline: 0px; padding: 0px; text-decoration-line: none; transition-duration: 0.5s; vertical-align: baseline;"><img border="0" data-original-height="418" data-original-width="483" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBFEjf6wwaFblUhmOSYadpFsEpsqlG4ws6KoWlROpnJZINVHjHnhvQvrUjM9xQ3Jz4855qanpndqCgHcT_CdM3J7PgL9pfGJXzGSc4t4e_ZFfil1o_2430qAOgrsX3_uPBVNZqX_5uZWE/s320/Owncloud+10.3.2+Upgrade+Proses.jpg" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%;" width="320" /></a></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Pada Proses Updating Owncloud X ke versi 10.3.2 di Ubuntu 18.04 LTS gue, gue juga mengalami beberapa error yg terjadi dihalaman login Owncloud X nya. Permasalahannya yg kali ini mau gue bahas adalah Missing PHP modules.</div><span><a name='more'></a></span><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Setelah proses update Owncloud X selesai melalui menu setting di akun admin, ketika gue memulai akses kembali ke Owncloud X, gue di paparkan beberapa error tentang PHP Module not installed. Yap, kurang lebih seperti dibawah ini,</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFuIrxtNxs-ePue8YEBcKMUvLav2JSxRr0kw_SsefWMnxXRJECWAEf0yuizRKmbrpCTy-iMxLfumqsEBLlK54EcPtZwb6n7DuJ0a8ASrsqKRW8KgDTKv3EaUis29xyvNPFUbvgGzUA6gA/s759/Owncloud+10.3.2+PHP+Module+Zip+Not+Installed.jpg" style="border: 0px; box-sizing: border-box; color: #8a0808; font-family: inherit; font-style: inherit; margin: 0px 1em; outline: 0px; padding: 0px; text-decoration-line: none; transition-duration: 0.5s; vertical-align: baseline;"><img border="0" data-original-height="505" data-original-width="759" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFuIrxtNxs-ePue8YEBcKMUvLav2JSxRr0kw_SsefWMnxXRJECWAEf0yuizRKmbrpCTy-iMxLfumqsEBLlK54EcPtZwb6n7DuJ0a8ASrsqKRW8KgDTKv3EaUis29xyvNPFUbvgGzUA6gA/s320/Owncloud+10.3.2+PHP+Module+Zip+Not+Installed.jpg" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%;" width="320" /></a></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Nah, selanjutnya gue akan menuliskan cara memperbaiki setiap baris error yg tertulis di error tersebut. </div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><h2 style="background-color: white; border: 0px; box-sizing: border-box; clear: both; color: #212121; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 1.6em; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Perbaiki PHP module zip not installed di Owncloud X dan PHP 7.2</h2><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Masalah pada error paling atas yg tertulis "PHP module zip not installed. Please ask your server administrator to install the module." berarti bahwa pada PHP 7.2 milik kita tidak terinstall module zip. </div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Jadi untuk memperbaikinya kita hanya perlu melakukan instalasi dengan mengetikkan command,</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></span></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="font-family: courier;"><pre>sudo apt-get install php7.2-zip</pre></span></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">dan Enter.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Lalu coba reload tampilan login Owncloud X temen-temen, kalo berjalan dengan baik maka error baris pertama PHP module zip not installed akan hilang.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><h2 style="background-color: white; border: 0px; box-sizing: border-box; clear: both; color: #212121; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 1.6em; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Perbaiki PHP module intl not installed di Owncloud X dan PHP 7.2</h2><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Sama dengan masalah pada error PHP module zip diatas, error yg tertulis "PHP module intl not installed. Please ask your server administrator to install the module." berarti bahwa pada PHP 7.2 milik kita tidak terinstall module intl. </div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Dan untuk memperbaikinya, mirip dengan error diatas yaitu dengan mengetikkan command berikut di konsol Ubuntu 18.04 LTS.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></span></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="font-family: courier;"><pre>sudo apt-get install php7.2-intl</pre></span></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">dan Enter.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Lalu coba reload tampilan login Owncloud X temen-temen, kalo berjalan dengan baik maka error baris pertama PHP module intl not installed akan hilang.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><h2 style="border: 0px; box-sizing: border-box; clear: both; color: #212121; font-family: inherit; font-size: 1.6em; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Perbaiki PHP module curl not installed di Owncloud X dan PHP 7.2</h2></div><div class="google-auto-placed ap_container" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; height: auto; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline; width: 666px;"><ins class="adsbygoogle adsbygoogle-noablate" data-ad-client="ca-pub-5689893095572067" data-ad-format="auto" data-adsbygoogle-status="done" style="background: transparent; border: 0px; box-sizing: border-box; display: block; font-family: inherit; font-style: inherit; font-weight: inherit; height: 0px; margin: auto; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;"><ins id="aswift_2_expand" style="background: transparent; border: none; box-sizing: border-box; display: inline-table; font-family: inherit; font-style: inherit; font-weight: inherit; height: 0px; margin: 0px; outline: 0px; padding: 0px; position: relative; text-decoration-line: none; vertical-align: baseline; visibility: visible; width: 666px;"><ins id="aswift_2_anchor" style="background: transparent; border: none; box-sizing: border-box; display: block; font-family: inherit; font-style: inherit; font-weight: inherit; height: 0px; margin: 0px; opacity: 0; outline: 0px; overflow: hidden; padding: 0px; position: relative; text-decoration-line: none; vertical-align: baseline; visibility: visible; width: 666px;"><iframe allowfullscreen="true" allowtransparency="true" data-google-container-id="a!2" data-google-query-id="CJfd_sWOxewCFZwDrQYdnkwPGg" data-load-complete="true" frameborder="0" height="280" hspace="0" id="aswift_2" marginheight="0" marginwidth="0" name="aswift_2" sandbox="allow-forms allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts allow-top-navigation-by-user-activation" scrolling="no" src="https://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-5689893095572067&output=html&h=280&adk=1066167351&adf=812613885&pi=t.aa~a.880346744~i.36~rp.4&w=666&fwrn=4&fwrnh=100&lmt=1603263168&num_ads=1&rafmt=1&armr=3&sem=mc&pwprc=8210519287&psa=1&guci=2.2.0.0.2.2.0.0&ad_type=text_image&format=666x280&url=https%3A%2F%2Fmanaluzufrin.blogspot.com%2F2020%2F06%2Fperbaiki-php-module-not-installed-pada.html&flash=0&fwr=0&pra=3&rh=167&rw=666&rpe=1&resp_fmts=3&wgl=1&fa=27&tt_state=W3siaXNzdWVyT3JpZ2luIjoiaHR0cHM6Ly9hZHNlcnZpY2UuZ29vZ2xlLmNvbSIsInN0YXRlIjowfV0.&dt=1603263649770&bpp=12&bdt=3372&idt=-M&shv=r20201019&cbv=r20190131&ptt=9&saldr=aa&abxe=1&prev_fmts=0x0%2C1124x280&nras=2&correlator=1959470326023&frm=20&pv=1&ga_vid=645789772.1603263649&ga_sid=1603263649&ga_hid=991472033&ga_fc=0&iag=0&icsg=2149714432&dssz=29&mdo=0&mso=0&u_tz=420&u_his=6&u_java=0&u_h=768&u_w=1366&u_ah=728&u_aw=1366&u_cd=24&u_nplug=3&u_nmime=4&adx=140&ady=2515&biw=1349&bih=625&scr_x=0&scr_y=0&eid=44729242&oid=3&pvsid=4017300779650330&pem=493&ref=https%3A%2F%2Fmanaluzufrin.blogspot.com%2Fsearch%2Flabel%2FSoftware&rx=0&eae=0&fc=1408&brdim=0%2C0%2C0%2C0%2C1366%2C0%2C1366%2C728%2C1366%2C625&vis=1&rsz=%7C%7Cs%7C&abl=NS&fu=8320&bc=31&ifi=2&uci=a!2&btvi=1&fsb=1&xpc=eWazhN7fk4&p=https%3A//manaluzufrin.blogspot.com&dtd=187" style="border-style: initial; border-width: 0px; box-sizing: border-box; font-family: inherit; font-style: inherit; font-weight: inherit; height: 280px; left: 0px; margin: 0px; max-width: 100%; outline: 0px; padding: 0px; position: absolute; top: 0px; vertical-align: baseline; width: 666px;" vspace="0" width="666"></iframe></ins></ins></ins></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Pada problem "PHP module cUrl not installed. Please ask your server administrator to install the module." berarti bahwa pada PHP 7.2 milik kita tidak terinstall module cUrl. </div><div class="google-auto-placed ap_container" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; height: auto; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline; width: 666px;"><ins class="adsbygoogle adsbygoogle-noablate" data-ad-client="ca-pub-5689893095572067" data-ad-format="auto" data-adsbygoogle-status="done" style="background: transparent; border: 0px; box-sizing: border-box; display: block; font-family: inherit; font-style: inherit; font-weight: inherit; height: 0px; margin: auto; outline: 0px; padding: 0px; text-decoration-line: none; vertical-align: baseline;"><ins id="aswift_3_expand" style="background: transparent; border: none; box-sizing: border-box; display: inline-table; font-family: inherit; font-style: inherit; font-weight: inherit; height: 0px; margin: 0px; outline: 0px; padding: 0px; position: relative; text-decoration-line: none; vertical-align: baseline; visibility: visible; width: 666px;"><ins id="aswift_3_anchor" style="background: transparent; border: none; box-sizing: border-box; display: block; font-family: inherit; font-style: inherit; font-weight: inherit; height: 0px; margin: 0px; opacity: 0; outline: 0px; overflow: hidden; padding: 0px; position: relative; text-decoration-line: none; vertical-align: baseline; visibility: visible; width: 666px;"><iframe allowfullscreen="true" allowtransparency="true" data-google-container-id="a!3" data-google-query-id="CMLvgMaOxewCFdUUfQodhhsKPw" data-load-complete="true" frameborder="0" height="280" hspace="0" id="aswift_3" marginheight="0" marginwidth="0" name="aswift_3" sandbox="allow-forms allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts allow-top-navigation-by-user-activation" scrolling="no" src="https://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-5689893095572067&output=html&h=280&adk=1066167351&adf=4215121394&pi=t.aa~a.880346744~i.37~rp.4&w=666&fwrn=4&fwrnh=100&lmt=1603263168&num_ads=1&rafmt=1&armr=3&sem=mc&pwprc=8210519287&psa=1&guci=2.2.0.0.2.2.0.0&ad_type=text_image&format=666x280&url=https%3A%2F%2Fmanaluzufrin.blogspot.com%2F2020%2F06%2Fperbaiki-php-module-not-installed-pada.html&flash=0&fwr=0&pra=3&rh=167&rw=666&rpe=1&resp_fmts=3&wgl=1&fa=27&tt_state=W3siaXNzdWVyT3JpZ2luIjoiaHR0cHM6Ly9hZHNlcnZpY2UuZ29vZ2xlLmNvbSIsInN0YXRlIjowfV0.&dt=1603263649770&bpp=12&bdt=3373&idt=-M&shv=r20201019&cbv=r20190131&ptt=9&saldr=aa&abxe=1&prev_fmts=0x0%2C1124x280%2C666x280&nras=3&correlator=1959470326023&frm=20&pv=1&ga_vid=645789772.1603263649&ga_sid=1603263649&ga_hid=991472033&ga_fc=0&iag=0&icsg=10739649024&dssz=30&mdo=0&mso=0&u_tz=420&u_his=6&u_java=0&u_h=768&u_w=1366&u_ah=728&u_aw=1366&u_cd=24&u_nplug=3&u_nmime=4&adx=140&ady=2845&biw=1349&bih=625&scr_x=0&scr_y=0&eid=44729242&oid=3&pvsid=4017300779650330&pem=493&ref=https%3A%2F%2Fmanaluzufrin.blogspot.com%2Fsearch%2Flabel%2FSoftware&rx=0&eae=0&fc=1408&brdim=0%2C0%2C0%2C0%2C1366%2C0%2C1366%2C728%2C1366%2C625&vis=1&rsz=%7C%7Cs%7C&abl=NS&fu=8320&bc=31&ifi=3&uci=a!3&btvi=2&fsb=1&xpc=jeFjuEXFse&p=https%3A//manaluzufrin.blogspot.com&dtd=236" style="border-style: initial; border-width: 0px; box-sizing: border-box; font-family: inherit; font-style: inherit; font-weight: inherit; height: 280px; left: 0px; margin: 0px; max-width: 100%; outline: 0px; padding: 0px; position: absolute; top: 0px; vertical-align: baseline; width: 666px;" vspace="0" width="666"></iframe></ins></ins></ins></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Untuk menginstalnya ini, pada command konsol Ubuntu tuliskan</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="font-family: courier;"><pre>sudo apt-get install php7.2-curl</pre></span></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">dan Enter.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Setelah itu reload, maka semua notifikasi error tersebut akan hilang, dan secara otomatis kita akan di hadapkan pada tampilan memulai Update Owncloud X menjadi 10.3.2, tekan start update, maka update akan berlangsung cukup lama 15-30 menit tergantung dari speed internet dan server.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><div class="separator" style="border: 0px; box-sizing: border-box; clear: both; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBFEjf6wwaFblUhmOSYadpFsEpsqlG4ws6KoWlROpnJZINVHjHnhvQvrUjM9xQ3Jz4855qanpndqCgHcT_CdM3J7PgL9pfGJXzGSc4t4e_ZFfil1o_2430qAOgrsX3_uPBVNZqX_5uZWE/s483/Owncloud+10.3.2+Upgrade+Proses.jpg" style="border: 0px; box-sizing: border-box; color: #8a0808; font-family: inherit; font-style: inherit; margin: 0px 1em; outline: 0px; padding: 0px; text-decoration-line: none; transition-duration: 0.5s; vertical-align: baseline;"><img border="0" data-original-height="418" data-original-width="483" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBFEjf6wwaFblUhmOSYadpFsEpsqlG4ws6KoWlROpnJZINVHjHnhvQvrUjM9xQ3Jz4855qanpndqCgHcT_CdM3J7PgL9pfGJXzGSc4t4e_ZFfil1o_2430qAOgrsX3_uPBVNZqX_5uZWE/s320/Owncloud+10.3.2+Upgrade+Proses.jpg" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%;" width="320" /></a></div><div style="border: 0px; box-sizing: border-box; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Dan setelah selesai, maka tampilannya akan menuju tampilan login seperti biasanya. Dan silahkan login kembali dengan Owncloud X 10.3.2 terbaru.</div>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-55635369810784327012020-10-21T13:34:00.001+07:002020-10-21T13:34:45.940+07:00Meningkatkan Max Upload pada PHP via WHM<p> </p><p><br /></p><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMAT6Qcl14FqGxEKSmg3XO5HZmgkdoriN6PuCLfnVuNbco9CHjTl4ipyWgDB9au_KunknUoYiDOxdM5nlM_m-5dRwSuGZ-EJ1PWfUFillMnTLe-vBmyflR5WRskfTy4vYj8otyA905lTM/s320/php.jpg" imageanchor="1" style="border: 0px; box-sizing: border-box; color: #8a0808; font-family: inherit; font-style: inherit; margin: 0px 1em; outline: 0px; padding: 0px; text-decoration-line: none; transition-duration: 0.5s; vertical-align: baseline;"><img alt="Meningkatkan Max Upload pada PHP dan PHPMyadmin Melalui WHM" border="0" data-original-height="320" data-original-width="320" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMAT6Qcl14FqGxEKSmg3XO5HZmgkdoriN6PuCLfnVuNbco9CHjTl4ipyWgDB9au_KunknUoYiDOxdM5nlM_m-5dRwSuGZ-EJ1PWfUFillMnTLe-vBmyflR5WRskfTy4vYj8otyA905lTM/w320-h320/php.jpg" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%;" title="Meningkatkan Max Upload pada PHP dan PHPMyadmin Melalui WHM" width="320" /></a></div><br style="background-color: white; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px;" /><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Gue mengalami masalah ketika harus mengupload database mysql yg berukuran 54MB ke phpmyadmin hosting gue. Sedangkan pada menu importnya jelas tertulis Max:50MiB. Gimana cara gue ningkatinnya?</div><span><a name='more'></a></span><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><span style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><a name="more" style="border: 0px; box-sizing: border-box; color: #a60000; font-family: inherit; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; transition-duration: 0.5s; vertical-align: baseline;"></a></span><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Untuk penggguna WHM, atau pengguna VPS (Virtual Private Server), Meningkatkan Max. Upload pada PHP dan PHPMyadmin ini bisa dengan login ke WHMnya, lalu pilih lah menu Tweak Setting pada tab Server Configuration.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1TfIeugrNmnqZm-2AzZpSONZT-AaHoxsAaJgG-nuTXteCybJH_Rvcd0rhjwBo8Xsn6op-Ee6hdb7YlOcXVPqk9xOb7xcxSADQj_CEEBvoF9DhT1EnoGw0pvwod2vuJwCLqgXtdu-OMV8/s1351/WHM+PHP+Max+upload+Size.jpg" imageanchor="1" style="border: 0px; box-sizing: border-box; color: #8a0808; font-family: inherit; font-style: inherit; margin: 0px 1em; outline: 0px; padding: 0px; text-decoration-line: none; transition-duration: 0.5s; vertical-align: baseline;"><img border="0" data-original-height="531" data-original-width="1351" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh1TfIeugrNmnqZm-2AzZpSONZT-AaHoxsAaJgG-nuTXteCybJH_Rvcd0rhjwBo8Xsn6op-Ee6hdb7YlOcXVPqk9xOb7xcxSADQj_CEEBvoF9DhT1EnoGw0pvwod2vuJwCLqgXtdu-OMV8/s320/WHM+PHP+Max+upload+Size.jpg" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%;" width="320" /></a></div><br style="background-color: white; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px;" /><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Lalu, pada halaman Tweak Setting ini, carilah tab PHP dan menu cPanel PHP max upload size.(<i style="box-sizing: border-box;">Minimum: 50; Maximize: 2,047</i>). Pilih lah dot sebelah kanan yg tadinya 50MB <i style="box-sizing: border-box;">default </i> ganti menjadi dot bawah, dan isilah sesuai keinginan teman-teman.</div><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqswjPBfukuFqZsHp3as84sRspOSmBPaCIgU9F8o79AMm7OxMnKcGqOwP38YfbpflSPWwu02rMoWRde5Rj1DqKEewOuOJbq2gTtIzopOOIAbxeiiHSan9vjaThkh8Hxk0xJLUA_eADbyM/s533/PHPMyadmin+Max+upload+Size.jpg" imageanchor="1" style="border: 0px; box-sizing: border-box; color: #8a0808; font-family: inherit; font-style: inherit; margin: 0px 1em; outline: 0px; padding: 0px; text-decoration-line: none; transition-duration: 0.5s; vertical-align: baseline;"><img border="0" data-original-height="268" data-original-width="533" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqswjPBfukuFqZsHp3as84sRspOSmBPaCIgU9F8o79AMm7OxMnKcGqOwP38YfbpflSPWwu02rMoWRde5Rj1DqKEewOuOJbq2gTtIzopOOIAbxeiiHSan9vjaThkh8Hxk0xJLUA_eADbyM/s320/PHPMyadmin+Max+upload+Size.jpg" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%;" width="320" /></a></div><span style="background-color: white; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px;">Dan bila temen-temen buka Cpanel lalu PHPMyAdmin dan mencoba import, Max. 50MiB yg seharusnya seperti gambar diatas akan berubah menjadi Max. 55MiB.</span><div style="background-color: white; border: 0px; box-sizing: border-box; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimiWGQou6iRvXr2Cr3pCcgkAZ7YxSwsZ9V6MDzdCLL05jAML-9anM38p0gKVPZcRXX0OdECujwGJwKt1JsVbZW6262BcOsItBoZ_y4p1x7Y2VPQC0D9nWDkGoQMMw6GPIpuBWVbqUKtJ0/s544/PHPMyadmin+Max+upload+Re-Size.jpg" imageanchor="1" style="border: 0px; box-sizing: border-box; color: #8a0808; font-family: inherit; font-style: inherit; margin: 0px 1em; outline: 0px; padding: 0px; text-decoration-line: none; transition-duration: 0.5s; vertical-align: baseline;"><img border="0" data-original-height="256" data-original-width="544" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimiWGQou6iRvXr2Cr3pCcgkAZ7YxSwsZ9V6MDzdCLL05jAML-9anM38p0gKVPZcRXX0OdECujwGJwKt1JsVbZW6262BcOsItBoZ_y4p1x7Y2VPQC0D9nWDkGoQMMw6GPIpuBWVbqUKtJ0/s320/PHPMyadmin+Max+upload+Re-Size.jpg" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%;" width="320" /></a></div><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><div class="separator" style="background-color: white; border: 0px; box-sizing: border-box; clear: both; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px; margin: 0px; outline: 0px; padding: 0px; text-align: center; vertical-align: baseline;"><br style="box-sizing: border-box;" /></div><span style="background-color: white; font-family: Arial, "Open Sans", sans-serif, "Courier New", courier; font-size: 16px;">Dan, akhirnya gue bisa ngupload mysql file backupan dari server sebelumnya. gimana mudah kan? kalo ada yg kurang dimengerti bisa komen dibawah ya.</span>Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-76383850201998624752017-08-13T19:56:00.004+07:002022-10-27T11:15:20.653+07:00Setting Single Login Session For Single User xRDP Ubuntu Linux<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAstn7DO8XTs1aWlDn1_7_8Djy5Q-MvHDHAiMb1BmfNBL-gv3HZ_RXAauVNhM3OeSw-8XqaRWDLFuiQWilDgANG5v-u8vb_kJl7s3z-LqKdyXLnSU9Uflsnun4PUBIBefpbO652pRrKtA/s1600/Ubuntu.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAstn7DO8XTs1aWlDn1_7_8Djy5Q-MvHDHAiMb1BmfNBL-gv3HZ_RXAauVNhM3OeSw-8XqaRWDLFuiQWilDgANG5v-u8vb_kJl7s3z-LqKdyXLnSU9Uflsnun4PUBIBefpbO652pRrKtA/s1600/Ubuntu.jpg" /></a></div>
Masih ingat tulisan gue yang <a href="http://nubieprogram.blogspot.co.id/2016/05/setting-xrdp-remote-desktop-untuk-linux.html" target="_blank">Cara Setting Remote Desktop xRDP di Linux Ubuntu</a> dulu? kalo belom bisa klik di link atas buat menuju tulisan sebelumnya.<br />
<br />
Nah, kali ini, gue mau ngasih settingan buat single login session untuk single user.<br />
<br />
<a name='more'></a>Mungkin beberapa temen-temen yang make xRDP + XFCE buat remote di Linux Ubuntu kadang merasa kok desktop gue beda dari yang tadi gue remote ya? ato kok gue bisa login 2 session dalam 1 user ya? Nah, gue jelasin deh sekarang, xRDP defaultnya memang memperbolehkan multi session untuk 1 user. Multi session ini karena xRDP bakal terus-terusan nyari port kosong untuk login ke xRDP nya itu sendiri. Untuk ngelakuin setting yang baik untuk mendisable multi session untuk 1 user ini, gue bakal jabarin dibawah ini.<br />
<br />
Konsepnya adalah kita setting untuk 1 user itu untuk 1 port session. Gampangnya, bisa diliat di setting ini. Dan, Ingat, DWYOR!<br />
<br />
1. Pertama buka xRDP.ini yang nyimpanan settingannya yang berada di folder /etc/xRDP/<br />
Hapus semua settingannya yang ada sebelumnya yaitu,<br />
<br />
<span style="font-family: courier;"><pre>[globals]
bitmap_cache=yes
bitmap_compression=yes
port=3389
crypt_level=low
channel_code=1
max_bpp=24
#black=000000
#grey=d6d3ce
#dark_grey=808080
#blue=08246b
#dark_blue=08246b
#white=ffffff
#red=ff0000
#green=00ff00
#background=626c72
[xrdp1]
name=sesman-Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
[xrdp2]
name=console
lib=libvnc.so
ip=127.0.0.1
port=5900
username=na
password=ask
[xrdp3]
name=vnc-any
lib=libvnc.so
ip=ask
port=ask5900
username=na
password=ask
[xrdp4]
name=sesman-any
lib=libvnc.so
ip=ask
port=-1
username=ask
password=ask
[xrdp5]
name=rdp-any
lib=librdp.so
ip=ask
port=ask3389
[xrdp6]
name=freerdp-any
lib=libxrdpfreerdp1.so
ip=ask
port=ask3389
username=ask
password=ask
[xrdp7]
name=sesman-X11rdp
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
xserverbpp=24</pre></span>
<br />
<br />
Nah, settingan itu diganti jadi,<br />
<br />
<br />
<span style="font-family: courier;"><pre>[globals]
bitmap_cache=yes
bitmap_compression=yes
port=3389
crypt_level=low
channel_code=1
max_bpp=24
#black=000000
#grey=d6d3ce
#dark_grey=808080
#blue=08246b
#dark_blue=08246b
#white=ffffff
#red=ff0000
#green=00ff00
#background=626c72
[xrdp1]
name=AzazeL
lib=libvnc.so
username=root
password=ask
ip=127.0.0.1
port=5910</pre></span>
<div>
<br /></div>
<div>
Untuk Name bisa temen-temen ganti jadi Nama apapun, bebas. Dan Username diganti menjadi user yang akan kita inginkan, password sebaiknya di default ask, agar ga ada yang bisa masuk selain yang tau password. Selanjutnya save.</div>
<div>
<br /></div>
<div>
Setelah itu, restart services xRDP make konsol, bisa via putty atau konsol langsung login. Ga gue saranin via konsol di Remote Desktop xRDPnya sendiri, karena yang gue tau, nanti bakal error pas login laginya.</div>
<div>
<br /></div>
<div>
Command untuk restart services xRDP nya adalah,</div>
<div>
<span style="font-family: courier;"><pre>sudo /etc/init.d/xrdp restart</pre></span>
<div>
<br /></div>
<div>
dan selesai, Setiap login dari 1 user dari gadget manapun bakal munculin desktop yang sama. Oke segitu dulu tips gue, <i>see ya</i></div>
<div>
<br /></div>
<div>
Notes : Port 5910 dapat diganti dengan port yang lainnya, dan pastikan port tersebut tidak digunakan oleh process lain. Bila terjadi error problem connectiong 127.0.0.1 5910, itu disebabkan karena konflik port yang sedang digunakan oleh proses lain. Untuk berjaga-jaga, pastikan sudah terinstal SSH Services ataupun server tersebut bisa di command secara langsung, karena akan dibutuhkan untuk resetting remotenya.<br />
<br />
--------------------------------------------------<br />
Update<br />
--------------------------------------------------<br />
<br />
Selain menggunakan cara di atas, untuk membuat hanya ada 1 session login, temen-temen bisa mengedit file /etc/xRDP/sesman.ini, yaitu file untuk melakukan pengaturan session di xRDP.<br />
<br />
Pada Tag [SESSION], temen-temen bisa mengaturnya menjadi seperti dibawah ini,<br />
<br />
<span style="font-family: courier;"><pre>[Sessions]
X11DisplayOffset=10
MaxSessions=1
KillDisconnected=yes
IdleTimeLimit=1
DisconnectedTimeLimit=1</pre></span>
<div>
<br /></div>
<div>
Satu-satunya syarat agar ini bekerja dengan baik adalah, temen-temen diharuskan untuk logout di setiap end sessionnya. Kalau ga logout, dipastikan yang bisa meremote nantinya hanya Gadget yang telah login sebelumnya.</div>
</div>
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-70357124661008516232017-06-12T14:39:00.004+07:002022-10-27T11:15:50.825+07:00Blocking Website dengan Mikrotik Layer 7<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhftYZmtWpT1Rd1QoeIfBWg1-e_M4-1qXKpKleVIu3gIQXBEFoDmiH7J-z-mnHQ3LFS30TFCMo0hADTXNOAsnMtLTGuEGUsM2TIXpOjEWYuEnT-MpKc9szvxFAb2GpeHz06tAf9k_MVyk4/s1600/MikroTik-Router.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="300" data-original-width="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhftYZmtWpT1Rd1QoeIfBWg1-e_M4-1qXKpKleVIu3gIQXBEFoDmiH7J-z-mnHQ3LFS30TFCMo0hADTXNOAsnMtLTGuEGUsM2TIXpOjEWYuEnT-MpKc9szvxFAb2GpeHz06tAf9k_MVyk4/s1600/MikroTik-Router.jpg" /></a></div>
<br />
Script kali yang bakal gue paparin ini adalah Script blocking website di MikroTik. Dengan menggunakan Layer 7 dan Firewall, gue akan mulai penjelasannya.<br />
<br />
<a name='more'></a>Untuk melakukan blocking website, kita harus menentukan target dahulu dan pastikan website itu tidak di block oleh dns, karena bisa jadi kita ngabis-ngabisin tenaga buat block website yang udah di block oleh dns server. Sebagai contoh, kali ini gue mau block Youtube.com dimana banyak keluhan atasan, kalo bawahannya sering liat Youtube di jam kerja, jadi kerjanya pada males. Padahal mah engga, saya contohnya, heuheuheu<br />
<br />
Setelah login, pilih menu IP lalu pilih submenu Firewall, bila sudah page Firewallnya sudah terbuka, pilih tab Layer 7 Protocols. Pada halaman Layer 7 Protocols pilih tanda tambah (+) untuk membuat setting baru lalu setting layer 7 seperti dibawah ini,<br />
<br />
Isikan Name dengan Nama yang dikehendaki, yang mudah diingat, misal (youtube).<br />
dan untuk RegExp-nya isikan dengan (boleh copas aja)<br />
<br />
<span style="font-family: courier;"><pre>^.*(youtube).*$</pre></span>
<br />
Setelah itu klik OK.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDHW5yL6XTUkeubdlaExgzeIuix3WNnNJDNWtAm44NdPCuaEOzxNavPqFCW-u6m4VxsU4SGNzPnhrGCY2e24jQRu1LRxtzoi6OUbqQnWmfk8G5kAfYwg_twoOj9T4pah89B8p-qivgW1U/s1600/Firewall+Layer+7+Protocols.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="223" data-original-width="325" height="219" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDHW5yL6XTUkeubdlaExgzeIuix3WNnNJDNWtAm44NdPCuaEOzxNavPqFCW-u6m4VxsU4SGNzPnhrGCY2e24jQRu1LRxtzoi6OUbqQnWmfk8G5kAfYwg_twoOj9T4pah89B8p-qivgW1U/s320/Firewall+Layer+7+Protocols.png" width="320" /></a></div>
<br />
Oke, untuk inisialisasi Layer 7 Protocolnya udah, sekarang kita atur actionnya. Masih di menu IP, Firewall. Pilih tab Filter Rules, lalu klik tambah (+) untuk menambah settingan action.<br />
<br />
Pada Tab General, pastikan seluruhnya kosong dan hanya Chain yang berisikan Forward.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijLtpttprIbxiAunX-a1R3pRhAwa_PwUmFf3iJrmCY4i_E8h3CX7XGJ5lyk2G25fSJgsWK_r1Em0D4g92KF87rcwWa3wrrGQWbzRPHpp3CuSp0wuqVSJLDECYrOJgw73hjHLFM32RF0Kg/s1600/Firewall+Rule+MikroTik.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="549" data-original-width="384" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijLtpttprIbxiAunX-a1R3pRhAwa_PwUmFf3iJrmCY4i_E8h3CX7XGJ5lyk2G25fSJgsWK_r1Em0D4g92KF87rcwWa3wrrGQWbzRPHpp3CuSp0wuqVSJLDECYrOJgw73hjHLFM32RF0Kg/s320/Firewall+Rule+MikroTik.png" width="223" /></a></div>
Lalu Setelah itu, pilih Tab Advanced, dan pastikan baris <b>Layer 7 Protocol</b> Terisi Name yang tadi kita buat.<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2SrrAxH7cJLC30OHhKKBn1-ZYJ1tNO2FlWWteJNLZYQ0IKHSxl_e5ewz7Mf68P9wJDBKtFsOZL0erHAxRKr5bKaaBqU20yLOGdKPbY4gA0LGUNZStrmaT9O2P3s3UNLEaJXJ7a9uWpHo/s1600/Firewall+Rule+MikroTik-advanced.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="290" data-original-width="385" height="241" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2SrrAxH7cJLC30OHhKKBn1-ZYJ1tNO2FlWWteJNLZYQ0IKHSxl_e5ewz7Mf68P9wJDBKtFsOZL0erHAxRKr5bKaaBqU20yLOGdKPbY4gA0LGUNZStrmaT9O2P3s3UNLEaJXJ7a9uWpHo/s320/Firewall+Rule+MikroTik-advanced.png" width="320" /></a></div>
<br />
Setelah itu pilih tab Action, lalu pada baris action pilih <b>drop</b>,<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCRxAoXQDClrnRhplBNPA7dSLQKfjHCyznxbZUL92xUcgyxcslPNFSWzNlwcBJYejk8sO77CrlxY_0zBXQTsyiCdk2aJs7Ph63ZI8dxr4aukdIHiNFn7hpuIJF3Zuj_Q_ApJGS1U56kjE/s1600/Firewall+Rule+MikroTik-action.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="274" data-original-width="388" height="225" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCRxAoXQDClrnRhplBNPA7dSLQKfjHCyznxbZUL92xUcgyxcslPNFSWzNlwcBJYejk8sO77CrlxY_0zBXQTsyiCdk2aJs7Ph63ZI8dxr4aukdIHiNFn7hpuIJF3Zuj_Q_ApJGS1U56kjE/s320/Firewall+Rule+MikroTik-action.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
Dan, tada ... settingan kita selesai. Bisa kita coba untuk browsing Youtube sekali lagi, apakah bisa? kalo sesuai ini biasanya mah udah cannot display webpage hasilnya.<br />
<br />
Untuk mengembalikan akses Youtube, temen-temen bisa nonaktifkan Firewall Youtubenya dengan klik youtube di tab filter rules nya, lalu klik tanda silang diatasnya, atau dengan menu klik kanan.<br />
<br />
Yap segitu aja. <i>See ya</i><br />
<br />
<br />
<br />
<br />
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-39798105650759864282017-06-09T08:38:00.001+07:002022-09-07T14:19:31.804+07:00Setting Startup Aplikasi di Linux Ubuntu<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-HLz0Z2Zmy9az5lt1IYkp1aly6Vjm1uDVxqPnPOysjtt0C-JbGFzrtxj96OHxmml1ZgEowxS6EKwzmAHHTXpWP-i3ZMO0JmJBphbVSFDKg_xt4PG6SW27tkB6dRfg849_Q6OJV5YFHg4/s1600/Ubuntu.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-HLz0Z2Zmy9az5lt1IYkp1aly6Vjm1uDVxqPnPOysjtt0C-JbGFzrtxj96OHxmml1ZgEowxS6EKwzmAHHTXpWP-i3ZMO0JmJBphbVSFDKg_xt4PG6SW27tkB6dRfg849_Q6OJV5YFHg4/s1600/Ubuntu.jpg" /></a></div>
<br />
Baru maenan linux dan bingung cara setting start with boot aplikasinya? gampang aja temen-temen, tinggal make session and startup manager di Ubuntunya. gimana caranya? cikidot.<br />
<br />
<a name='more'></a>Pertama-tama harus gue ingetin kalo gue make Ubuntu Desktop, jadi untuk Ubuntu Server gue belom paham gimananya. Oke lanjut, tekan ALT+F2 untuk masuk ke mode pencarian aplikasi dan masukkan nama aplikasi nya (masukkan "startup" tanpa tanda petik). Pada kanan form pencarian aplikasi tekan tanda panah kebawah warna hijau untuk melihat list aplikasi yang ada dengan kesesuaian dengan kata kunci startup.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4rjtglsDAXLwTgMp2mhBwrjvHnlUWCMLoARvpceQQjZpXwA8Lp3N9TZeo4AxMONOURmxUyQUpqNPQZeBCGrKDwwNpbDq59-YQdNQ5cKkMVB1mo7RevlbU6QbCxrYsjT_duadZkPlDmOA/s1600/application+finder+ubuntu.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="120" data-original-width="405" height="94" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh4rjtglsDAXLwTgMp2mhBwrjvHnlUWCMLoARvpceQQjZpXwA8Lp3N9TZeo4AxMONOURmxUyQUpqNPQZeBCGrKDwwNpbDq59-YQdNQ5cKkMVB1mo7RevlbU6QbCxrYsjT_duadZkPlDmOA/s320/application+finder+ubuntu.png" width="320" /></a></div>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhBH-9Aay2qVuw7mwTIgFR1zJw1FsjbQcpoG_WaXpI2ijNmgBHn0OQvuhLdTZDt3ZA9C4ZJbP01yD3sL5Gh-UAFHcF0nBH5eOLoNBLr5DvuJ6X2-GhTf93P_4Rcl2Bn7EG2F3DuV7Md-I/s1600/application+finder+expand.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="433" data-original-width="405" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhBH-9Aay2qVuw7mwTIgFR1zJw1FsjbQcpoG_WaXpI2ijNmgBHn0OQvuhLdTZDt3ZA9C4ZJbP01yD3sL5Gh-UAFHcF0nBH5eOLoNBLr5DvuJ6X2-GhTf93P_4Rcl2Bn7EG2F3DuV7Md-I/s320/application+finder+expand.png" width="299" /></a></div>
<br />
Pilih Sesion and Startup untuk mulai mengeksekusi Session and Startup Manager Ubuntunya. Pada aplikasi Session and Startup tersebut, pilih Application Autostart, yang kemudian akan menampilkan list aplikasi yang autostart saat Ubuntu Booting. Dan selanjutnya untuk menambahkan aplikasi baru, pilih ADD lalu Isikan Name, Description dan Command yang diinginkan untuk di lakukan saat Ubuntu booting.<br />
<br />
Tada, Aplikasi yang kita setting sudah dapat start saat Ubuntu boot. <i>See ya.</i><br />
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-43972554993371542292017-06-02T19:39:00.003+07:002022-10-27T11:16:16.019+07:00Eksekusi Google Chrome dengan User Root di Linux Distro Ubuntu<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-HLz0Z2Zmy9az5lt1IYkp1aly6Vjm1uDVxqPnPOysjtt0C-JbGFzrtxj96OHxmml1ZgEowxS6EKwzmAHHTXpWP-i3ZMO0JmJBphbVSFDKg_xt4PG6SW27tkB6dRfg849_Q6OJV5YFHg4/s1600/Ubuntu.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-HLz0Z2Zmy9az5lt1IYkp1aly6Vjm1uDVxqPnPOysjtt0C-JbGFzrtxj96OHxmml1ZgEowxS6EKwzmAHHTXpWP-i3ZMO0JmJBphbVSFDKg_xt4PG6SW27tkB6dRfg849_Q6OJV5YFHg4/s1600/Ubuntu.jpg" /></a></div>
Pernah ngalamin error Google Chrome karena kita make user root? yang isinya itu "Please start Google Chrome as a normal user. If you need to run as root for development, rerun with the --no-sanbox flag.<br />
<br />
<a name='more'></a>Sebenernya error ini disebabkan karena Google Chrome cuma bisa di Run sama user dengan privilege normal bukan root, tapi root bisa menggunakan Google Chrome jika utuk development dengan menambahkan --no--sandbox di run scriptnya,<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4szLOO6T44ofs5Jttd2wUKyEEc6hrgdEXjhUb1yx2RcbKj6G0IraVDMo55IkGXdOnQkMWlVsxCzAn0qbCMawHpkTVjFCkHqp0syrLcmnsSWwyVjPheSU3pQzf7Ac1vSEeRlrtgEouy10/s1600/GoogleChrome-cant-be-run-root.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="170" data-original-width="445" height="122" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4szLOO6T44ofs5Jttd2wUKyEEc6hrgdEXjhUb1yx2RcbKj6G0IraVDMo55IkGXdOnQkMWlVsxCzAn0qbCMawHpkTVjFCkHqp0syrLcmnsSWwyVjPheSU3pQzf7Ac1vSEeRlrtgEouy10/s320/GoogleChrome-cant-be-run-root.png" width="320" /></a></div>
<br />
<br />
Nah, simple nya pada konsol, Google Chrome (ataupun Chromium) bisa dipanggil dengan script,<br />
<br />
<span style="font-family: courier;"><pre>Google-Chrome --no-sandbox</pre></span>
<br />
Dan dengan gitu permasalahan selesai, dan inget ya, konsolnya jangan di close, sebagai bahan log juga bisa tuh konsol. oke segitu dulu temen-temen, <i>see ya.</i><br />
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-82354678450233221052017-05-23T15:51:00.002+07:002022-10-27T11:17:11.606+07:00Rumus Perhitungan pada MYSQL QUERY<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2EpC1gtU2GyPAP3B2rOyFN2k0xsRSswqW9DGQYpQxOAEGWRZofo4AjDzR9BziOj-a6rW2AZqSHcLTwXdH2w0KkxxmbChS_6qDnfCdzI0alcc56K0_LIwqDgbkIaAoNZgjuh3wyUAq2kI/s1600/MYSQL.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2EpC1gtU2GyPAP3B2rOyFN2k0xsRSswqW9DGQYpQxOAEGWRZofo4AjDzR9BziOj-a6rW2AZqSHcLTwXdH2w0KkxxmbChS_6qDnfCdzI0alcc56K0_LIwqDgbkIaAoNZgjuh3wyUAq2kI/s1600/MYSQL.jpg" /></a></div>
Halo temen-temen penulis program,<br />
Kali ini gue mau berbagi beberapa fungsi perhitungan yang ada di MYSQL. Gampang sih sebenernya, cuma buat beberapa programmer yang lupaan kek gue ini lumayan agak membantu.<br />
oke cikidot.<br />
<br />
<a name='more'></a>1. AVG<br />
Fungsi perhitungan mysql untuk melakukan perhitungan rata-rata dalam suatu kolom tabel.<br />
cara penulisannya adalah :<br />
<br />
<span style="font-family: courier;"><pre>SELECT avg(namakolom) AS averageKolom FROM NamaTabel</pre></span>
<br />
Penggunaan AS pada averageKolom ini dimaksudkan untuk pemanggilan di bahasa pemograman lainnya, semisal PHP, sehingga menghasilkan $var['averageKolom'] yang bisa di echo.<br />
<br />
2. MIN<br />
Fungsi perhitungan mysql untuk mengetahui nilai minimal dalam suatu kolom tabel.<br />
<br />
<span style="font-family: courier;"><pre>SELECT MIN(namakolom) AS MinKolom FROM NamaTabel</pre></span>
<br />
Sama seperti AVG, AS disini dimaksudkan agar dapat di echo dalam bahasa pemograman lain ($var['MinKolom']).<br />
<br />
3. MAX<br />
Fungsi perhitungan mysql untuk mengetahui nilai Maximal dalam suatu kolom tabel.<br />
<br />
<span style="font-family: courier;"><pre>SELECT MAX(namakolom) AS MaxKolom FROM NamaTabel</pre></span>
<br />
<br />
4. SUM<br />
Fungsi perhitungan mysql untuk mengetahui seluruh nilai penjumlahan value dalam suatu kolom tabel.<br />
<br />
<span style="font-family: courier;"><pre>SELECT SUM(namakolom) AS SumKolom FROM NamaTabel</pre></span>
<br />
Dah, segitu aja tips singkat sebagai pengingat gue juga buat menghitung langsung di query mysql.Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-35184648082148322142017-04-30T08:20:00.001+07:002022-10-27T11:17:35.424+07:00Mengatasi Error 500 dan Mengetahui Error log Apache2 Linux Ubuntu<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-HLz0Z2Zmy9az5lt1IYkp1aly6Vjm1uDVxqPnPOysjtt0C-JbGFzrtxj96OHxmml1ZgEowxS6EKwzmAHHTXpWP-i3ZMO0JmJBphbVSFDKg_xt4PG6SW27tkB6dRfg849_Q6OJV5YFHg4/s1600/Ubuntu.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-HLz0Z2Zmy9az5lt1IYkp1aly6Vjm1uDVxqPnPOysjtt0C-JbGFzrtxj96OHxmml1ZgEowxS6EKwzmAHHTXpWP-i3ZMO0JmJBphbVSFDKg_xt4PG6SW27tkB6dRfg849_Q6OJV5YFHg4/s1600/Ubuntu.jpg" /></a></div>
<br />
Salam programmer,<br />
Beberapa hari kemarin gue mencoba upload aplikasi PHP gue ke server local yang ber-OS-kan Linux Ubuntu 14, dan voila gue bertemu error 500. Gimana gue benerinnya? mari di cek.<br />
<br />
<a name='more'></a>Jadi, gue membuat aplikasi ini di XAMPP Windows untuk pertama kali, dan setelah selesai gue mencoba upload file aplikasi PHP tersebut ke Ubuntu Server Local yang gue buat dikantor gue, dan alhasil gue nemuin error 500, dan aplikasi yang berbasis web itu ga nongol sama sekali. Setelah otak-atik sana sini akhirnya gue coba menelusuri error log apache2 nya dengan konsol.<br />
<br />
<span style="font-family: courier;"><pre>sudo tail -f /var/log/apache2/error.log</pre></span>
<br />
dan gue temukan deh errornya kalo akun mysqlnya ga cocok. hehehe. Jadi, bisa disimpulin kalo error PHP di apache2 dapat menimbulkan Error 500 (bukan hanya htaccess).<br />
<br />
oke sedikit aja temen" tulisan kali ini, karena memang error simple tapi cukup ngebingungin untuk para nubie. <i>see ya</i><br />
<br />
<br />
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-16802516006802524922017-04-03T11:39:00.002+07:002022-10-27T11:18:27.560+07:00Cara Convert Hex Entities ke HTML Entities dengan PHP<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJwEfzSPcPbUrJkD6XxJLPG8RC5O5P-7YXVXY6BX3tbnsGUw78grNcIgZpksSzDMYqdpV2wrIqJJsz5SteZNretYtETYRTnryZLMU1eUuGPoGgfTGzsknYjfiv6YlOBbL4gKZiSASKwm0/s1600/php.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJwEfzSPcPbUrJkD6XxJLPG8RC5O5P-7YXVXY6BX3tbnsGUw78grNcIgZpksSzDMYqdpV2wrIqJJsz5SteZNretYtETYRTnryZLMU1eUuGPoGgfTGzsknYjfiv6YlOBbL4gKZiSASKwm0/s320/php.jpg" width="320" /></a></div>
<br />
Watsup rekan programmer,<br />
Gue akan menjelaskan script singkat yang mungkin bisa membantu temen-temen programmer dalam mengkonversi dari hex entities semisal, \u003c menjadi < sebagaimana mestinya.<br />
<br />
<a name='more'></a>Kenalin script simple yang gue ujicoba dibantu dengan Google Search buat dapetin ramuan yang pas. Script untuk konversikan Hex Entities menjadi HTML Entities.<br />
<br />
<span style="font-family: courier;"><pre>$hasil = preg_replace("/\\\\u([0-9a-f]{4})/", "&#x$1;", $hasil);</pre></span>
<br />
<br />
Preg_replace biasa dipake untuk replace dengan pencarian pola tertentu tanpa text yang pasti. Nah, kenapa make Preg_Replace bukan Str_replace karena yang kita cari itu berpola, bukan cuma 1 jenis hex entities.<br />
<br />
Kemudian <span style="font-family: "Courier New", Courier, monospace;">/\\\\u([0-9a-f]{4})/</span> merupakan pola yang diatur dimana dibuka dengan / dan ditutup dengan /, yang artinya dilakukan pencarian dengan pola \u0000 dan maksimal 4 angka.<br />
<br />
variable $1 pada, <span style="font-family: "Courier New", Courier, monospace;">&#x$1;</span> berarti mengambil angka yang ada pada pola sebelumnya kemudian digabungkan dengan &#x yang akan berubah menjadi <span style="font-family: "Courier New", Courier, monospace;">&#x0000; </span>yang akan membentuk html entities.<br />
<br />
Untuk merubah html entities tersebut menjadi sebuah script html yang utuh dapat dilakukan dengan,<br />
<br />
<span style="font-family: courier;"><pre>echo html_entity_decode($hasil);</pre></span>
<br />
Yang bila ditulis secara keseluruhan menjadi script berikut;<br />
<br />
<span style="font-family: courier;"><pre>$hasil = preg_replace("/\\\\u([0-9a-f]{4})/", "&#x$1;", $hasil);
echo html_entity_decode($hasil);</pre></span>
<br />
<br />
Sekian, tips dari gue. Simple dan semoga membantu. <i>see ya</i><br />
<br />
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-43583908609167462892016-11-23T10:18:00.002+07:002022-10-27T11:19:14.964+07:00Cara Menghapus White Space dan Karater dengan Trim() di PHP<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJwEfzSPcPbUrJkD6XxJLPG8RC5O5P-7YXVXY6BX3tbnsGUw78grNcIgZpksSzDMYqdpV2wrIqJJsz5SteZNretYtETYRTnryZLMU1eUuGPoGgfTGzsknYjfiv6YlOBbL4gKZiSASKwm0/s1600/php.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJwEfzSPcPbUrJkD6XxJLPG8RC5O5P-7YXVXY6BX3tbnsGUw78grNcIgZpksSzDMYqdpV2wrIqJJsz5SteZNretYtETYRTnryZLMU1eUuGPoGgfTGzsknYjfiv6YlOBbL4gKZiSASKwm0/s320/php.jpg" width="320" /></a></div>
<br />
Sup manteman,<br />
Balik lagi gue dengan tulisan simple php. Kali ini gue bakal nulis perintah dasar yang mungkin bisa digunain buat manipulasi kata atau kalimat di web atau software php temen-temen.<br />
<br />
<a name='more'></a>Kenalin, temen gue buat nyempurnain tulisan gue kalo-kalo gue harus ngehapus spasi berlebihan di website gue.<br />
<br />
<span style="font-family: courier;"><pre>TRIM().</pre></span>
<br />
yak, trim itu di pake buat ngehapus karakter spasi, tabulasi, null dan lain-lain. Secara garis besar sih, nulis perintah trim itu kaya gini.<br />
<span style="font-family: courier;"><pre>$text = " saya makan daging ";
$result = trim($text);
echo $result; //saya makan daging</pre></span>
<br />
Text diatas bakal jadi "saya makan daging", tanpa spasi kanan kiri yang berlebihan lagi. Tapi, kekuatan super dari trim() ini juga bisa dipake kaya gini.<br />
<br />
<span style="font-family: courier;"><pre>$text="______saya makan daging_____";
$result = trim($text,"_");
echo $result; //saya makan daging</pre></span>
<br />
ya tentu saja script diatas bakal ngehapus ___ yang ada di sebelah kanan text. hebatnya, trim() juga bisa dipake buat ngilangin angka yang ada dikanan kiri text. Wow kan itu?! Jadi kaya gini.<br />
<br />
<span style="font-family: courier;"><pre>$text="1234 saya makan daging";
$result = trim($text,"0..9");
echo $result; //saya makan daging</pre></span>
<br />
Indah banget kan? kita ga perlu lagi make algoritma panjang" buat ngehapus hal sederhana dikanan kiri text. Dan juga, trim() ini punya 2 buah turunan yang bisa dipake buat nentuin disebelah mana aja yang perlu diapus, ltrim() untuk ngehapus karatker yang dikiri, rtrim() untuk ngehapus karatker yang dikanan.<br />
<br />
Cara pake ltrim() dan rtrim() ga jauh beda kok ama trim() jadi temen-temen bisa praktekin sendiri. Jadi selamat mencoba, <i>see ya.</i><br />
<br />
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.comtag:blogger.com,1999:blog-3832545569691888627.post-13401544301310714632016-09-27T15:29:00.002+07:002022-10-27T11:19:42.505+07:00Setting HTACCESS Untuk URL Cantik dan Memperbolehkan Penggunaan Variable $_GET<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJwEfzSPcPbUrJkD6XxJLPG8RC5O5P-7YXVXY6BX3tbnsGUw78grNcIgZpksSzDMYqdpV2wrIqJJsz5SteZNretYtETYRTnryZLMU1eUuGPoGgfTGzsknYjfiv6YlOBbL4gKZiSASKwm0/s1600/php.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJwEfzSPcPbUrJkD6XxJLPG8RC5O5P-7YXVXY6BX3tbnsGUw78grNcIgZpksSzDMYqdpV2wrIqJJsz5SteZNretYtETYRTnryZLMU1eUuGPoGgfTGzsknYjfiv6YlOBbL4gKZiSASKwm0/s320/php.jpg" width="320" /></a></div>
<br />
Hallo temen-temen programmer,<br />
Musim ga jelas banget nih Indonesia, udah musim ujan lebat aja sekarang. Tapi ya bersukur aja sih buat para programmer yang kerjanya dirumah atau sambilan kan enak otaknya tenang dalam berkreasi. heuheuheu<br />
<br />
<br />
<a name='more'></a>Singkat banget sih teori gue kali ini, soalnya gue baru nemu juga, ya maklum newbie yang belajar ga dari buku, maap aja ya kalo kurang jelas. Kali ini sih gue mau share gimana caranya biar htaccess membolehkan URL campuran antara URL cantik yang diagung-agungin para SEO dan variable GET bebas yang memudahkan para programmer.<br />
<br />
Gue yang build framework sendiri make native biasanya agak susah kalo seumpamanya kebanyakan slash di URL, karena mungkin susah nentuin semisal page numbering nya ada dimana. Tapi dengan cara ini, kita bisa nambain variable GET. Jadi, pastinya lebih simple buat nentuin value yang pas kan? heuheuheu.<br />
<br />
Dan gue cuma nambain gini doang di htaccess gue heuheuheu.<br />
<br />
<span style="font-family: courier;"><pre>RewriteRule ^(.*)$ /index.php?$1 [QSA,L] </pre></span>
<br />
yap itu gue cuma nambain QSA doang, yang lainnya mah script htaccess standar :D.<br />
<br />
Oke segitu dulu deh ya,<br />
<br />
<i>See ya,</i> *buru-buru<br />
<br />Manalu Zufrinhttp://www.blogger.com/profile/11421763528817788909noreply@blogger.com