Jumat, 24 Oktober 2014

Pembangunan Web Menggunakan GO Programming [2]

== PART 2 ==


Saya akan melanjutkan postingan pembangunan web menggunakan pemrograman GO sebelumnya.
Kali ini saya akan membahas tentang cara menampilkan data yang diambil dari database MySQL

*tetep ya pada postingan ini framework saya samarkan*

1. Menampilkan nama provinsi yang ada pada table province

Berikut beberapa potongan source code nya:

- Controller :
*buka file mhs.go*

Tambahkan function berikut :

func Lihat (w http.ResponseWriter, r *http.Request) {
t,_ := mr.MRenderTemplate("login/lihat.html")
r.ParseForm();
p := model.GetProvince()
data := struct { Data []model.Province}{Data:p}
mr.MExecute(w,t,data)
}

- Model :
*buka file M_province.go*

Buat source code berikut :

package model
import (
_ "github.com/go-sql-driver/mysql"
"framework/sys/config"
)
     type Province struct { 
ProvinceId int
ProvinceName string}
func GetProvince() []Province { 
db := config.MuntoiDB
rows, _ := db.Query("SELECT  province.province_id as             ProvinceId, province.province_name as ProvinceName FROM             province")
        mis := []Province{} 
mi := Province{} 
for rows.Next() {
rows.Scan(&mi.ProvinceId, &mi.ProvinceName)
mis = append(mis, mi) 
}
return mis
}

- Routing :
*buka file Routing.go*

Tambahkan source code berikut :

jalan.MuntoiReg("/lihat", mhs.Lihat)

- Buat sebuah file html dengan nama file lihat.html dan simpan pada folder C:\xampp\htdocs\gomuntoi\template\login

<html>
<head>
<title>List Province</title>
</head>
<body>
{{with .Data}}{{range .}}
<input type = "button" value = "{{.ProvinceName}}" />
{{end}}{{end}}
</body>
</html>
- Akses pada browser : localhost:8080/lihat
Maka akan muncul seperti gambar dibawah ini :



2. Menampilkan provinsi berdasarkan id provinsi yang telah dipilih

- Controller :
*buka file mhs.go*

Tambahkan function berikut :

func LihatById (w http.ResponseWriter, r *http.Request) {
t, _ := mr.MRenderTemplate("login/lihat.html")
idprov := r.FormValue("id")
p := model.GetProvinceById(idprov)
data := struct { Data []model.Province}{Data:p}
mr.MExecute(w,t,data)
}

- Model :
*buka file M_province.go*

Tambahkan source code berikut :

func GetProvinceById(id string) []Province{
db := config.MuntoiDB
rows, _ := db.Query("SELECT  province.province_id as                   ProvinceId, province.province_name as ProvinceName FROM                 province where province.province_id="+id)
mis := []Province{}
mi := Province{}
for rows.Next() {
rows.Scan(&mi.ProvinceId, &mi.ProvinceName)
mis = append(mis, mi)
}
return mis
}

- Routing :
*buka file Routing.go*

Tambahkan source code berikut :

jalan.MuntoiReg("/lihatid", mhs.LihatById)
- Akses pada browser : localhost:8080/lihatid?id=7
*pemilihan id kondisional, sesuai yang ingin ditampilkan*
Maka akan muncul seperti gambar dibawah ini :




  

Tidak ada komentar:

Posting Komentar