Selasa, 25 Desember 2012

Memanggil Kamera Intent, Open Camera, Take Picture, Simpan Picture, Pilih Foto Menggunakan Intent

Setelah berhasil membuat Aplikasi untuk Memanggil Intent untuk Memilih (Browse File) dengan Intent. Kali ini kita pelajari cara lebih lanjut untuk memanggil Kamera Intent (Open Camera, Save Picture, Choose Photo) menggunakan Intent. Ada 4 Cara yang kita coba disini.

Program utama kita letakkan di MainActivity

MainActivity.java

package com.amijaya.androidcameraintent;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.provider.MediaStore.Images.Media;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;

// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

public class MainActivity extends Activity {
Button Button01;
Button Button02;
Button Button03;
Button Button04;
TextView TextView01;
TextView TextView02;
ImageView ImageView01;

public static File imgfile;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

Senin, 24 Desember 2012

Browse File (Open All File & Picture) Menggunakan Intent


Penulis sudah pernah menulis tentang Open File Dialog di Android. Tapi kali ini penulis merasa sangat "terpukul" ketika mengetahui cara lain yang lebih simpel :) Cara lain untuk memilih File terutama File Gambar yaitu menggunakan Intent dengan memanggil Aplikasi Android yang cocok untuk memilih file, Misalnya Gallery atau Camera. Kali ini kita pelajari cara memilih File menggunakan Intent.

Program utama kita letakkan di MainActivity

MainActivity.java

package com.amijaya.androidbrowsefilegalleryintent;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;

// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

public class MainActivity extends Activity {
Button Button01;
Button Button02;
Button Button03;
TextView TextView01;
TextView TextView02;
ImageView ImageView01;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        TextView01 = (TextView) findViewById(R.id.TextView01);
        TextView02 = (TextView) findViewById(R.id.TextView02);
        ImageView01 = (ImageView) findViewById(R.id.ImageView01);
        
        Button01 = (Button) findViewById(R.id.Button01);

Button01.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Picture"),0);
//startActivityForResult(intent, 1);
}
});

Button02 = (Button) findViewById(R.id.Button02);

Button02.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent pickPhoto = new Intent(Intent.ACTION_PICK,
          android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(pickPhoto, 1);
}
});

Button03 = (Button) findViewById(R.id.Button03);

Button03.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent i = new Intent(Intent.ACTION_GET_CONTENT);
   i.setType("*/*");
   //i.setType("file/*");
   startActivityForResult(i, 2);
}
});
    }
    

Kamis, 20 Desember 2012

Membuat Aplikasi Android Player MP3, Memainkan Sound dari MP3 di Raw Folder

Kali ini kita pelajari cara memainkan Music atau File Sound dalam Format MP3. Untuk kali ini file MP3 yang akan dimainkan diletakkan di folder Raw, artinya file tersebut akan ikut terbawa di folder aplikasi bukan diletakkan di SDCARD, pada tulisan berikutnya penulis akan coba bahas cara membuat aplikasi android untuk memainkan File MP3 dari SDCard sehingga bisa lebih dinamis.

Program utama kita letakkan di MainActivity

MainActivity.java

package com.amijaya.androidplaymp3raw;

import java.io.IOException;

import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

public class MainActivity extends Activity {
Button Button01;
TextView TextView01;
MediaPlayer mp;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

TextView01 = (TextView) findViewById(R.id.TextView01);
Button01 = (Button) findViewById(R.id.Button01);

Button01.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Button01.setEnabled(false);
TextView01.setText("Playing");
go();
}
});
}

public void go() {
mp = MediaPlayer.create(MainActivity.this, R.raw.heavenearth);
try {
mp.prepare();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
mp.start();
mp.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer arg0) {
// TODO Auto-generated method stub
Button01.setEnabled(true);
TextView01.setText("Play");
}
});
}
}

Rabu, 05 Desember 2012

Aplikasi Android Menggunakan ListView dengan CheckList Checkbox Multiple Selection



Kali ini kita pelajari cara membuat List dengan ListView tetapi menggunakan CheckBox, artinya CheckList pada ListView tersebut dapat dipilih lebih dari satu, serta dapat mempunyai tercentang pada beberapa pilihan saat ditampilkan.

Program utama kita letakkan di MainActivity

MainActivity.java

package com.androidlistviewchecklist;

import android.os.Bundle;
import android.app.Activity;
import android.util.SparseBooleanArray;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.Toast;

// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

public class MainActivity extends Activity {
String[] pilihan = {"Merapi", "Merbabu", "Slamet", "Ungaran", "Lawu", "Sindoro", "Sumbing"};
ListView list1;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        list1 = (ListView) this.findViewById(R.id.listView1);
        list1.setAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_multiple_choice, pilihan));
        list1.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
        
        list1.setItemChecked(0, true);
        
        
        list1.setSelected(true);
        list1.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
String selection = pilihan[arg2]; 
//Toast.makeText(getApplicationContext(), selection, Toast.LENGTH_LONG).show();


}});
        
        Button button1 = (Button) this.findViewById(R.id.button1);
        button1.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
int i=0;

SparseBooleanArray a = list1.getCheckedItemPositions();
       for (i=0;i<a.size();i++)
       {
        Toast.makeText(getApplicationContext(), String.valueOf(a.get(i)), Toast.LENGTH_LONG).show();
       }
}
        });

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}

Selasa, 04 Desember 2012

Membuat Aplikasi Android dengan Timer untuk Menjalankan Proses secara Berkala


Wah sudah lama sekali tidak menulis blog :)
Penulis ingin memulai dulu dengan sesuatu yang sedikit dahulu tetapi berbobot, kali ini kita pelajari cara membuat Timer di Android yang dapat digunakan untuk melakukan sesuatu secara berkala, dalam kasus ini kita pakai saja untuk menampilkan Tanggal Bulan Tahun Jam Menit Detik setiap 1 detik, sehingga tulisan di TextView seakan-akan berdetak.

Program utama kita letakkan di MainActivity

MainActivity.java


package com.amijaya.androidtimer;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

public class MainActivity extends Activity {
Timer timer = new Timer();
    long starttime = 0;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        //starttime = System.currentTimeMillis();
        timer = new Timer();
        //timer.scheduleAtFixedRate(new doTask(), 0, 1000);
        //timer.schedule(new TimerTask() {
        timer.schedule(new TimerTask() {
       
@Override
public void run() {
MainActivity.this.runOnUiThread(new Runnable() {

public void run() {
       TextView txt = (TextView)findViewById(R.id.TextView01);

SimpleDateFormat s = new SimpleDateFormat("dd/MM/yyyy HH:mmss");
       String format = s.format(new Date());

txt.setText(format);
}
});
}
}, 100, 1000);

    }
}


Minggu, 28 Oktober 2012

Mengeset MSFlexGrid VB 6.0 Menjadi Editable, Bisa Diedit Pengguna

Masalah ini sudah bertahun-tahun "menghantui" Penulis ketika sedang menggunakan MSFlexGrid pada Visual Basic 6.0. Karena jika menggunakan MSFlexGrid pada VB 6.0 secara default ketika program hasilnya dijalankan, pengguna tidak akan bisa mengedit isi cell Flex Grid dengan cara apapun. Jadi harus dari input TextBox lain baru bisa dimasukkan ke MSFlexGrid secara program.

Kemarin setelah terpaksa searching ternyata ada cara yang sangar cerdas untuk membuat agar MSFlexGrid bisa diedit (editable) dengan memanfaatkan event KeyPress yang akan menuliskan Karakter yang ditekan ke dalam Cell MSFlexGrid yang sedang aktif. Kok tidak sejak dulu ketemu ya :)

Private Sub fgMatriks_KeyPress(KeyAscii As Integer)
'http://cariprogram.blogspot.com
'nuramijaya@gmail.com
'sumber : http://www.freevbcode.com/ShowCode.asp?ID=3034
    With fgMatriks
        Select Case KeyAscii
                
            Case 8: 'IF KEY IS BACKSPACE THEN
                If .Text <> "" Then .Text = _
                 Left$(.Text, (Len(.Text) - 1))
            Case 13: 'IF KEY IS ENTER THEN
                Select Case .Col
                    Case Is < (.Cols - 1):
                        SendKeys "{right}"
                    Case (.Cols - 1):
                        If (.Row + 1) = .Rows Then
                            .Rows = .Rows + 1
                        End If
                        SendKeys "{home}" + "{down}"
                End Select
            Case Else
                .Text = .Text + Chr$(KeyAscii)
                'write your own keyascii Validations under
                       'commented lines
                Select Case .Col
                    Case 0, 1, 2:
                        'if (your condition(s)) then
                            'accept only charectors
                        'Else
                        '   keyascii=0
                        'End If
                    Case Else:
                End Select
        End Select
    End With
End Sub

Semoga bermanfaat.

Minggu, 16 September 2012

Membuat Halaman Delete / Hapus Data Dreamweaver Wizard PHP-MySQL (Pemrograman Web PHP)

Setelah berhasil Membuat Web untuk menampilkan Data dengan PHP MySQL menggunakan Dreamweaver Wizard dan Membuat Halaman Web PHP Insert Tambah Data dengan Dreamweaver Wizard dan Membuat Halaman Edit  Update dengan Dreamweaver Wizard. Maka kita lanjutkan untuk membuat Halaman Delete / Hapus Data dengan PHP MySQL menggunakan Dreamweaver Wizard.

Buka dahulu project yang sebelumnya, kemudian kita klik Tabel Data dari Halaman Tampil Data kemudian klik kanan Insert Column.


Kemudian tambahkan Link untuk Tambah dengan link add.php, dalam hal ini misalnya penulis memberi nama addpos_pengamat.php

Selasa, 11 September 2012

WYSIWYG CKEditor Memakai Upload Gambar dengan CKFinder (Pemrograman Web Javascript PHP)

Pada aplikasi web sering sekali kita gunakan What You See Is What You Get Editor (WYSIWYG Editor). Masalah yang sering dihadapi adalah bagaimana jika kita membutuhkan untuk menyisipkan Gambar diantara tulisan yang kita buat dengan editor tsb. Misalnya kita buat soal online yang membutuhkan Gambar Soal dsb.

WYSIWYG Editor yang paling banyak digunakan masih TinyMCE dan CKeditor. Nah kali ini coba kita bahas penggunaan CKEditor yang digabungkan dengan plugin CKFinder sehingga Editor tersebut mampu menyisipkan gambar, mengupload gambar dan memakai gambar yang sudah pernah dipakai dan ada di server.

Langkah pertama download dahulu CKEditor dari web resminya. Kemudian download juga CKFinder versi demo dari websitenya. Setelah itu extract file nya masing masing di root folder htdocs / www / public_html, sehingga tampak sebagai berikut :


Kemudian untuk mengetes CKEditor sudah berjalan bisa dengan menjalankan URL http://localhost/ckeditor/_samples/fullpage.html. Sehingga tampak tampilan sebagai berikut :

Selasa, 04 September 2012

Crop Image Interaktif pada Halaman Web dengan JQuery ImageAreaSelect Upload Crop (Pemrograman Web PHP JQuery)

Beberapa hari yang lalu ada teman yang menceritakan bahwa di Website SNMPTN ada fasilitas Mengupload Foto Pendaftaran kemudian secara Online Interaktif On The Fly Pengguna langsung Memilih Area yang Akan Di-Crop dan Menyimpan atau Upload Hasilnya sebagai Foto yang Akan Digunakan untuk Mendaftar. Setelah searching sana kemari, hasilnya ketemu teknik serupa dengan nama JQuery Image Area Select.

Website dari JQuery ImageAreaSelect dapat ditemukan disini http://odyniec.net/projects/imgareaselect/. Demonya terlihat sebagai berikut :


Sedangkan library JQuery Image Area Select dapat didownload disini http://odyniec.net/projects/imgareaselect/jquery.imgareaselect-0.9.8.zip.

Tetapi demo atau contoh pada website di atas tidak membahas atau memberikan cara untuk Mengupload Gambar hasil Pilihan Area Crop. Kemudian Pertanyaannya Bagaimana Cara Menyimpan atau Upload Gambar Hasil yang Telah Di-Crop. Ternyata penulis menemukan disini, beserta demonya :

Senin, 03 September 2012

Android Client Web Service dengan KSOAP Consume WebService VB.NET (Pemrograman Android)

Ternyata Android juga Mampu mengakses Web Service. Tentu saja menggunakan Library tambahan. Dan Library itu adalah KSOAP, Library yang Sama yang Digunakan untuk Mengkoneksikan Aplikasi pada Pemrograman J2ME dengan Web Service Java, PHP maupun Visual Basic.NET atau C#.NET.

Kali ini coba kita pakai library KSOAP yang dapat didownload disini. Untuk Membuat Aplikasi Android untuk Mengkonsumsi Web Service .NET.

Pertama kita buat dahulu Web Service dengan Membuak Visual Studio, jika perlu jalankan sebagai Administrator, klik kanan Icon/Menu Visual Studio .NET, pilih Run As Administrator.

Kemudian klik File - New - Web Site, pilih ASP .NET Web Service, Pilih location HTTP atau File System, bahasa pemrograman Visual Basic. Untuk kompatibilitas bisa memilih .NET Framework 2.0 saja.


Kemudian buat method webservice sederhana, misalnya :

Sabtu, 01 September 2012

Membuat Halaman Edit / Update Data Dreamweaver Wizard PHP-MySQL


Setelah berhasil Membuat Web untuk menampilkan Data dengan PHP MySQL menggunakan Dreamweaver Wizard dan Membuat Halaman Web PHP Insert Tambah Data dengan Dreamweaver Wizard. Maka kita lanjutkan untuk membuat Halaman Edit Update Data dengan PHP MySQL menggunakan Dreamweaver Wizard.

Buka dahulu project yang sebelumnya, kemudian kita klik Tabel Data dari Halaman Tampil Data kemudian klik kanan Insert Column.



Kemudian tambahkan Link untuk Tambah dengan link add.php, dalam hal ini misalnya penulis memberi nama addpos_pengamat.php

Kamis, 30 Agustus 2012

Membangun Web JSP dengan Dreamweaver Wizard (Pemrograman Web JSP)

Setalab Berhasil Membuat Web PHP dengan Dreamweaver Wizard, ternyata Dreamweaver juga Mampu Digunakan Untuk Membuat Web JSP Secara Kilat dengan Dreamweaver JSP Wizard. Langkah-langkahnya sebagai berikut :

Jalankan Dreamweaver, kalau bisa dengan klik Kanan Run As Administrator. Karena jika kita menggunakan Apache Tomcat, biasanya lokasinya di Drive C:\ Sedangkan untuk menulis file di Drive C:\Program Files membutuhkan Permission Administrator.


Buat dahulu New Site, dengan klik Menu Site- New Site

Selasa, 28 Agustus 2012

Android Upload File Gambar ke Web (Pemrograman Android)

Kali ini Penulis ingin membagi Pengetahuan tentang Cara Membuat Aplikasi untuk Mengupload File Gambar atau Dokumen dengan Android ke Server Web.

Pertama-tama, siapkan dahulu Kode Program di Web Server. Misalnya kia gunakan Web Server XAMPP Apache dengan bahasa PHP. Maka kita siapkan file untuk menerima hasil upload. Misal dengan nama web-receiver-upload\receiver-upload.php :


<?php

$target_path = "dokumen/";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "File ". basename( $_FILES['uploadedfile']['name']).
" berhasil diupload";
} else{
echo "Terjadi kesalahan!";
}

?>



Buka Eclipse, buat Project Android Baru. Misalnya dengan Nama WebUploader dengan Nama Activity Utama MainActivity

Senin, 27 Agustus 2012

Recording Video dari Web Camera dengan VB.NET (Pemrograman Visual Basic .NET)

Setelah berhasil Menampilkan WebCam dengan VB.NET dan Meng-capture (Snapshot) Web Camera dengan Visual Basic .NET. Kali ini coba kita buat aplikasi yang bisa Recording (Merekam) Web Camera menggunakan VB .NET.

Pertama Buka Visual Studio .NET, sebaiknya dengan hak akses Administrator, caranya klik kanan Icon / Menu, pilih Run As Administrator. Karena sering terjadi error ketika menyimpan file hasil Recording.


Kemudian kemudian Buka Project sebelumnya dari Artikel Menampilkan WebCam dengan VB.NET yang dapat didownload pada link berikut ini, kemudian tambahkan 2 Buah Button, Button1 "Start / Record" dan Button2 "Stop / Save" serta SaveFileDialog1 sehingga tampak sebagai berikut :

Minggu, 26 Agustus 2012

Memampilkan JasperReport iReport PDF pada Web JSP Servlet (Pemrograman Java Server Page)

Setelah bisa Membuat Report JasperReport dengan iReport sehingga siap pakai. Kemudian sudah coba kita Menampilkan JasperReport iReport di Java Desktop dengan NetBeans. Maka kali ini coba kita gunakan Report tersebut untuk ditampilkan pada Aplikasi Java Berbasis Web atau JSP (Java Server Page) yang juga dibuat menggunakan NetBeans.

Pertama kita buat Project Baru dengan cara Klik File-New Project


Kemudian Pilih Java Web - Web Application. Klik Next

Sabtu, 25 Agustus 2012

Membuat Halaman Insert / Tambah Data dengan Dreamweaver Wizard PHP-MySQL

Setelah berhasil Membuat Web untuk menampilkan Data dengan PHP MySQL menggunakan Dreamweaver Wizard. Maka kita lanjutkan untuk membuat Halaman Tambah Data dengan PHP MySQL menggunakan Dreamweaver Wizard.

Buka dahulu project yang sebelumnya, kemudian kita klik Tabel Data dari Halaman Tampil Data kemudian klik kanan Insert Column.


Kemudian tambahkan Link untuk Tambah dengan link add.php, dalam hal ini misalnya penulis memberi nama addpos_pengamat.php

Rabu, 22 Agustus 2012

Menampilkan JasperReport iReport pada Java NetBeans (Pemrograman Java Desktop)

Setelah bisa Membuat Report JasperReport dengan iReport sehingga siap pakai. Maka kali ini coba kita gunakan Report tersebut untuk ditampilkan pada Aplikasi Java Desktop yang dibuat menggunakan NetBeans.

Pertama kita buat Project Baru dengan cara Klik File-New Project



Kemudian Pilih Java - Java Application, klik Next

Minggu, 19 Agustus 2012

Mengambil Email Attachment dari GMail dengan PHP IMAP (Pemrograman Web PHP)

Setelah bisa menggunakan PHP untuk mengirim Email dengan SMTP GMail dan Menerima Email dengan IMAP dari GMail ditambah Mengirimkan Email menggunakan Attachment dengan Fungsi PHP Mail() serta Mengirim Email Attachment Menggunakan PHP tetapi Lewat IMAP Gmail, kali ini kita coba untuk mengambil Email dengan Attachment yang masuk ke Inbox GMail menggunakan PHP IMAP.

Seperti sebelumnya, kode program ini bisa berjalan apabila bisa mengakses port SSL IMAP, dimana itu kemungkinan besar bisa dilakukan apabila anda menggunakan server localhost dengan koneksi internet menggunakan HP atau modem pribadi. Jika kita gunakan jaringan Publik seperti Warnet, Kantor bisa tidak berjalan.

Berikut kode programnya :

<?php
    // http://cariprogram.blogspot.com
    // nuramijaya@gmail.com
    // sumber : http://www.codediesel.com/php/downloading-gmail-attachments-using-php/

/**
 * Downloads attachments dari Gmail dan menyimpan dalam bentuk file.
 * Menggunakan PHP IMAP extension, jadi pastikan php_imap dienable pada php.ini, yaitu :
 * extension=php_imap.dll
 */

set_time_limit(3000);

/* koneksi ke gmail */

Mengirim Email Attachment PHP dengan SMTP GMail (Pemrograman Web PHP)

Setelah bisa menggunakan PHP untuk mengirim Email dengan SMTP GMail dan Menerima Email dengan IMAP dari GMail ditambah Mengirimkan Email menggunakan Attachment dengan Fungsi PHP Mail(), kali ini kita coba untuk mengirimkan Email dengan Attachment tetapi menggunakan SMTP dari GMail.

Sebagai catatan kode program ini dapat berjalan apabila komputer atau server yang digunakan mempunyai akses melewati port SSL SMTP. Dimana itu belum tentu diizinkan apabila anda menggunakan komputer yang terhubung di jaringan publik, warnet, kantor dan sebagainya. Tetapi biasanya bisa apabila anda menggunakan komputer/laptop pribadi dengan server localhost menggunakan koneksi internet dengan HP atau modem.

Berikut ini kode programnya :

<?php
    // http://cariprogram.blogspot.com
    // nuramijaya@gmail.com
    // sumber : http://atik97.wordpress.com/2010/11/25/send-email-with-attachment-using-gmail%E2%80%99s-smtp-server-with-php/

require_once "Mail.php";
require_once "Mail/mime.php";

Mengirim Email Attachment dengan PHP Fungsi Mail (Pemrograman PHP)

Setelah berhasil menggunakan PHP untuk mengirim Email dengan SMTP GMail dan Menerima Email dengan IMAP dari GMail, kali ini kita coba untuk mengirimkan Email dengan Attachment. Untuk kali ini kita pakai fungsi Mail() dari PHP untuk mengirimkan Email beserta sebuah File Attachment.

Harap menjadi catatan bahwa program ini hanya berjalan pada Web Server Apache-PHP yang telah dikonfigurasi agar dapat mengirim email menggunakan sebuah SMTP Mail Server. Tentu saja yang jelas berjalan apabila kita jalankan script PHP ini pada Layanan Hosting Online yang Gratis maupun Berbayar. Sedangkan pada server localhost perlu kita setting lebih lanjut dimana tidak dibahas disini.

Kode programnya sebagai berikut :

<?php
    // http://cariprogram.blogspot.com
    // nuramijaya@gmail.com
    // sumber : http://www.finalwebsites.com/forums/topic/php-e-mail-attachment-script

    $filename = "dokumen.zip";
    $path = ""; //$_SERVER['DOCUMENT_ROOT']."/path_dir/";

Jumat, 17 Agustus 2012

Report Java dengan JasperReport iReport

Untuk membuat Report pada Bahasa Pemrograman Java yang paling Populer adalah dengan JasperReport iReport. Software untuk membuat Report tersebut dapat anda download secara gratis di sini.

Setelah terinstall kita buat Report langkah demi langkah :

1. Buka iReport, kemudian klik Data Source Connection :


2. Setelah tampil Dialog Connection / Dataseurces, kemudian klik New :

Rabu, 15 Agustus 2012

Web PHP MySQL dengan Dreamweaver Wizard

Beberapa waktu yang lalu penulis diajari seorang teman untuk membuat web secara kilat, tinggal Drag and Drop menggunakan Dreamweaver. Cukup mengagumkan, sangat efektif untuk membuat web dengan field / kolom database sangat banyak secara kilat. Web yang bisa dibuat tersedia dalam teknologi PHP-MySQL, ASP.NET VB, ASP.NET C#, dan JSP.

Kali ini kita bahas dahulu untuk Web dengan Teknologi PHP-MySQL, dalam hal ini kita gunakan Dreamweaver CS3. Langkahnya sebagai berikut :

1. Buat dahulu New Site, dengan klik Menu Site- New Site


2, Kemudian konfigurasi Site nya seperti di bawah ini :

Upload File Image pada JSP Tanpa Library Tambahan (Pemrograman Web Java Server Page / JSP)

Pada pemrograman PHP dan ASP untuk mengupload File Image, Gambar, Dokumen dapat dilakukan dengan mudah, tetapi bagaimana dengan JSP, ternyata tidak semudah itu. Setelah beberapa tahun menyimpan pertanyaan ini, dan karena kebutuhan mendesak setelah beberapa hari memaksakan diri mencari akhirnya dapatlah cara untuk Mengupload File secara sederhana tanpa library tambahan pada Web JSP :)

Buatlah direktori web, misal testupload. Kemudian di dalamnya buatlah file index.jsp dengan isi sebagai berikut :

<%@ page language="java" %>
<HTml>
<HEAD><TITLE>Halaman untuk pilih file yang akan diupload</TITLE></HEAD>  
<%  // http://cariprogram.blogspot.com
// nuramijaya@gmail.com
// sumber : http://www.roseindia.net/jsp/file_upload/Sinle_upload.xhtml.shtml  
//jangan lupa menggunakan Encrypt type of multipart/form-data and input of file type untuk browse dan submit file %>
  <BODY> <FORM  ENCTYPE="multipart/form-data" ACTION="upload.jsp" METHOD=POST>
<br><br><br>
 <center><table border="2" >
                    <tr><center><td colspan="2"><p align="center"><B>UPLOAD FILE</B><center></td></tr>
                    <tr><td><b>Silakan pilih File untuk Diupload:</b></td>
                    <td><INPUT NAME="F1" TYPE="file"></td></tr>
<tr><td colspan="2"><p align="right"><INPUT TYPE="submit" VALUE="Send File" ></p></td></tr>
             <table>
     </center>      
     </FORM>
</BODY>
</HTML>

Setelah itu buatlah file upload.jsp dengan isi sebagai berikut :

Selasa, 14 Agustus 2012

Membuat Browse File Explorer pada Android (Pemrograman Android)

Di berbagai bahasa pemrograman seperti VB, Delphi, Java, PHP, ASP, JSP kita mengenal Open Dialog dengan berbagai bentuknya sendiri-sendiri. Komponen tersebut berguna saat kita hendak memilih suatu file untuk membuka, memproses atau menyimpan sebuah file.

Bagaimana dengan di Android. Ternyata di Android tidak ada komponen semacan Open Dialog tersebut. Terpaksalah kita membuat sendiri semacam window (Activity) untuk memilih file agar user friendly. Kali ini kita coba membuatnya. Caranya buat project Android.

Kemudian pada file main.xml ubah sehingga menjadi seperti di bawah ini :

main.xml :

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
 android:id="@+id/path"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    />
<ListView
 android:id="@android:id/list"
 android:layout_width="fill_parent"
    android:layout_height="wrap_content"
 />
<TextView
 android:id="@android:id/empty"
 android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="No Data"
 />
</LinearLayout>

Buat satu lagi file layout di folder res/layout dengan nama row.xml :

row.xml

Senin, 13 Agustus 2012

Mengambil Email dengan PHP Menggunakan Gmail IMAP

Setelah bisa Mengirim Email menggunakan PHP dengan fasilitas SMTP SSL dari Gmail, bagaimana dengan sebaliknya. Yaitu mengambil email yang ada pada Inbox Gmail menggunakan bahasa pemrograman PHP dengan IMAP.

Seperti halnya pada program sebelumnya, port IMAP harus bisa diakses, jadi program ini akan jalan apabila kita menggunakan koneksi Modem / HP sendiri, jika menggunakan koneksi internet lewat Kantor / Warnet / Publik belum tentu berjalan

Berikut scriptnya :


<?php
/* koneksi ke gmail */
$hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
$username = 'mapjogja@gmail.com';
$password = 'xxxx';

Minggu, 12 Agustus 2012

Mengirim Email Attachment dengan VB.NET (Pemrograman Visual Basic .NET)


Setelah Berhasil Mengirim Email dan Attachment dengan menggunakan Bahasa Pemrograman C#.Berikut ini versi lainnya dalam Bahasa Pemrograman Visual Basic .NET, disertai contoh project.

Buat dahulu Project VB.NET baru, kemudian Tambahkan satu buah Button sehingga tampak sebagai berikut :


Tampilkan kode program, tambahkan Import berikut di bagian kode program paling atas :

Imports System.Net.Mail

Klik dua kali pada Button1, tambahkan Kode Program berikut ini yang berguna untuk mengirimkan email, bisa email teks, HTML atau disertai Attachment berupa Gambar, Dokumen ataupun ZIP.

Sabtu, 11 Agustus 2012

Mengirim Email dengan PHP lewat SMTP Gmail (Pemrograman Web PHP)

Beberapa waktu yang lalu penulis mencoba membuat program untuk kepentingan sebuah proyek, untuk mengirim Email dengan bahasa pemrograman PHP tetapi menggunakan account email Gmail. Jadi tidak menggunakan perintah mail() biasanya.

Scriptnya sebagai berikut :

<?php
       require_once "Mail.php";

        $from = "mapjogja@gmail.com";
        $to = "nuramijaya@gmail.com";
        $subject = "Test Email dari PHP!";
        $body = "Halo,\n\nApa Kabar?";

        $host = "ssl://smtp.gmail.com";
        $port = "465";
        $username = "mapjogja@gmail.com";
        $password = "xxxx";

        $headers = array ('From' => $from,
          'To' => $to,
          'Subject' => $subject);
        $smtp = Mail::factory('smtp',
          array ('host' => $host,
            'port' => $port,
            'auth' => true,
            'username' => $username,
            'password' => $password));

        $mail = $smtp->send($to, $headers, $body);

        if (PEAR::isError($mail)) {
          echo("<p>" . $mail->getMessage() . "</p>");
         } else {
          echo("<p>Email terkirim!</p>");
         }

    ?>

Program ini mampu mengirim email walaupun dari server localhost asal port SMTP SSL diijinkan. Sebagai catatan apabila anda berada di jaringan publik atau kantor atau warnet, port ini belum tentu dibuka, tetapi jika menggunakan koneksi modem atau HP, biasanya port SMTP SSL ini terbuka jadi program bisa berjalan.

Script dapat didownload disini. Di Google Docs, klik File-Download

Semoga manfaat.

Minggu, 05 Agustus 2012

Menampilkan PDF pada C#.NET (Pemrograman CSharp .NET)

Pada pembahasan sebelumnya sudah bisa dibuat Program untuk Menampilkan PDF pada VB.NET. Kali ini  dengan bahasa pemrograman Visual C# .NET akan kita gunakan Komponen PDF Viewer milik Adobe Acrobat PDF Reader untuk membuat PDF Viewer serupa.

Langkah pertama buat project baru, kemudian pada Toolbox klik kaman, Choose Items :


Setelah muncul dialog Choose Toolbox Items, pilih Tab COM Components, pilih (cek) Adobe PDF Reader, component Adobe PDF Reader ini ada jika sudah diinstal Adobe Acrobat PDF Reader.

Jumat, 27 Juli 2012

Setting SQLExpress 2008 Tanpa Re-Create Table (Database SQL Server)

Saat kita memakai SQL Server 2008, kadang kita mengalami masalah ketika menggunakan SQL Server Management Studio 2008. Kendalanya adalah saat kita modify table (merubah kolom-kolom dalam suatu tabel), muncul peringatan bahwa SQL Server tidak mau menjalankan perintah tersebut, dan table harus di recreate (dihapus kemudian dibuat ulang). Padahal di SQLServer 2005 kita tidak pernah menemui masalah ini.

Solusinya dengan mengubah setting berikut, pada SQL Server 2008 Management Studio Express, klik Tools - Option


Kemudian setelah muncul Dialog Option, pilih Designers, kemudian uncheck (hilangkan cek) pada Opsi "Prevent Saving Changes That Required Table Re-Creation"

Setting SQLExpress Koneksi Jaringan / Remote SQL Server Authentication (Database SQLServer)

Install SQL Server 2005 / 2008 Express Edition, download 2005 atau 2008, atau 2008 SP 2
Install SQL Server 2005 / 2008 Management Studio Express, download 2005 atau 2005 SP 3 atau 2008 atau 2008 R2


Setting SQL Server agar dapat terkoneksi ke Jaringan dan memiliki Username Password SQL Server Authentication.

Klik Start – Microsoft SQL Server 2005 – Configuration Tools – Klik Kanan SQL Server Configuration Manager – Run As Administrator


Rabu, 25 Juli 2012

Zip PHP untuk Kompresi File Direktori (Pemrograman Web PHP)

Daripada lupa, berikut ini penulis menemukan cara mengkompresi banyak file ke dalam satu file ZIP dengan PHP, cukup bermanfaat :

<?php
// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

$files = array('example/tes1.txt', 'example/logo-small.gif');
$zip = new ZipArchive;
$zip->open('file.zip', ZipArchive::CREATE);
foreach ($files as $file) {
  $zip->addFile($file);
}
$zip->close();

header('Content-Type: application/zip');
header('Content-disposition: attachment; filename=file.zip');
header('Content-Length: ' . filesize("file.zip"));
readfile("file.zip");
?>

Sedangkan di bawah ini adalah cara kompresi Direktori menjadi file ZIP dengan PHP :

Selasa, 24 Juli 2012

Membaca Excel dengan PHP-Excel-Reader (Pemrograman Web PHP)

Baru saja ada yang menanyakan bagaimana cara mengupload Excel ke Web PHP kemudian langsung datanya dimasukkan secara otomatis ke database MySQL. Setelah cari sana - sini ketemulah php-excel-reader, yang dapat didownload di sini, sedangkan dokumentasi pemakaiannya dapat dilihat di sini.

Sedangkan untuk membaca nilai cell pemakaiannya sebagai berikut :

<?php
//error_reporting(E_ALL ^ E_NOTICE);
error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED);
//karena excel_reader2.php menggunakan fungsi split yg sudah deprecated di php5
require_once 'excel_reader2.php';
$data = new Spreadsheet_Excel_Reader("example.xls");

echo "CELL A,1 -> ".$data->val(1,'A')."<br/>";
echo "CELL B,2 -> ".$data->val(2,'B')."<br/>";
echo "CELL F,10 -> ".$data->val(10,'F')."<br/>";

echo "CELL D,3 -> ".$data->val(3,4)."<br/>";
echo "CELL E,2 -> ".$data->val(2,5)."<br/>";

echo "SHEET2 CELL A,1 -> ".$data->val(1,'A',1)."<br/>";
echo "SHEET2 CELL C,2 -> ".$data->val(2,3,1)."<br/>";
?>


Perlu diperhatikan baris error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED); dibutuhkan agar tidak keluar warning, karena PHP-Excel-Reader memakai fungsi split() yang sudah diganti dengan fungsi lain (deprecated) di PHP5.