Showing posts sorted by relevance for query yii. Sort by date Show all posts
Showing posts sorted by relevance for query yii. Sort by date Show all posts

Monday, 7 July 2014

Buku-buku YII Framework Gratis dan Mudah di Pahami

Standard
Web Application Development with Yii and PHP (DEMO | DOWNLOAD)
Buku ini di karang oleh Jeffrey Winesett bulan November tahun 2012 lalu, buku ini berisi tentang Auto-generate skeleton web applications as well as CRUD scaffolding for the domain object model using the built-in command-line interface, Use Yii database migrations to version and manage your database changes, Create user-based applications with Yii's authentication model, Enhance your user-based application to control a user's access to feature functionality, Write an administrative console application to extend the features provided by Yii's powerful command-line tools, Integrate other frameworks and libraries into a Yii application to further extend its feature set, Spend less time managing application configuration by taking advantage of Yii's sensible defaults and conventions.
Learn how easy it is to implement a multi-user application by utilizing Yii's authentication and role-based authorization models, Update your code to properly manage the user's last login time and store it in the database. Buku Yii ini bisa anda dapatkan secara gratis dengan mengunduh link download diatas.

Yii Application Development Cookbook (DEMO | DOWNLOAD)
Buku ini dikarang oleh Alexander Makarov dan diterbitkan Packt Publishing pada Mei 2013. Buku ini menyediakan versi ebooknya secara gratis dan dapat anda unduh secara cuma-cuma. Buku ini meliputi 13 BAB/ bahasan. Apabila anda adalah seorang pengembang dan sering menggunakan PHP 5 maka buku ini cocok anda gunakan.
The Yii framework is a rapidly growing PHP5 MVC framework often referred to as Rails for PHP. It has already become a solid base for many exciting web applications such as Stay.com and can be a good base for your developments, too. This book will help you to learn Yii quickly and in more depth for use in for your developments.
"Yii Application Development Cookbook" will show you how to use Yii efficiently. You will learn about taking shortcuts using core features, creating your own reusable code base, using test driven development, and many more topics that will give you a lot of experience in a moderate amount of time.
The second edition fixes all errata found in the first edition and also features new recipes on the client side, HTTP caching, and using Composer with Yii.

Yii Rapid Application Development Hotshot (DEMO | DOWNLOAD)
Buku karangan Lauren O'Meara dan James Hamilton ini diterbitkan oleh Packt Publishing  bulan December 2012 dan tersedia versi ebooknya secara gratis. Buku ini memuat serangkaian proyek untuk membantu Anda mempelajari Yii dan Rapid Application Development. Hal ini dapat digunakan sebagai sebuah buku hebat untuk mencari konsep-konsep kunci, atau bekerja pada proyek-proyek dari awal sampai akhir untuk aplikasi web yang lengkap.
Catapult your application into existence with Yii's scaffolding capabilities, Mobilize your web application with Yii and jQuery Mobile, Lock down areas of your application with access control, Manage users and permission levels, Incorporate Software as a Service into your application, Gamify your data, Mine your information with data query jobs and reporting, Reuse your work as Yii modules.

Menjelajah Yii Framework (DEMO | DOWNLOAD)
Buku karangan salah satu pegawai Badan Pusat Statistik yaitu Sabit Huraira diterbitkan sendiri dalam blog pribadinya. Ebook ini membahas tentang pembuatan forum yang didalamnya menjelaskan instalasi yii, level akses user, thread tebaik, penggunaan yii bootstrap, dll sangat cocok untuk pemula. Ebook ini disertai dengan source code dari pembuatnya.
Prakata dari pengarang sebagai berikut: Bagi rekan-rekan komunitas yang tertarik mempelajari Yii Framework, saya telah membuat sebuah ebook Yii Framework yang isinya adalah beberapa bahasan menyangkut Yii Framework beserta contoh source code pembuatan aplikasi forum menggunakan Yii Framework. Ebook ini sendiri saya tujukan untuk komunitas Yii Framework Indonesia, karena itu isi dari ebook ini sendiri saya kemas dalam bahasa Indonesia agar rekan-rekan dapat lebih mudah mempelajari dan memahami materi di dalamnya. Setahu saya ini adalah ebook PERTAMA Yii Framework yang berbahasa Indonesia. Untuk mendapatkan ebook ini, anda tidak perlu merogoh kocek sedikitpun.

Agile Web Application Development with Yii 1.1 and PHP 5 (DEMO | DOWNLOAD)
This book is a step by step tutorial in developing a real-world application using the incremental and iterative approach to software development. You learn about agile software development by leaning on the agile nature of the Yii application development framework. You touch on each aspect of the software development lifecycle by building a project task management application from concept through production deployment.
After a brief, general introduction to the Yii framework and outlining the software development approach taken throughout the book, the chapters break down in the same way as software development iterations do in real-world projects. After the 1st iteration, you will have a working and tested application with a valid, tested connection to a database.
In the 2nd and 3rd iterations, we flesh out our main database entities and domain object model and become familiar with Yii's object-relational-mapping (ORM) layer, Active Record. We also learn how to lean on Yii's auto-generation tools to automatically build our create/read/update/delete (CRUD) functionality against our newly created model. These iterations also focus on how Yii's form validation and submission model works. By the end of the third iteration you will have a working application that allows you to mange projects and issues (tasks) within those projects.
The 4th and 5th iterations are dedicated to user management. We learn about the built-in authentication model within Yii to assist in application login and logout functionality. We then dive into the authorization model, first taking advantage of a Yii's simple access control model, then implementing the more sophisticated role-based access control (RBAC) framework that Yii provides.

Sunday, 18 August 2013

7 LANGKAH BELAJAR YII FRAMEWORK

Standard
Bagi banyak orang yang baru saja mengenal YII Framework mungkin terasa sulit karena belum mengenal dan baru saja mengetahui sintak-sintak apa saja yang dapat di gunakan pada framework canggih ini. Sebenarnya yii framework itu apa dan bagaimana cara penggunaanya, seperti inilah pertanyaan yang selalu terlontarkan pada orang-orang yang akan memulai belajar yii.
Mari kita kupas bagaimana kiat belajar yii framework yang baik. Sebelum menginjak ke inti permasalahan mari kita ulas kembali pengertian dari yii framework.
Di kutip dari laman resmi yii framework adalah framework (kerangka kerja) PHP berbasis-komponen, berkinerja tinggi untuk pengembangan aplikasi Web berskala-besar. Yii menyediakan reusability maksimum dalam pemrograman Web dan mampu meningkatkan kecepatan pengembangan secara signifikan. Nama Yii (dieja sebagai /i:/) singkatan dari "Yes It Is!".
Kiat belajar yii framework di kutip dari forum yii framework Indonesia yaitu:
  1. Unduh Yii Framework --> install --> test requirementnya, untuk lebih lengkapnya baca pada docs http://www.yiiframework.com/doc/guide/1.1/en/quickstart.installation
  2. Tes demo yang di sediakan dalam yii framework dan yang terpenting adalah sample blog. Pelajari pola kode didalamnya dan  baca dokumentasinya pada alamat http://www.yiiframework.com/doc/blog/
  3. Saatnya membuat aplikasi Yii sendiri, buat skeleton Yii Framework dengan mengikuti tutorialnya pada alamat http://www.yiiframework.com/doc/guide/1.1/en/quickstart.first-app aplikasi ini sudah bisa digunakan, meskipun masih skeleton.
  4. Melalui MySQL atau database lainnya (PostGreSQL, Oracle, dll), anda dapat membuat database sesuai yang anda butuhkan. Setiap tabel wajib mempunyai Primary Key. Setelah itu setup koneksi database-nya ke Yii (app/protected/config/main.php. Ikuti petunjuk pada alamat http://www.yiiframework.com/doc/ guide/1.1/en/database.dao
  5. Saatnya membuat aplikasi CRUD dengan tabel-tabel di database yang sudah kita buat melalui Auto Generation Code Yii dengan mengikuti petunjuk pada alamat http://www.yiiframework.com/doc/guide/1.1/en/topics.gii
  6. Sisanya tinggal berjalan bersama Yii, pelajari semua class, componen, db, gii, loging, validation, Filter, Form, zii Widget, extension, module, behaviour, theme, layout, captha, authentication, internationalization, localization, webservices, unit testing, dan integrasi dengan third party, framework lain, encapsulate yang ada dalam yii. Semua sudah built-in di Yii, tinggal menggunakan saja.
  7. Pelajari Wiki dan gunakan Extension sesuai kebutuhan anda.
Semoga bermanfaat, selamat mencoba.

Wednesday, 8 April 2015

Website Gratis Berbasis Yii Framework

Standard
Menurut Ann Rockley, dkk dalam bukunya yang berjudul Managing Enterprise Content: A Unified Content Strategy pengertian CMS atau Sistem manajemen konten adalah perangkat lunak yang digunakan untuk menambahkan atau memanipulasi (mengubah) isi dari suatu situs web.
Dari pengertian diatas saya akan memaparkan website gratis berbasis Yii Framework "siap pakai" (CMS). Banyak programer baru atau orang yang berusaha untuk menjadi programer mencoba-coba framework yang sudah banyak ditawarkan di dunia maya. Banyak pula diantara mereka yang kesulitan untuk belajar framework-framework tersebut salah satunya Yii Framework. Dari studi dilapangan yang menggunakan metode angket dan wawancara dari 250 angket yang disebarkan kepada mahasiswa dengan kosentrasi Teknik Informatika, 209 mahasiswa mengatakan kesulitan dalam mempelajari Yii Framework dan sisanya menjawab mudah dalam mempelajarinya. Kesimpulan dari 209 koresponden menyatakan bahwa mereka kesulitan mempelajari Yii Framework karena kurangnya dokumentasi dari Yii Framework dan belum banyaknya contoh-contoh program atau source code yang bisa mereka dapatkan secara cuma-cuma (gratis). Untuk itu saya tertarik untuk memaparkan website gratis berbasis Yii Framework agar dapat membantu mahasiswa dalam mempelajari Yii Framework secara mudah. Berikut website gratis berbasi Yii Framework:

1. HumHub (Demo | Download)
HumHub merupakan perangkat lunak dengan kategori jejaring sosial yang memiliki tujuan membantu sekelompok orang dalam berinteraksi secara mudah dan cepat. Merupakan perangkat lunak yang ringan, cepat dan menawarkan user-friendly atau tampilan yang mudah digunakan. HumHub dapat membantu meningkatkan bisnis Anda, memperbanyak pelanggan Anda, mengajar siswa atau mengatur klub sepak bola Anda. Beberapa fitur yang ditawarkan perangkat lunak ini diantaranya: notifikasi, monitoring komunitas, dashboard, social tools (Post, comment, follow, like and connect with other), profil pengguna, grup, direktori, file, public access, search, support mobile dan beberapa plugin yang siap digunakan.

2. LimeSurvey (Demo | Download)
LimeSurvey merupakan perangkat lunak yang bergerak dibidang survey untuk mengumpulkan informasi pada hubungan bisnis atau aktifitas Anda. Memiliki slogan "the open source survey application, refreshingly easy and free" dengan tujuan membantu anda dalam membuat suatu survey atau angket dengan mudah, cepat dan gratis. Beberapa fitur dari LimeSurvey diantaranya: Unlimited jumlah survei pada saat yang sama, Unlimited jumlah pertanyaan dalam survei (hanya dibatasi oleh database Anda), Unlimited jumlah peserta untuk survei, Survei multi-bahasa, User-manajemen, Editor WYSIWYG HTML, Manajemen Kuota, Integrasi gambar dan film ke survei, Penciptaan versi survei dicetak, Kondisi pertanyaan tergantung pada jawaban sebelumnya (Logic / Percabangan), Dapat digunakan kembali atau mengubah jawaban, Import pertanyaan, Survei penilaian, Anonymous dan Tidak-Anonymous survei, Kelompok terbuka dan tertutup survei peserta, Pendaftaran publik Opsional untuk survei, Mengirim undangan, pengingat dan token melalui email, Pilihan bagi peserta untuk buffer jawaban untuk melanjutkan survei di lain waktu, Penggunaan cookie dan session, Template editor untuk membuat tata letak halaman Anda sendiri, Tampilan administrasi yang user-friendly, Back-office, Otomatisasi survey tanggal kadaluarsa, Peningkatan fungsi impor dan ekspor untuk teks, CSV, PDF, SPSS, R, queXML dan MS Excel Format, Analisis statistik dan grafis dasar dengan fasilitas ekspor, Layar Pembaca Accessiblity, W3C, Mendukung lebih dari 50 bahasa, Panduan atau dokumentasi.

3. Cartnex (Demo | Download)
Cartnex yang memiliki website resminya di laman cartnex.org merupakan perangkat lunak yang bergerak di bidang toko online (eCommerce) dengan tujuan membantu Anda dalam menjual produk yang Anda miliki dan mempeluas pelanggan Anda. Beberapa fitur cartnex dari sisi pembuatan diantaranya: menggunakan platform Yii Framework, desain profesional, sangat interaktif dan sederhana. CMS ini masih tergolong baru karena di rilis awal April 2015 sehingga belum memiliki dokumentasi.

4. EasyiiCMS (Demo | Download)
EasyiiCMS merupakan perangkat lunak yang bergerak dibidang web portal berita. Perangkat lunak ini memiliki slogan "Easy cms for easy websites" dengan tujuan memudahkan Anda dalam menyampaikan informasi kepada masyarakat. Beberapa fitur dari EasyiiCMS diantaranya: Cepat (Fast engine), Mengubah informasi berita secara langsung (Live edit), mudah dan dibangun menggunakan platform Yii Framework 2.

Saturday, 17 August 2013

CMS MANAJEMEN SEKOLAH DASAR BERBASIS YII FRAMEWORK

Standard
ISIMS (Sistem Informasi Manajemen Sekolah Dasar) merupakan perangkat lunak untuk mengelola nilai siswa, absensi siswa, jurnal mengajar, kenaikan kelas dan monitoring pembelajaran. Perangkat lunak ini bersifat open source dan di bangun menggunakan YII Framework.

FEATURES
  • Manajemen Monitoring Pembelajaran
  • Pengaturan Website Dinamis
  • Manajemen Nilai dan Raport
  • Manajemen Jurnal Mengajar
  • Manajemen Kenaikan Kelas
  • Manajemen Absensi Siswa
  • Manajemen User
  • Kalkulator
REQUIREMENTS
  • Yii 1.13 or above
  • PHP 5.3 or above
  • PostGreSQL 8.1 or above
INSTALLATION
  • Download master yii framework (http://www.yiiframework.com/download/)
  • Ekstrak file master yii framework ke dalam webserver (Ex: localhost/yii/master/)
  • Ekstrak file isims dalam cd ke webserver (Ex: localhost/yii/isims/)
  • Buka File index pada main direktori isims
  • Ubah baris ke-4 menjadi $yii=dirname(__FILE__).'/../master/framework/yii.php';
  • Import database /isims/protected/data/isims-db.sql (PostGreSQL 8.1 or above)
  • Buka konfigurasi .../isims/protected/config/main.php
  • Ubah baris 111-121 sesuai kebutuhan
  • 'db'=>array( 'connectionString' => 'pgsql:host=localhost;port=5432;dbname=NAMA_DATABASE', 'emulatePrepare' => true, 'username' => 'USERNAME', 'password' => 'PASSWORD', 'charset' => 'utf8', 'enableProfiling'=>true, 'enableParamLogging' => true, 'schemaCachingDuration' => 180, ),
  • Buka Browser --> localhost/yii/isims/ atau www/yii/isims/
  • Website siap digunakan
USER MANAJEMEN
  • Admin (Username: ocim | Password: ocim)
TRY OUT DEMO
REPO
  • Github (Download) - Database No Include
DATABASE
Database Only (Apply via Google Form atau Telp. +6285742974933)
  • Harga : Rp 50.000,-
  • File Format : SQL (MySQL atau PostgreSQL)
  • Availability : Ready Stock
Full Packet (Apply via Google Form atau Telp. +6285742974933)
  • Harga : Rp 200.000,-
  • File Format : Aplikasi Full Version, Database, Ebook, Panduan Instalasi, Lisensi Jangka Panjang.
  • Availability : Ready Stock

Dapat melakukan pemesanan melalui Google Form dibawah

Sunday, 2 June 2013

YII FRAMEWORK 15 WEBSITE INDONESIA BERBASIS YII

Standard
Mungkin banyak orang awam beranggapan penggunaan Yii Framework masih sulit di gunakan karena documentnya belum lengkap dan masih terbatas. Dari situlah banyak orang awam pesimis bagaimana cara membuat website yii yang berkualitas. Disini saya akan memberikan contoh beberapa website yii framework buatan anak bangsa yang sudah berkualitas.

1. Website Dikti (DEMO)
Website milik pemerintah di bidang beasiswa pendidikan untuk jenjang sekolah menenganh menuju bangku kuliah ini sudah berbasis yii Framework.

Tuesday, 11 November 2014

Tips Belajar Yii Framework 2.0 Untuk Pemula

Standard
yii2-aimagu
Yes It Is atau lebih dikenal dengan sebuta yii merupakan salah satu framework yang menggunakan bahasa pemrograman PHP OOP yang berarti sederhana dan evolusi. Pada bulan Oktober 2014 yii telah meluncurkan framework versi 2.0 yang menggunakan PHP 5.4.0 keatas. Untuk anda yang tertarik belajar yii framework pada tahapan pemula berikut tips dari salah seorang master yii yaitu Hafid Mukhlasin, berikut tipsnya:
  1. Yii 2.0 itu PHP Framework, untuk menguasainya maka anda diharuskan menguasai PHP, yaitu dengan banyak belajar dan mencoba. Dengan kemampuan yang sedikit di PHP maka anda tidak bisa maksimal dalam membangun sebuah aplikasi.
  2. Yii 2.0 PHP 5.4, full OOP, anda dianjurkan untuk belajar OOP di PHP. Lebih baik lagi apabila anda pernah belajar Java atau Dot net, itu sangat membantu.
  3. Pemahaman yang baik tentang web technology lain seperti HTML, CSS, JS, Jquery, Json merupakan nilai tambah yang akan sangat membantu.
  4. Guide dari website Yii itu sudah lebih dari cukup, hanya kelemahan orang Indonesia adalah malas membaca (apabila tidak bisa bahasa inggris dianjurkan menggunakan google translate, walaupun proses translatenya belum sempurna)
Berikut ini pengalaman saya (Hafid Mukhlasin) belajar Yii2 setengah tahun ini:
  1. Berdoa (Wajib)
  2. Ambil Guru, guru saya banyak bertebaran di grup ini (Yii PHP Framework Indonesia), setiap orang baru yang kelihatannya menguasai sebagian ilmu Yii2 saya selalu izin mengambil ilmunya.
  3. Baca guide dengan baik, tidak perlu semua bagian dibaca, cukup pokok atau intinya saja. Asal bisa install dan topik terpenting adalah sistem CRUD, selebihnya bisa dipelajari sambil jalan.
  4. Siklusnya Baca => Coba => Gugling => Tanya Master/Forum => Problem Solving.
  5. Masuk ke zona yang tidak nyaman, pelajari apa yang kita duga materi paling sulit. 
  6. Usahakan sharing apa yang anda fahami, jangan malu jangan pelit, karena memberi itu pasti mendapat yang lebih banyak (ini rahasianya dan cara ini sangat cepat melejitkan kemampuan kita). Sharing Tulisan (Saya sering kan? Ini cara saya mempercepat pemahaman saya), Sharing Code, membuat extension, dll
  7. Buat kondisi dimana anda terpaksa belajar cepat dan banyak misal menerima project dari client.

Anda dapat bergabung dengan grup YII Framework Indonesia dengan menekan link "Gabung"

Tuesday, 23 December 2014

Tema Gratis YII Framework

Standard
Hebo! Free Responsive Yii Framework and HTML5 theme
Merupakan themes responsive yang cocok untuk website portfolio dan portal. Banyak programer yang menggunakan themes yii yang satu ini karena memiliki banyak fitur yang disediakan, diantara fitur tersebut yaitu Responsive design makes it look good on every device, HTML5 version, Yii Framework version, PHP version, Styles switcher, Powered on Bootstrap, Over 3000 Icons, jQuery enhanced, 6 Homepage styles, 6 Color variations, 2 different blog layouts, Nivo slider, Flexislider2, Carousal, Fancybox (Responsive Lightbox), Pricing Tables, CSS Dropdown Menu, 16 HTML pages, Sidebar Left/Right.

Abound – Responsive Yii Framework Theme theme

Abound themes yii merupakan tema responsive yang cocok untuk mengelola halaman administrator. Tema ini memiliki banyak fitur diantaranya Graphs & Charts, forms, table, interface dan typography, Tema ini juga menggunakan modul dari bootstrap.

Shadow Dancer – Yii Framework Theme

Shadow themes yii merupakan tema responsive yang cocok untuk mengelola halaman backend. Tema ini memiliki beberapa fitur yang sangat umum digunakan oleh pengguna diantaranya: memiliki 1400 icons, Blueprint CSS Framework, Amazing charts and graphs, Multiple widget styles, Easy theming for CGridview, Pretty dropdown menu, Upto 5000 button variations, fullCalendar support.

AdminLTE -Yii 2 Framework Theme
AdminLTE merupakan themes yii2 yamg menggunakan fitur bootsrap. Halaman backend ini menyediakan banyak fitur yang bisa anda gunakan secara cuma-cuma (gratis). Beberapa fitur dari adminLTE yaitu Dashboard, Mailbox, Calendar, Invoice, Lockscreen, Login, Register, 404 Error, 500 Error, Blank page, Boostrap Slider, Icon slider, Bootstrap WYSIHTML5, CKEditor, Bootstrap Colorpicker, Bootstrap Date range Picker, Bootstrap Time Picker, Data Tables, Flot, Morris.js Sparkilne, Full Calendar, iCheck, jQuery input mask, jQuery Knob, jVector Map, Slim Scroll Pace.

Wednesday, 31 August 2016

Membuat Manajemen Pengguna Menggunakan Yii Framework (User Login)

Standard
Menurut Dave Kearns, 2004 dalam bukunya User Management and Provisioning memaparkan pengertian dari User Management adalah proses penambahan, mengubah, dan menghapus akun pengguna, sandi, otorisasi, dan atribut dari aplikasi, database, situs web, dan perangkat keras atau perangkat lunak lainnya. Jadi manajement pengguna merupakan proses mengelola menambah, mengubah dan menghapus akun yang memiliki sandi dan otorisasi / hak akses tersendiri. Berikut ini akan kami paparkan bagaimana cara membuat manajemen pengguna menggunakan framework Yii dan database MySQL.
Yang perlu disiapkan adalah packet XAMPP untuk proses membuat database di MySQL dan menjalankan program di web server apache. Langkah pertama buatlah database dengan nama "User" teridir dari atribut id_user (int/AI), username (varchar, 32), password (varchar, 32), level (int) seperti gambar berikut ini:
Kemudian buatlah projek Yii atau install yii menggunakan CLI seperti berikut ini:
1. Unduh framework Yii di laman official yiiframework.com kemudian pilih menu download. Pada tutorial ini menggunakan Yii versi 1.1.17
2. Ekstrak file zip yang telah anda unduh ke dalam direktori htdocs, apabila saat anda melakukan instalasi secara default maka direktori anda berada di C:/xampp/htdocs/. Buatlah folder bernama yii.
3. Buka Command Prompt pada windows anda atau bisa anda ketikkan Windows+R pada keyboard kemudian ketik "cmd" <Enter>.
4. Apabila command prompt telah terbuka, silahkan ketik c:\xampp\htdocs\yii\framework\yiic webapp c:\xampp\htdocs\userlogin lalu tekan <Enter>. Pastikan setelah anda menekan tombol enter muncul notifikasi <Yes|No>[no]: maka yang harus anda lakukan adalah mengetik ”y” pada keyboard kemudian tekan enter.
Bersambung ... .

Tuesday, 11 November 2014

Login dan Manajemen User YII Framework Siap Pakai

Standard
http://creationgears.com
Berikut ini lima extension terbaik mengenai autentifikasi dan manajemen user di yii framework. Extension ini bisa anda gunakan cuma-cuma alias gratis dengan lisensi dan aturan yang tersedia.
1. YII User (Demo | Download)
Extension ini dibuat oleh mishamx pada 12 Februari 2010 mendapatkan like 262 voters, diunduh sebanyak 61.927 kali dan sudah 7 kali revisi. YII User memiliki fitur diantaranya: Login from User, Name or Email, Registration, Activation accounts (verification email, administrator or not), Recovery password (send recovery key to user email), User profile page, Manage Users, Manage Profile Fields, Profile field widget for view, edit and save data, Date widget (jQueryUI datepicker), File upload widget, Profile Relation Widget, API.

2. YII Rights (DemoDownload)
Chris83 merupakan pembuat dari yii rights ini, orang yang sudah tidak asing lagi dalam dunia pemrograman. Orang ini terkenal sebagai pembuat bootstrap. Extension ini mendapatkan like 229 voters, diunduh sebanyak 47,756 kali dan sudah mengalami 2 kali revisi. Untuk revisi selanjutnya chris mengubah nama extensionnya menjadi yii auth. Diterbitkan pada 22 Juli 2010. Memiliki fitur: User interface optimized for usability, Role, task and operation management, View displaying each role's assigned tasks and operations, Assigning authorization items to users, Sorting of authorization items by dragging and dropping, Installer for easy and quick set up, Authorization item generation, Controller filter for checking access, Support for business rules (and data), Runtime caching to increase performance, Internationalization (I18N), Cross-browser and cross-database compatibility, Easy to extend.

3. SRBAC (Demo | Download)
Extension yang dibuat oleh Spyros ini terbit pada 5 Juli 2009 mendapatkan 71 like, diunduh sebanyak 33,865 kali dan mengalami perbaikan sebanyak 3 kali. Extension SRBAC memiliki fitur diantaranya: You can select if demo data will be created in install, All assignments calls are made in ajax, You can set the name of the Authorizer authItem, You can update the names of the auth Items, Delete authItems, Ajax based web interface for administrating auth items at index.php?r=srbac/authItem/manage, View Roles / Tasks / Operations assigned to users at index.php?r=srbac/authItem/assignments, Srbac can be installed as a child module too, Custom cssFile support, Custom layout for srbac (layout must be in default application's layout folder), Add ajax indicators, Spanish translation (Ricardo Obregon), Russian translation (idle sign), Added autocomplete textbox for searching in users assignments.

4. Auth (Demo | Download)
Extension lanjutan dari yii Rights dengan pembuat yang sama yaitu Chris83 rilis pada 29 Desember 2012 mendapatkan 67 like dan diunduh sebanyak 7814 kali sudah mengalami revisi sebanyak 10 kali. Fitur utama yang terlihat dari extension ini adalah penggabungan rights dengan bootstrap terlihat sangat responsive pada tampilannya.

5. Usergroups (Demo | Download)
Extension ini dibuat oleh Nickcv pada 24 Maret 2012 mendapatkan 52 like dan telah diunduh sebanyak 12775 kali. Fitur diantaranya: groups: let's you decide what group the user has to belong to perform an action, levels: you can decide what level the user needs to perform an action, permissions: you can decide that just users with a certain permission on that controller or another can perform a certain action

Monday, 10 November 2014

Membuat User Online di YII Framework

Standard
Pada posting ini akan saya paparkan bagaimana cara membuat user online pada yii framework. Fungsi dari user online adalah untuk mengetahui berapa user yang sedang aktif pada sistem informasi yang kita buat.
Berikut langkah membuat user online di yii framework:
1. Membuat user login
Anda bisa membuat user login sendiri atau menggunakan beberapa extension yang disediakan pada laman yii framework (rights, RBAC, yii user) atau bisa langsung klik LINK.
2. Extension DbHttpSession (UNDUH)
Silahkan mengunduh extension DbHttpSession kemudian ekstrak kedalam path: protected/components pada aplikasi anda.
3. Tambahkan code berikut ini pada component dalam file config/main.php

'session' => array (
  'class' => 'application.components.DbHttpSession',
  'connectionID' => 'db',
  'sessionTableName' => 'session',
  'userTableName' => 'user'
),
4. Tambahkan query berikut kedalam database anda. Query ini akan menambahkan field user_id, last_ip, last_activity pada tabel user anda. 

ALTER TABLE user ADD user_id INT(11) NOT NULL, ADD last_ip VARCHAR(100) NOT NULL, ADD last_activity DATETIME NOT NULL
5. Tambahkan method getOnlineUsers pada model user aplikasi protected/model/user.php

public static function getOnlineUsers()
    {
        $sql = "SELECT session.user_id, user.username FROM session LEFT JOIN user ON user.id=session.user_id";
        $command = Yii::app()->db->createCommand($sql);
 
        return $command->queryAll();
    }
6. Pada protected/view/site/index.php tambahkan kode berikut

foreach (User::getOnlineUsers() as $user) {
        echo $user["username"];
    }

Friday, 31 May 2013

YII FRAMEWORK URL REWRITER GOOD SEO!

Standard
Banyak orang awam jarang memikirkan fungsi dari url rewriter sebagai SEO website mereka. Ketika orang sudah membuat website di YII Framework maka yang mereka pikirkan adalah dimana dan bagaimana cara mempublish website tersebut agar di kenal orang bahkan dapat menghasilkan rupiah. Pemikiran ini wajar apabila di pikirkan oleh setiap orang sebab hal utama yang di cari adalah memang itu tanpa memikirkan kualitas SEO website yang mereka buat. Disini saya akan memaparkan bagaiman membuat URL rewriter yang GOOD SEO untuk website YII Framework. Kelebihan URL SEO ini di bandingkan dengan tutorial yang beredar di dunia maya adalah dapat membaca url dari primary key integer maupun string, Berikut langkah kerjanya:

Friday, 24 May 2013

YII Mencegah Input Redudance Data (Data Ganda/ Double)

Standard

Pernahkan anda menjumpai error duplicate key value violates unique pada yii seperti gambar diatas? Pesan error diatas menjelaskan bahwa dalam database sudah terdapat data dengan yang anda inputkan sekarang. Dengan syarat pesan ini muncul ketika field database merupakan primary key atau unique sehingga ketika data ke-2 yang di inputkan sama maka akan tampil pesan error tersebut. Saya contohkan apabila dalam database terdapat data nomor 123A pada field no_pendaftaran kemudian anda menginputkannya lagi dengan nomor yang sama yaitu 123A maka akan tampil pesan error tersebut. Berikut ini akan saya paparkan 3 buah cara untuk mencegah terjadinya data ganda/ double :
1. Penggunaan try-catch
Contoh codenya seperti berikut:
Dalam lingkup try bernilai benar sedangkan dalam catch adalah value error yang akan di tampilkan.
Script ini hanya menampung error dalam sebuah tampilan gui message flash saja. Cara ini kurang cantik bila di gunakan untuk validasi sebuah kriteria. Cara yang ke-2 ini adalah rekomendasi dari Muhammad Rifki Mockie agar validasi lebih baik dan lebih cantik sesuai prosedur dari doc yii framework. Berikut ini tips ke-2:
2. Penggunaan validasi dari Rule di Model
Step-1
Buatlah file proctected/components/CompositeUniqueKeyValidator.php
Kemudian isikan script seperti berikut ini:
<?php
/**
 * CompositeUniqueKeyValidator class file.
 */
class CompositeUniqueKeyValidator extends CValidator {
    /**
     * @var string comma separated columns that are unique key
     */
    public $keyColumns;
 
    public $errorMessage = '"{columns_labels}" are not unique';
 
    /**
     * @var boolean whether the error message should be added to all of the columns
     */
    public $addErrorToAllColumns = false;
 
    /**
     * @param CModel $object the object being validated
     * @param string $attribute if there is an validation error then error message
     * will be added to this property
     */
    protected function validateAttribute($object, $attribute) {
        $class = get_class($object);
        Yii::import($class);
        $keyColumns = explode(',', $this->keyColumns);
        if (count($keyColumns) == 1) {
            throw new CException('CUniqueValidator should be used instead');
        }
        $columnsLabels = $object->attributeLabels();
 
        $criteria = new CDbCriteria();
        $keyColumnsLabels = array();
        foreach ($keyColumns as &$column) {
            $column = trim($column);
            $criteria->compare($column, $object->$column);
            $keyColumnsLabels[] = $columnsLabels[$column];
        }
        unset($column);
        $criteria->limit = 1;
 
        if ($class::model()->count($criteria)) {
            $message = Yii::t('yii', $this->errorMessage, array(
                '{columns_labels}' => join(', ', $keyColumnsLabels)
            ));
            if ($this->addErrorToAllColumns) {
                foreach ($keyColumns as $column) {
                    $this->addError($object, $column, $message);
                }
            }
            else {
                $this->addError($object, $attribute, $message);
            }
        }
    }
}
?>
Step-2
Tambahkan validasi pada method rule di model anda:
<?php
public function rules(){
   return array(
   array('no_karyawan', 'CompositeUniqueKeyValidator', 'keyColumns' => 'no_karyawan, id_tempat'));
} ?>
Maksud dari rule ini adalah memvalidasi field no_karyawan dan id_tempat yang keduanya merupakan primary key agar menjadi field unique key.

3. Pengecekan database
Step 1 - Membuat coditional field apa yang ingin dicek, contohnya seperti kode program berikut:
$isExist = Mhs::model()->exists(
 array('condition'=>'nim = :nim',
 'params'=>array(
  ':nim'=>$_POST['NilaiKknPpl']['nim']
 ),
));
Kemudian buat kondisi untuk membaca kode program diatas. Yaitu seperti kode berikut ini:
if($isExist){
 //True atau ada dalam database
}else{
 //False atau tidak ada dalam database
}
Untuk saya pribadi lebih menganjurkan anda untuk memakai cara ke-3 karena langsung melakukan pengecekan pada database, apakah data sudah ada atau tidak. Cara pertama yaitu try... catch tidak cocok untuk pengecekan redudance data. Berbeda dengan cara kedua yang masih error dalam proses updatenya karena validasinya masih membaca primary key sebagai data yang sudah ada dalam database sehingga proses updatenya gagal walaupun proses createnya sudah oke dalam masalah validasi.

Monday, 17 November 2014

Yii2 Behaviour untuk Input Field Otomatis

Standard
Oleh: Hafid Mukhlasin
Mungkin sama dengan Yii 1 (I force forget it), Yii2 juga mengenalkan Behaviour pada Models.
Misal kita punya tabel activity (id, name, created_at [datetime], created_by, update_at[datetime], update_by) maka field created_at, created_by, update_at, update_by bisa diisi otomatis oleh aplikasi kita. Dua behaviours ini yang akan membantu kita.
use yii\behaviors\TimestampBehavior;
use yii\behaviors\BlameableBehavior;
Pada models, tambahakn function behaviours.
public function behaviors(){
return [
'timestamp' => [
'class' => TimestampBehavior::className(),
'attributes' => [
ActiveRecord::EVENT_BEFORE_INSERT => ['created','updated'],
ActiveRecord::EVENT_BEFORE_UPDATE => 'updated',
],
'value' => new Expression('NOW()'),
],
'blameable' => [
'class' => BlameableBehavior::className(),
'attributes' => [
ActiveRecord::EVENT_BEFORE_INSERT => ['created_by','updated_by'],
ActiveRecord::EVENT_BEFORE_UPDATE => 'updated_by',
],],];
}
Lalu pastikan pada models function rules, ke empat field tersebut tidak masuk dalam required.
public function rules()
{
return [
[['name'], 'required'],
...
}
Empat buat field yaitu field created_at, created_by, update_at, update_by tidak perlu diinputkan karena sudah otomatis input dari sistem jadi tidak memerlukan validasi.
Banyak orang yang mengalami permasalahan yaitu mengira kode yang dituliskan sudah benar tetapi ketika proses penyimpanan gagal. Solusinya anda dapat menampilkan kesalahan atau error ketika proses menyimpan, berikut contoh kode:
if($model->save()) {
Yii::$app->getSession()->setFlash('success', 'Data have updated.');
}
else{
$error = implode(', ',$model->errors);
Yii::$app->getSession()->setFlash('error', 'Data is not updated. Because '.$error);
}
Selamat berkreasi.

Monday, 26 May 2014

Membuat Barcode pada YII Framework dengan QR Code Generator

Standard

Bila kita mengunjungi suatu supermarket atau swalayan sering kita jumpai kode barcode ini pada kemasan suatu produk, dari yang kecil sampai yang besar memiliki kode barcode. Untuk mengetahui isi identitas dari produk tersebut (yang biasanya berbentuk angka) biasanya menggunakan mesin barcode.
Menurut salah satu sumber website wiki terkenal wikipedia menyatakan bahwa barcode atau kode batang adalah suatu kumpulan data optik yang dibaca mesin. Sebenarnya, kode batang ini mengumpulkan data dalam lebar (garis) dan spasi garis paralel dan dapat disebut sebagai kode batang atau simbologi linear atau 1D (1 dimensi). Tetapi juga memiliki bentuk persegi, titik, heksagon dan bentuk geometri lainnya di dalam gambar yang disebut kode matriks atau simbologi 2D (2 dimensi). Selain tak ada garis, sistem 2D sering juga disebut sebagai kode batang.
Dalam YII Framework sudah ada yang membuat extension barcode ini, tinggal kita menggunakannya saja. Ada 2 macam extension (Mei 2014) tentang barcode dalam yii framework salah satunya yaitu qr-code-generator. Extension ini bekerja pada yii versi 1.1 ke atas dan sangat mudah dalam penggunaanya.
Langkah pertama unduh extension tersebut pada alamat: http://www.yiiframework.com/extension/qr-code-generator kemudian ekstrak pada direktori protected/extensions/qrcode.

Sunday, 11 August 2013

Membuat Link Download Pada CgridView YII Framework

Standard
Dalam yii framework apa saja dapat di buat karena framework yang satu ini sudah support website 2.0 atau yang sering di sebut website pintar seperti google, facebook, dll. Salah satu hal yang penting dan sering di tanyakan oleh orang yang baru belajar pemrograman web yaitu bagaimana cara membuat link download seperti ilustrasi berikut ini:


Posting ini akan membahas bagaimana membuat link download (Unduh) pada cgridview. Bagaimana cara membuatnya? Mari kita bahas.
Apabila kita generate tabel menggunakan GII biasanya kita dapat menjumpai cgridview pada app/protected/view/admin.php seperti contoh script berikut ini:

<?php widget('bootstrap.widgets.TbGridView',array(
 'dataProvider'=>$model->search(),
 'filter'=>$model,
 'columns'=>array(
  'id_dosen',  
  'nama',  
  'profil',  
  'file'
  array(
   'class'=>'bootstrap.widgets.TbButtonColumn',
  ),
 ),

)); ?>
Secara default isi cgridview apabila menggunakan extension bootstrap adalah seperti script di atas. Apabila kita ingin menambahkan link download  pada cgridview tersebut maka kita ubah script menjadi seperti berikut ini:

<?php widget('bootstrap.widgets.TbGridView',array( 
 'id'=>'nondosen-grid', 
 'dataProvider'=>$model->search(), 
 'filter'=>$model, 
 'columns'=>array(  
  'id_dosen',  
  'nama',  
  'profil',  
  array(      
   'class'=>'CLinkColumn',      
   'header'=>'File',      
   'urlExpression'=>'Yii::app()->request->baseUrl."/files/".$data->file',      
   'label'=>'Unduh',  
  ),  
  array(   
  'class'=>'bootstrap.widgets.TbButtonColumn',  
  ), 
 ),
)); ?>
Perhatikan bagian script yang di cetak tebal. Apabila kita ingin menambahkan link download yaitu harus menambahkan 'urlExpression' dengan tujuan file yaitu letak direktori file paling luar (Yii::app()->request->baseUrl) di tambah nama file tersebut ($data->file) kemudian nama link tersebut kita pasang tulisan unduh seperti gambar berikut ini:
Cukup mudah bukan. Selamat Mencoba

Monday, 5 August 2013

Page Caching Pada YII Framework

Standard
Sumber Gambar: http://microsoft.com
Dalam laman resmi yii di http://yiiframework.com memberikan review tentang page caching. Sebenarnya apa itu page caching dan apakah fungsinya? Berikut gambaran tentang page caching atau penembolokan halaman.
Penembolokan halaman merujuk pada caching isi seluruh halaman. Penembolokan halaman bisa terjadi di berbagai tempat. Misalnya, dengan memilih tajuk halaman(page header) yang sesuai, penjelajah klien(client browser) mungkin menembolok halaman yang sedang dilihat untuk jangka waktu tertentu. Aplikasi Web sendiri juga dapat menyimpan isi halaman dalam cache. Dalam subbab ini, fokus kita pada pendekatan ini.
Penembolokan halaman bisa dipertimbangkan sebagai kasus khusus caching fragmen. Karena isi halaman sering dihasilkan dari dari penerapan tata letak(layout) pada sebuah tampilan, caching halaman tidak akan berfungsi jika kita hanya memanggil beginCache() dan endCache() dalam tata letak. Alasannya dikarenakan tata letak diterapkan dalam metode CController::render() SETELAH tampilan konten dievaluasi.
Untuk menembolok seluruh halaman, kita harus melewatkan eksekusi aksi penghasil isi halaman. Kita bisa menggunakan COutputCache sebagai aksi filter untuk menyelesaikan tugas ini. Kode berikut akan memperlihatkan bagaimana kita mengkonfigurasi filter cache:

public function filters(){
    return array(
        array(
            'COutputCache',
            'duration'=>100,
            'varyByParam'=>array('id'),
        ),
    );
}
Konfigurasi filter di atas akan menjadikan filter diterapkan ke semua aksi dalam controller. Kita dapat membatasinya ke satu atau beberapa aksi hanya dengan menggunakan operator plus. Lebih jelasnya bisa ditemukan dalam filter.
Tip: Kita dapat menggunakan COutputCache sebagai filter karena kelas tersebut diturunkan dari CFilterWidget, yang artinya COutputCache dapat berupa widget dan juga filter. Sebenarnya, cara kerja widget mirip dengan filter: widget (filter) dimulai sebelum isi yang dilampirkan (aksi) dievaluasi, dan widget (filter) berakhir setelah isi yang dilampirkan (aksi) dievaluasi.
Kesimpulan:
Yii punya beberapa level cache, dari db cache, fragment cache sampe full cache.
Jika anda punya halaman index (actionIndex) di controller tertentu yang contentnya dinamis (diambil dari database) tapi tidak sering2 diupdate, gunakan full page cache di controller-nya (Peter Jack Kambey, 2013)

Monday, 14 July 2014

Set Value dari Pilihan Dialog Pada YII Framework

Standard
Pernahkan anda menjumpai permasalahan saat menginputkan data pada suatu text dengan ketentuan data itu harus benar berasal dari tabel tertentu? Kemudian dengan cara apa anda menyikapi permasalahan seperti ini? Menggunakan dropdownlist atau autocomplete? Benar, itu merupakan salah satu jalan keluar yang baik tetapi pernahkan anda berfikir apabila data dalam tabel tersebut ada ribuan? Tentu saja akan memusingkan apabila harus memilih data yang ribuan tersebut dalam suatu inputan dropdownlist.
Beberapa tutorial dalam wiki Yii Framework membuat panduan berupa select data dari kotak dialog yang didalamnya itu nanti muncul data dari tabel lain dan terdapat suatu inputan pencarian. Pada contoh berikut ini saya akan membuat tutorial dengan studi kasus aplikasi jurnal dengan data tabel master Dosen sebagai pelaku yang mengisikan data pada aplikasi jurnal tersebut. Berikut ini langkah pembuatannya:
Buatlah form yang terdiri dari textfield NIDN, Nama dan Program Studi seperti pada gambar berikut:

Kemudian buatlah tombol "ubah" untuk memunculkan data tabel dosen dalam dialog seperti pada gambar diatas.
Apabila data Dosen berasal dari tabel yang lain yaitu tabel dosen maka renderlah model tersebut. Contoh disini saya akan merender model dosen dalam action create sebagai berikut:
<?php public function actionCreate()
 {
  $model=new Jurnal;
  $model2=new Dosen('search');
  $model2->unsetAttributes();
  if(isset($_GET['Dosen']))
   $model2->attributes=$_GET['Dosen'];
  if(isset($_POST['Jurnal']))
  {
   $model->attributes=$_POST['Jurnal'];
   $model->save();
  }

  $this->render('create',array(
   'model'=>$model,
   'model2'=>$model2,
  ));
 }
?>
Kemudian pada file protected/view/jurnal/_form.php buatlah form dialog yang berasal dari model dosen sebagai berikut:
<?php 
    $this->beginWidget('zii.widgets.jui.CJuiDialog',array(
 //Nama selector/id
    'id'=>'mydialog',
    // additional javascript options for the dialog plugin
    'options'=>array(
        'title'=>'Klik tanda <code>+</code> untuk memilih NIDN!',
        'autoOpen'=>false,
  //Fokus atau modal diaktifkan
  'modal' => true,
     'show'=>array(
       'effect'=>'blind',
       'duration'=>1000,
       ),
     'hide'=>array(
       'effect'=>'explode',
       'duration'=>500,
     ),
  'width' => 640, 
  'height' => 480
    ),
));?>
<?php $this->widget('bootstrap.widgets.TbGridView',array(
 'id'=>'dosen-grid',
 'dataProvider'=>$model2->search(),
 'type'=>'striped bordered condensed',
 'filter'=>$model2,
 'columns'=>array(
  array(
   'name'=>'nidn',
   'filter'=> CHtml::activeTextField($model2, 'nidn', array('placeholder'=>'Cari NIDN dosen')),
  ),
  array(
   'name'=>'nama',
   'filter'=> CHtml::activeTextField($model2, 'nama', array('placeholder'=>'Cari nama dosen')),
  ),
  array(
          'name'=>'program_studi',
          'type'=>'raw',
    'filter'=>CHtml::listData(Dosen::model()->findAll(array(
    'distinct' => true,
    'order' => 'program_studi ASC'
   )), 'program_studi', 'program_studi'),
        ),
  array(
    'header'=>'PILIH',
    'type'=>'raw',
    'value'=>'CHtml::Button(
          "+"
          , array(
    "class" => "btn submit"
          , "id" => "get_link"
          , "onClick" => "$(\"#mydialog\").dialog(\"close\");$(\"#Jurnal_nidn \").val(\"". $data->nidn."\");
    $(\"#Dosen_nama \").val(\"". $data->nama."\");
    $(\"#Dosen_program_studi \").val(\"". $data->program_studi."\");
    "))',
  ),
 ),
)); ?>
<?php $this->endWidget('zii.widgets.jui.CJuiDialog'); ?>
Pada source code diatas merupakan code untuk membuat pilihan dialog data dari dosen kemudian apabila user sudah memilih salah satu data maka otomatis langsung mengset textfield NIDN, Nama dan Program Studi seperti pada gambar berikut ini:
Setelah button [+] di pilih maka akan menset textfield sebagai berikut ini:
Pada textfield NIDN terdapat button "ubah" source codenya sebagai berikut:
<?php echo $form->textFieldRow($model, 'nidn', array('disabled'=>true, 'class'=>'span2', 'hint' => '<i class="text-info" id="nidn">Klik <a href="#" onclick=$("#mydialog").dialog("open"); return false;><code>ubah</code></a> untuk memilih NIDN.</i>')); ?>
Pada textfield NIDN dipasang action onclick bernama #mydialog untuk menampilkan dialog tersebut.

Apabila muncul pesan error "Undefined variable: model2" maka definisikan model2 dalam file create.php di folder protected/view/jurnal/create.php

Pada contoh ini menggunakan struktur tabel sebagai berikut:

Live Demo

Pastikan anda menggunakan extension bootstrap atau booster.

Copyright © AIMAGU. Jasa Pembuatan Website. All Rights Reserved
Design by Automattic | Blogger Theme by NewBloggerThemes | Official: www.aimagu.com