http://www.symfony-project.org/
Symfony makanan apa sih?
Bagi yang belom tahu pasti bingung, symfony adalah sebuah framework bagi bahasa pemrograman PHP yang mendukung konsep Model View Controller (MVC)
Nah loh bahasa apa lagi tuh MVC ,framework, PHP ….kalo yang belom tahu PHP, gw silahkan berwiki ria ..heheh.. kepanjangan bow kalo dijelasin disini, yang pasti PHP itu bahasa pemrograman berbasis web, MVC itu adalah skeleton/rangka dari suatu project, dan MVC itu konsepnya.. ocree kita mulai
Hal pertama yang harus dilakukan adalah kita download symfonynya disini nihh
Download
setelah download,di ekstrak yah jadi folder namanya symfony
Kemudian kita taruh di folder htdocs atau folder www di mesin webserver kita, bisa pakai WAMPP atau XAMPP
Di tutorial ini saya menggunakan XAMPP
Diasumsikan xampp sudah ter-install yah..
Kemudian kita setting environment variabel supaya command php terbaca di command prompt, caranya adalah:
start->mycomputer(klik kanan)->properties->advanced->environment variables kemudian tambahkan di variabel CLASSPATH, path dari php.exe , seprti contoh c:/xampp/php, pemisah dengan path lain menggunakan “;”.
Setelah setting variabel kemudian restart
*Ambil kopi, tahu goreng, santai sejenakk…..
Setalah komputer nyala
Untuk cek apakah php symfony sudah berjalan, buka cmd, kemudian ketikkan perintah didalam folder symfony :”php symfony” kalau sudah benar instalasinya , akan memunculkan informasi
-Fase instalasi selesai-
Kemudian fase membuat program
Disini kita akan mencoba membuat program sederhana yaitu input , retrieve, edit,data karyawan pom bensin
Akan kita kasi nama projectnya pom
required:
- xampp
- folder symfony yang terletak pada folder htdocs
Step 1
Buat folder di htdocs dengan nama pom
Step 2
*Generate project named pom
C:\xampp\htdocs\pom>php ../symfony/data/bin/symfony generate:project pom
>> dir+ C:\xampp\htdocs\pom\apps
>> dir+ C:\xampp\htdocs\pom\cache
>> dir+ C:\xampp\htdocs\pom\config
>> file+ C:\xampp\htdocs\pom\config/databases.yml
>> file+ C:\xampp\htdocs\pom\config/ProjectConfiguration.class.php
>> file+ C:\xampp\htdocs\pom\config/propel.ini
>> file+ C:\xampp\htdocs\pom\config/properties.ini
>> file+ C:\xampp\htdocs\pom\config/rsync_exclude.txt
>> file+ C:\xampp\htdocs\pom\config/schema.yml
>> file+ C:\xampp\htdocs\pom\config/vhost.sample
>> dir+ C:\xampp\htdocs\pom\data
>> dir+ C:\xampp\htdocs\pom\data/fixtures
>> file+ C:\xampp\htdocs\pom\data/fixtures/fixtures.yml
>> dir+ C:\xampp\htdocs\pom\doc
>> dir+ C:\xampp\htdocs\pom\lib
>> dir+ C:\xampp\htdocs\pom\log
>> dir+ C:\xampp\htdocs\pom\plugins
>> file+ C:\xampp\htdocs\pom\symfony
>> dir+ C:\xampp\htdocs\pom\test
>> dir+ C:\xampp\htdocs\pom\test/bootstrap
>> file+ C:\xampp\htdocs\pom\test/bootstrap/functional.php
>> file+ C:\xampp\htdocs\pom\test/bootstrap/unit.php
>> dir+ C:\xampp\htdocs\pom\test/functional
>> dir+ C:\xampp\htdocs\pom\test/unit
>> dir+ C:\xampp\htdocs\pom\web
>> file+ C:\xampp\htdocs\pom\web/.htaccess
>> dir+ C:\xampp\htdocs\pom\web/css
>> file+ C:\xampp\htdocs\pom\web/css/main.css
>> dir+ C:\xampp\htdocs\pom\web/images
>> dir+ C:\xampp\htdocs\pom\web/js
>> file+ C:\xampp\htdocs\pom\web/robots.txt
>> dir+ C:\xampp\htdocs\pom\web/uploads
>> dir+ C:\xampp\htdocs\pom\web/uploads/assets
>> tokens C:/xampp/htdocs/pom/config/databases.yml
>> tokens C:/xampp/htdocs/pom/config/propel.ini
>> tokens C:/xampp/htdocs/pom/config/properties.ini
>> tokens C:\xampp\htdocs\pom\config/ProjectConfiguration.class.php
>> tokens C:\xampp\htdocs\pom\config/vhost.sample
>> chmod 777 C:\xampp\htdocs\pom\web\uploads
>> chmod 777 C:\xampp\htdocs\pom\cache
>> chmod 777 C:\xampp\htdocs\pom\log
>> chmod 777 C:\xampp\htdocs\pom\symfony
>> chmod 777 C:/xampp/htdocs/pom/web/uploads/assets
Untuk membuat frontend:
C:\xampp\htdocs\pom>php symfony generate:app –escaping-strategy=on–csrf-secret
=UniqueSecret frontend
>> dir+ C:\xampp\htdocs\pom\apps/frontend\config
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/app.yml
>> file+ C:\xampp\htdocs\pom\apps/fronte…licationConfiguration.class.php
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/cache.yml
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/factories.yml
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/filters.yml
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/routing.yml
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/security.yml
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/settings.yml
>> file+ C:\xampp\htdocs\pom\apps/frontend\config/view.yml
>> dir+ C:\xampp\htdocs\pom\apps/frontend\i18n
>> dir+ C:\xampp\htdocs\pom\apps/frontend\lib
>> file+ C:\xampp\htdocs\pom\apps/frontend\lib/myUser.class.php
>> dir+ C:\xampp\htdocs\pom\apps/frontend\modules
>> dir+ C:\xampp\htdocs\pom\apps/frontend\templates
>> file+ C:\xampp\htdocs\pom\apps/frontend\templates/layout.php
>> tokens C:/xampp/htdocs/pom/apps/frontend/config/settings.yml
>> file+ C:\xampp\htdocs\pom\web/index.php
>> file+ C:\xampp\htdocs\pom\web/frontend_dev.php
>> tokens C:\xampp\htdocs\pom\web/index.php
>> tokens C:\xampp\htdocs\pom\web/frontend_dev.php
>> rename C:\xampp\htdocs\pom\apps/fronte…frontendConfiguration.class.php
>> tokens C:\xampp\htdocs\pom\apps/fronte…frontendConfiguration.class.php
>> chmod 777 C:\xampp\htdocs\pom\web\uploads
>> chmod 777 C:\xampp\htdocs\pom\cache
>> chmod 777 C:\xampp\htdocs\pom\log
>> chmod 777 C:\xampp\htdocs\pom\symfony
>> chmod 666 C:/xampp/htdocs/pom/cache/project_autoload.cache
>> chmod 777 C:/xampp/htdocs/pom/web/uploads/assets
>> dir+ C:\xampp\htdocs\pom\test/functional/frontend
*Kemudian restart APACHE
Kemudian setting data basenya dengan command
*php symfony configure:database “mysql:host=localhost;dbname=pom” root
Setelah itu kita cari file dengan nama schema.yml
Disitu merupakan tempat untuk membuat table database pada mysql
*kemudian kita edit
propel:
karyawan:
id: { type: varchar(10), required: true, primaryKey: true }
nama: { type: varchar(100), required: true }
alamat: { type: varchar(100), required: true }
no_telp: { type: varchar(10), required: true }
posisi: { type: varchar(100), required: true }
Kemudian Save
ketikkan perintah :
php symfony configure:database “mysql:host=localhost;dbname=pom” root masih tetap pada folder pom
*selanjutnya:
php symfony propel:build-sql
itu berguna untuk membuat table2x pada database pom, sesuai dengan yang tertera di file schma.xml
php symfony propel:build-model
Untuk membuat model-nya
php symfony propel:insert-sql
Untuk insert sql (akan ada peringatan apabila command ini dijalankan akan menghapus record database yang ada)
php symfony propel:build-forms
untuk membuat forms
php symfony cc
untuk clear cache
php symfony propel:generate-module –with-show –non-verbose-templates frontend karyawan Karyawan
untuk membuat module Karyawan dimana kita akan melakukan coding di folder tersebut
-Fase create project selesai-
Setelah fase diatas selesai
maka di folder project akan tercipta modul karyawan, dimana kita melakukan pemrograman web
dapat di akses di htdocs\pom\apps\frontend\modules\
Disitu apabila kita create banyak module akan tersedia module2x yang sudah kita create
Pada contoh ini kita hanya membuat satu module yaitu module karyawan, kita masuk ke module karyawan
di dalam folder karyawan akan terdapat dua folder yaitu action dan template
folder action terdapat satu file yagn bernama action, dimana file tersebut berguna untuk menjalankan fungsi2x yang sudah ditentukan, seperti fungsi CRUD yaitu Create, Retrieve, Update and Delete
sedangkan folder template berguna untuk mengatur tampilan web interface yang akan dijalankan sesuai dengan function yang sudah didefinisikan di action
Akan dilanjutkan di posting jilid keduapemrograman symfony