• Tidak ada hasil yang ditemukan

download text file dari server php ke android

N/A
N/A
Protected

Academic year: 2022

Membagikan "download text file dari server php ke android"

Copied!
6
0
0

Teks penuh

(1)

download text file dari server php ke android

(2)

Aplikasi Portal Berita Android dengan API PHP & MySQLi #BelajarAPI.

Kali ini kita akan membuat Aplikasi Android sederhana dengan studi kasusnya “Portal Berita”. Untuk berita yang akan di tampilkan adalah bersumber dari database MySQL yang akan kita buat. Disini kita akan belajar bagaimana caranya bermain API di Android.

Yuk ikuti channel YouTube saya untuk terus update tutorial keren !!

Rizal Hilman.

Make coding simple.

Kita akan menggunakan Java sebagai programming languagenya, tapi penulis juga menyediakan Source code versi Kotlinnya di akhir Artikel.

Pengantar.

Perlu diketahui kita akan melakukan koding pada 2 sisi yaitu sisi Server dan sisi Client.

Untuk sisi server kita akan m e nggunakan bahasa PHP “Gunanya untuk apa ?” agar kita dapat mengolah data yang ada pada database MySQL untuk ditampilkan dalam format data JSON, nah data ini yang kemudian akan kita sebut dengan istilah response.

“Kenapa Harus JSON ?” karena seperti yang teman-teman ketahui setiap bahasa pemrograman, setiap plaform mempunyai aturan dan bentuk data yang berbeda-beda. JSON ini adalah salah satu bentuk data yang disupport hampir semua bahasa program dan platform.

Beralih ke sisi Client yaitu Android. Pada sisi Android kita akan mengirim request ke URL API untuk mendapatkan response berupa data JSON, nah data JSON ini akan kita tampung kedalam sebuah Model agar data tersebut dapat kita gunakan.

Masih di Android, untuk memudahkan proses pengiriman request API dan storing json data ke Model kita akan menggunakan library Retrofit2 dan Retrofit Gson-Converter .

Persiapan Server API.

Seperti yang sudah dijelaskan sebelumnya kita akan menggunakan PHP sebagai Server API. Scriptnya sudah saya sediakan, silahkan buka link berikut : https://github.com/drawrs/simple-api-portal-berita.

Download kemudian Ekstrak di root web server masing-masing. Kalau saya menggunakan XAMPP berarti saya letakan /xampp/htdocs.

Didalam script tersebut terdapat database mysql yang telah di eksport menjadi file . sql dan terdapat file php yang akan memberikan kita data-data berita dalam bentuk response JSON .

Database.

Buatlah sebuah database baru, kita beri nama tb_portal_berita kemudian import file .sql yang ada dalam folder hasil ekstrakan tadi. Jika kamu belum tau cara membuat database klik disini dan cara import database disini .

Setting Koneksi.php.

Silahkan sesuaikan konfigurasi database di pada file koneksi.php.

tampil_berita.php.

Didalam file ini berisi script yang bertugas untuk mengambil data dari database kemudian ditampilkan dalam bentuk json.

Testing Web server.

ScrollingBaik, jika semua konfigurasi telah siap berikutnya untuk mengetes apakah semua telah berjalan dengan normal atau belum. Silahkan akses tampil_berita.php melalui browser atau postman atau API Tester lainnya.

Yang teman-teman lihat diatas adalah data json yang akan kita olah nantinya. Jika ingin lebih mudah membaca data json teman-teman bisa menggunakan chrome extension atau software pihak ketika untuk json viewer. Disini saya menggunakan web tools jsonviewer.stack.hu , paste semua json ke web tersebut kmudian klik tab Viewer.

Sedikit penjelasan tentang response diatas, setelah kita masukan lihat dengan menggunakan json viewer terlihat jelas data json yang kita punya memiliki 2 buah item, yaitu Json object (status) dan Json array (berita). Jika teman-teman perhatikan, semua berita kita ditampung oleh json array berita yang didalamnya terdapat json object ( Untuk teman-teman yang masih bingung dengan konsep json bisa dibaca penjelasanya disini ) . Nah semua data tersebut akan kita tampung (oleh si Retrofit) kedalam sebuah Class Model yang biasa disebut POJO .

Persiapan Project Android.

Buatlah sebuah project baru, berinama Aplikasi Portal Berita dengan minimum SDK API 16: Jelly Bean , kemudian untuk Activity template pilih Empty Activity.

(3)

Persiapan Library.

Berikutnya kita tambahkan libray-library yang akan kita gunakan, diantaranya adalah :

Retrofit & Gson-Converter (untuk API manager) Piccasso (menampilkan gambar dari internet) Recycler View (untuk list)

Silahkan buka gradle ( Module : app ), tambahkan dependencis berikut kemudian klik “ Sync Now ” yang ada dipojok kanan atas untuk mensinkronisasikan project dngan library.

Sehingga terlihat seperti berikut :

Note : — Untuk recycler view “ com.android.support:recyclerview-v7: 26.1.0 ” bagian yang salah tebalkan disesuaikan dngan versi SDK masing- masing karena akan error jika tidak cocok.

Persiapan Retrofit.

Setelah library Retrofit terinstall, berikutnya kita akan mempersiapkan Class dan Interface untuk memudahkan kita dalam menggunakan library retrofit ini. Silahkan buat package baru dengan nama network kemudian dialamnya buat satu Java Class InitRetrofit dan satu Java Interface ApiServices . Sehingga struktur foldernya menjadi seperti berikut :

InitRetrofit Dalam class ini kita akan membuat 2 method setInit() dan getInstance(). Nama method tidak harus sama jadi bisa menyesuaikan.

setInit() : method ini yang bertugas menginisilisasi Class Retrofit. Dalam method ini juga kita meberitahukan Retrofit kemana sih tujuan API kita.

Karena kita masih bermain dilocal silahkan ganti isi variable API_URL dengan IP komputer kamu masing-masing.

getInstance() : method ini yang bertugas menghubungkan class InitRetrofit dengan interface ApiServices sehingga kita bisa menggunakan method request yang ada dalam interface ApiServices tersebut.

Sesuaikankan Class InitRetrofit menjadi seperti berikut :

ApiServices Interface ApiServices adalah tempat dimana kita mendeklarasikan semua request yang akan kita kirim/gunakan. Contohnya request untuk login, register, menampilkan data, mengubah data, menghapus data dan sejenisnya, didalam Interface inilah kita definisikan Method nya apa ( ex: GET, POST, PUT, etc ) dan Endpoint API-nya apa ( ex: show_item, get_news.php, get_detail.php, etc ).

Untuk kasus saat ini kita hanya akan membuat 1 buah request ke Endpoint tampil_berita.php dengan metode pengiriman data GET . Sesuaikan interface ApiServices menjadi seperti berikut.

Kamu akan mendapati error dibagian ResponseBerita , itu dikarenakan kita belum membuat Model Pojo tersebut. Kita akan membuatnya ditahap berikutnya Ketika memanggil class Call pastikan mengimport class milik retrofit2 . seperti di screenshot berikut :

Model Pojo.

Pembuatan model pojo kali ini akan kita buat otomatis dengan menggunakan Plugin RoboPOJOGenerator . Untuk yang belum terinstal Plugin ini silahkan instal terlebih dahulu plugin tersebut : File > Settings > Plugins > Browse Repositories > Kemudian cari “ RoboPojoGenerator” > Install . Jika sudah close dan restart Android Studio.

Berikutnya buat 1 package baru dengan nama response . Package response akan kita gunakan untuk tempat class model kita disimpan. Klik kanan Pada package response > New > Generate POJO from JSON ( ada dipaling bawah ) > Pastekan JSON yang sebelumnya kita dapat ketika testing ke tampil_berita.php.

Tipenya pilih GSON dan Root object name pilih ResponseBerita jika sudah langsung klik > Generate .

Akan terbentuk 2 buah Class ResponseBerita dan BeritaItem . Pada 2 class tersebut hapus 2 baris dibawah ini : import javax.annotation.Generated; @Generated( “com.robohorse.robopojogenerator” )

ResponseBerita.java.

BeritaItem.java.

Layouting.

Berikutnya adalah tahap layouting, disini kita akan menampilkan berita-berita tersebut dalam bentuk List dengan mengguanan RecyclerView . Nah, berhubung kita menggunakan RecyclerView disini kita peru membuat layout tambahan yang berfungsi sebagai acuan tata letak dari item list yang di looping. Buatlah Layout baru dengan cara : Klik kanan pada layout > New > Layout Resource File > berinama berita_item > OK .

Berikut kode pada berita_item.xml :

Sekarang pindah ke activity_main.xml sesuaikan kodenya menjadi seperti berikut :

(4)

Baik tahap layouting telah selesai.

Activity Logic.

Berikutnya kita akan mengkoding logika untuk activity kita saat ini yaitu MainActivity . Disini kita akan melakukan inisialisasi widget sampai mengirim request ke API kemudian menampilkanya kedalam RecyclerView. Silahkan sesuaikan kode pada MainActivity menjadi seperti berikut : MainActivity.java.

AdapterBerita.java Kamu akan mendapati error / merah pada bagian AdapterBerita karena kita belum membuat Class Adapter tersebut. Silahkan buat satu buah class baru dengan nama AdapterBerita kemudian sesuaikan kodenya menjadi seperti berikut.

Detail Berita Activity.

Buatlah sebuah scrolling activity baru dengan nama DetailActivity. File > New > Activity > Scrolling Activity > Beri nama DetailActivity.

Layouting.

Sesuaikan kode pada layout activity_detail.xml dan content_detail.xml menjadi seperti berikut.

activity_detail.xml.

content_detail.xml.

DetailActivity.java.

Nah disini kita akan menangkap data dari Intent menggunakan getIntent().getStringExtra() karena data yang kita kirim sebelumnya adalah data String.

Android Manifest.

Okey ditahap akhir kita perlu menambahkan permission internet karena aplikasi kita memerlukan akses internet untuk mengambil data ke API.

Tambahkan baris kode berikut ke AndroidManifest.xml : Running Project.

Alhamdulillah kita sudah sampai di tahap akhir, sekarang coba jalankan aplikasi Anda ke device atau emulator untuk melihat hasilnya. Perlu di CATAT karena kita masih menggunakan server local itu artinya Device / Emulator harus dalan satu jaringan / wifi yang sama.

Sentuhan Akhir.

Sentuhan akhir sedikit mempercantik tampilan kita custom warna themenya. Silahkan buka color.xml yang ada di res/values/color.xml . Sesuaikan seperti berikut :

Untuk referensi material color lainya temen-temen bisa menggunakan tools berikut : https://material.io/color.

Closing.

Yap…. Alhamdulillah kita telah menyelesaikan aplikasi portal berita ini, walaupun masih sangat sederhana. Tidak apa karena tujuan dari project ini adalah untuk membantu temen-temen yang baru belajar API, mengambil data dari database MySQL dimana ada dalam platform yang berbeda untuk kemudian di tampilkan ke Aplikasi kita.

Baik sekian dari Saya semoga dapat bermanfaat, terimakasih atas semangatnya :) … Selamat berkarya..

Yuk ikuti channel YouTube saya untuk terus update tutorial keren !! Kamu juga bisa request tutorial loh ketik aja di kolom komentar!

PHP menyimpan text file dan menampilkan isi txt file.

Kalau sebelumnya kita sudah pernah membahas mengenai metode GET pada php untuk mengmbil data yang terkandung dalam URL kali ini kita akan mencoba menyimpannya dalam bentuk text file dan menampilkannya data dari text file pada web page. Fungi GET sangat berguna untuk diaplikasikan bersama dengan GPRS module maupun WIFI module ESP8266 sehingga kita dapat mefungsikan module yang dipergunakan sebagai web client dan komputer pribadi kita sebagai web server, atau bahakan anda dapat membuat server anda sendiri khusus untuk menampung data yang berasal dari kedua modul tersebut. Kita akan lihat kodenya :

How to download a file from a server and save it in specific folder in SD card in Android?

Now the issue is only empty file with filename myclock_db.db is saving in the path. but I need to download and save content of file in the specific folder. Tried several ways to get the file download, but I can't.

1 Answer 1.

(5)

Your download URL is not a link to any file. It's a directory. Make sure its a file and exists. Also check your logcat window for error logs. One more suggestion, its always better to do a printStackTrace() in catch blocks instead of Logs. Its gives a more detailed view of the error.

Change this line:

Next, in catch block, add this line:

Also in the directory path, it should be something like this:

Next, make sure you have acquired permission for writing to external storage in Android manifest.

Download File PHP dari Suatu Website / Aplikasi Web.

Download source code php dari suatu website atau aplikasi web ??

Pertanyaan itulah yang suatu hari pernah terbesit di pikiran saya. Sudah berulang kali kucoba tuk download,, mulai dari download manual sampai- sampai download pake software download manager. dan hasilnya nihil. Sudah berkali-kali aku tanya mbah google,, tapi hasil yang didapatkan tidak sesuai dengan keinginanku. Kemudian ku pelajari lagi syntax-syntax dasar dalam php. Ternyata ada suatu syntax yang sangat simpel dalam php yang bisa melakukannya. Oke, daripada kelamaan,, mending langsung disimak aja, gan…! Syntax yang digunakan untuk mendownload file php sebenarnya sangat simpel,, hanya menggunakan fungsi file_get_contents() untuk membaca source code php dan fungsi fwrite() untuk menulisnya ke dalam suatu text.

Parsing, Menyimpan data kedalam file txt dengan PHP.

Develoop.in - Menarik dan menyimpan data dalam sebuah file berbentuk TXT apakah mungkin ? jangan sedih hal itu mungkin dan memang nyata sejaka dulu nih, tapi saya tidak akan membahas sejarah mengenai hal tersebut. Mimin akan fokus langsung ke titik penerangan (PLN) atau terang terus dan terus terang.

Parsing, Menyimpan data kedalam file txt dengan PHP Bagaimana cara kerja PHP bisa menarik data dan menyimpannya ? mudah kok caranya, percaya kan ? eits percayalah hanya pada sang pencipta.

Salah satu alternatif lain untuk membaca file selain fgets kamu juga bisa menggunakan file_get_contents dimana khas dari metode tersebut sifatnya akan membaca semua data yang ada di file kita dalam bentuk string.pernah dengar file_get_contents ?? gak hanya txt kok bisa format file lainnya misalnya saja JSON tapi disini mimin ganteng dari Develoop.in akan menjelaskan menggunakan format text pure asli deh beneran cuma text dibantu dengan yang namanya explode apa lagi tuh explode ? meledak, ledakan atau apalah yang meledak-ledak dengan pemisah yang kita tentukan misalnya saja dengan blank space atau tanda | antara data yang akan kita pergunakan.

Katanya mau langsung berterus terang nih ? oke deh langsung ya kamu ikuti step-step berikut ini ingat ikuti jalan yang benar ini jangan yang salah.

Berikut ini saya mempunyai data mahasiswa dalam file mhs.txt dengan data seperti ini :

<?php $txt_file = file_get_contents('mhs.txt'); $rows = explode("\n", $txt_file); array_shift($rows);

foreach($rows as $row => $data)

// Explode digunakan untuk memisahkan Item Data dariPemisah |, array pada PHP dimulaipada index ke-0 $row_data = explode('|', $data);

$info[$row]['id'] = $row_data[0]; $info[$row]['nama'] = $row_data[1]; $info[$row]['nim'] = $row_data[2]; $info[$row]['jurusan'] =

$row_data[3]; $info[$row]['alamat'] = $row_data[4];

Jika file index.php dijalankan maka akan terlihat tampilan seperti berikut ini : Melakukan insert data dari php kedalam file.txt.

Setelah berhasil memanggil selanjutnya buat cara menambahkan data kedalam file mhs.txt dengan nama form.php dan isi dengan kode berikut : Setelah kode diatas dibuat dan disimpan dengan nama form.php maka akan terlihat tampilan seperti berikut ini :

Lalu buat file php dengan nama proses.php untuk menjalankan proses fungsi tambah pada file mhs.txt isikan dengan kode berikut pada proses.php :

// Menangkap isi variabel dari file yang telah kita isi pada form.php $id = $_POST['id']; $nama = $_POST['nama']; $nim = $_POST['nim'];

$jurusan = $_POST['jurusan']; $alamat = $_POST['alamat'];

// Format data yang akandiparsing $data = "\n $id|$nama|$nim|$jurusan|$alamat";

// Buka file mhs.txt, kemudian tuliskan isi variabel di atas kedalam mhs.txt $fh = fopen("mhs.txt", "a"); fwrite($fh, $data);

// Tutup file data.txt fclose($fh);

(6)

// Keterangan bila data berhasil di input print "Data Telah Tersimpan.</br><a href='index.php'>Kembali ke Index >></a>";

Selanjutnya anda bisa jalankan dan jika berhasil maka akan terlihat tampilan kembali ke index seperti dibawah ini :

Referensi

Dokumen terkait

Hasil penelitian yang dicapai, disimpulkan bahwa sistem ini sudah membantu dalam perencanaan risiko dengan dapat melakukan analisa risiko yang mungkin terjadi pada

Gambar diatas menunjukkan bahwa pada Januari 2017 terjadi penurunan ekspor nonmigas, salah satu penyebabnya adalah karena menurunnya ekspor kayu, barang dari kayu,

Ustaz muhyiddin menjadi salah satu pemrakarsa utama dari pendirian UnnU di Sulawesi Selatan. Peran itu dapat ia lakukan karena didukung oleh pengalamannya sebagai guru dan

Manfaat dari kegiatan penelitian ini adalah : (1) data perubahan sosial ekonomi rumah tangga pedesaan seperti perubahan pendapatan, kecukupan kalori, kemiskinan, dsb

Oleh karena p-value = 0,011 &lt; α (0,05), maka disimpulkan bahwa ada hubungan yang signifikan antara mekanika tubuh (body mekanik) dengan nyeri punggung pada ibu

Selain alam, Kabupaten Buleleng juga memiliki banyak potensi budaya berupa pura-pura bersejarah yang sudah ada sejak jaman penjajahan Belanda yang tersebar di desa-desa seperti

Hasil penelitian menunjukkan bahwa perlakuan lama postmortem berpengaruh nyata terhadap rataaan kadar air dan sangat nyata berpengaruh terhadap pH, dan aktivitas air, tetapi

Pertama : Nama-nama yang terlampir dinyatakan LULUS dalam Tes seleksi penerimaan santri baru SMP-SMA Al-Izzah International Islamic Boarding School Batu Tahun Ajaran 2017/2018.