Monday, October 24, 2016

Coffee Machine

#include <stdio.h>
#include <string.h>
#include <assert.h>

// We make Selection a class:
// Provides conversions to and from ints and strings.
class Selection
{
public:
enum {BLACK, WHITE, SWEET, BOTH, BOUILLION, NUM_SELECT};
Selection(int c)
{
assert(0 <= c && c < NUM_SELECT);
choice = c; }
Selection(const char* s)
{
for (int i = 0; i < NUM_SELECT; ++i)
if (strcmp(text[i], s) == 0)
{
choice = i;
return;
}
throw "Selection: Tidak ada dalam pilihan";
}
const char* toString() const {return text[choice];}
int priceOf() const {return price[choice];}
operator int() const {return choice;}

private:
int choice;
static int price[NUM_SELECT];
static const char* text[NUM_SELECT];
};

// Static data for Selection class:
int Selection::price[Selection::NUM_SELECT] = {35,35,35,35,25};
const char* Selection::text[Selection::NUM_SELECT] =
{
"black", "white", "sweet", "both", "boullion"
};

// CashBox class:
// Tracks the amount of credit.
class CashBox
{
public:
CashBox() {credit = 0;}
void deposit(int amount)
{
credit += amount; printf("\tCashBox: Depositing %d cents.",amount);
printf("\tYou now have %d cents credit.\n",credit);
}
void returnCoins()
{
printf("\tCashBox: Returning %d cents\n",credit);
credit = 0;
}
bool haveYou(int amount) const {return credit >= amount;}
void deduct(int amount)
{
credit -= amount;
returnCoins();
}
private:
int credit;
};

// Mixer class:
// Doesn't do much!
class Mixer
{
public: void make(const Selection& s)
{
printf("\tMixer: Membuat %s\n", s.toString()); }
};

// Selector class:
// Checks credit; Dispenses product.
class Selector
{
public:
Selector(CashBox* pC, Mixer* pM)
{
pCashBox = pC;
pMixer = pM;
}
void select(const Selection& s)
{
int amount = s.priceOf();
if (pCashBox->haveYou(amount))
{
pMixer->make(s);
pCashBox->deduct(amount);
}
else puts("\tSelector: Uang anda tidak mencukupi");
}
private:
CashBox* pCashBox;
Mixer* pMixer;
};
// CoffeeMachine class:
// Owns CashBox, Mixer, and Selector.
class CoffeeMachine
{ public: CoffeeMachine()
{
pCashBox = new CashBox;
pMixer = new Mixer;
pSelector = new Selector(pCashBox, pMixer);
}
bool doOneAction()
{
// Reads commands and executes them.
char line[16]; if (gets(line)) { char action[7];
sscanf(line, "%s", action);
if (strcmp(action, "insert") == 0)
{
int value;
sscanf(line, "%*s %d", &value);
pCashBox->deposit(value);
}
else if (strcmp(action,"select") == 0)
{
char choice[9];
sscanf(line, "%*s %s", choice);
pSelector->select(choice); }
else if (strcmp(action,"quit") == 0)
return false; return true;
}
else return false;
}
private:
CashBox* pCashBox;
Mixer* pMixer;
Selector* pSelector;
};
// Test program
main()
{
try
{ CoffeeMachine cm; while (cm.doOneAction()); }
catch (const char* s)
{
puts(s);
}
return 0;
}








ref : http://heim.ifi.uio.no/~mmo/generic/papers/coffee/Coffee-1.html

Monday, September 26, 2016

Use Case Diagram ATM dan Sequence



Di atas merupakan contoh Use Case Diagram sederhana dari sebuah ATM. 
sumber: ppt ppl tahun lalu & google

System Startup : 
Mesin atm sudah connect ke bank dan nasabah dapat memakai mesin tsb.

System Shutdown :
Sistem akan dimatikan ketika operator sudah memastikan bahwasanya tidak ada lagi nasabah yang menggunakan mesin ATM


Login : Di mana nasabah harus memasukkan kartu atm dan pin untuk nantinya terhubung ke session

Session  : 
Setelah kartu ATM berhasil dibaca dan nasabah memasukkan PIN maka akan muncul pesan INVALID PIN jika pin yang dimasukkan salah dan akan lanjut ke Transaksi

Transaksi : 
Transaksi yang dilakukan berupa Informasi Saldo,Transfer,Pembayaran,Tarik Tunai,dan Ganti PIN

Informasi Saldo :
informasi saldo merupakan suatu informasi pada rekening seorang nasabah terkait saldo yang ia miliki. 

Transfer : 
pada transaksi transfer terbagi menjadi dua yaitu transfer antar sesama bank atau transfer beda bank, jika transfer berbeda bank maka perlu dimasukkan kode bank
tujuan dan apabila tujuan nya antar sesama bank maka tidak perlu memasukkan kode bank, cukup memasukkan no rekening tujuan saja.

Pembayaran : 
terdapat beberapa menu lagi diantaranya (pembayaran tiket, voucher telpon, pendidikan, dll) silahkan memilih salah satu menu
yang tersedia pada menu pembayran, dan ketika transaksi selesai maka mesin akan mencetak nota sebagai bukti transaksi.

Tarik tunai  :  
proses untuk menarik uang, biasanya pada menu tampilan utama sudah tersedia jumlah uang yang ingin ditarik (100 ribu, 300 ribu, 1.5 juta)


Ganti pin : 
untuk mengganti PIN ATM sebelumnya kan dimintai memasukkan PIN yang lama untuk verifikasi lalu baru bisa mengubah menjadi PIN baru


Jika ditelusuri lebih lanjut sequencenya maka akan menjadi seperti ini :

System Startup :



Saat system startup maka operator akan menyalakan ATM kemudian sistem ATM bertugas mengambil data tunai nasabah tersebut sehingga harus melakukan koneksi ke Bank untuk mengambil datanya.

System Shutdown:

Operator mematikan mesin ATM dan juga meng-terminate koneksi ATM tersebut dengan Bank

Login dan Session :
session
Pada saat login, setelah kartu ATM dimasukkan maka nasabah diharuskan memasukkan PIN untuk lanjnut ke Session. Setelah PIN terbaca masuk ke Session maka nasabah baru bisa melakukan transaksi. Nasabah bisa melakukan transaksi lebih dari sekali, jika tidak maka kartu langsung dapat dikeluarkan

Transaksi :

Proses transaksi dapat dilakukan saat dapat pesan yang spesifik untuk melakukan proses selanjutnya dari nasabah lalu ATM akan menampilkan saldo yang diambil dari data Bank setelah nasabah melakukan transaksi yang terakhir dan mencetak resi. Kemudian yang terakhir, proses ini dapat diulang berkali-kali jadi nanti akan muncul pesan "ingin melakukan transaksi lain" "iya atau tidak". Jika Ya, maka nasabah dapat melakukan transaksi lain, jika Tidak, maka kartu akan dikeluarkan.


Tuesday, September 13, 2016

Use Case Diagram Air Conditioner

Use Case Diagram adalah salah satu contoh dari Unified Modelling Language atau disebut UML yang saat ini sedang kita pelajari.

Use Case Diagram sendiri berfungsi untuk menggambarkan suatu interaksi antara satu atau lebih aktor dengan suatu sistem yang akan dibuat.

Kali ini, kita akan menggunakan contoh Air Conditioner

Kira-kira ada 6 interaksi yang bisa terjadi pada ac umumnya dengan menggunakan remote control.

Friday, May 13, 2016

CI dengan Grocery Crud

Setelah kemarin sudah mencoba membuat web dengan Code Igniter, sekarang kita akan menggunakan plugin bernama Grocery Crud.

1. Pertama, download Grocery Crud di sini http://www.grocerycrud.com/downloads
pilih yang latest version saja.
Kemudian pindahkan satu-satu filenya sesuai dengan foldernya ke dalam folder web localhost yang diinginkan.

website_folder/ 
–––– application/ 
–––––––– config/ 
–––––––––––– autoload.php 
–––––––––––– ... 
–––––––––––– doctypes.php 
–––––––––––– foreign_chars.php 
–––––––––––– grocery_crud.php 
–––––––––––– ... 
–––––––– controllers/ 
–––––––––––– examples.php 
–––––––––––– index.html 
–––––––––––– welcome.php 
–––––––– libraries/ 
–––––––––––– grocery_crud.php 
–––––––––––– index.html 
–––––––– models/ 
–––––––––––– grocery_crud_model.php 
–––––––––––– index.html 
–––––––– views/ 
–––––––––––– example.php 
–––––––––––– index.html 
–––––––––––– welcome_message.php 
–––– assets/ 
–––––––– grocery_crud/ 
–––––––––––– css/ 
–––––––––––– js/ 
–––––––––––– texteditor/ 
–––––––––––– themes/ 
–––––––– uploads/ 
–––––––– index.html 

–––– system/ 
–––– user_guide/ 
–––– change_log.txt 
–––– example_database.sql 
–––– index.php 
–––– licence-grocery-crud.txt 
–––– license.txt

2. lalu pada database.php ubahlah sesuai nama dbms
 
$active_group = 'default';  
 $query_builder = TRUE;  
 $db['default'] = array(  
      'dsn'     => '',  
      'hostname' => 'localhost',  
      'username' => 'root',  
      'password' => '',  
      'database' => 'employees',  
      'dbdriver' => 'mysqli',  
      'dbprefix' => '',  
      'pconnect' => FALSE,  
      'db_debug' => (ENVIRONMENT !== 'production'),  
      'cache_on' => FALSE,  
      'cachedir' => '',  
      'char_set' => 'utf8',  
      'dbcollat' => 'utf8_general_ci',  
      'swap_pre' => '',  
      'encrypt' => FALSE,  
      'compress' => FALSE,  
      'stricton' => FALSE,  
      'failover' => array(),  
      'save_queries' => TRUE  

3. lalu buat controller baru pada folder controller
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');  
 class Main extends CI_Controller {  
   function __construct()  
   {  
     parent::__construct();  
     $this->load->database();  
   }  
   public function index()  
   {  
     echo "<h1>Hello World</h1>";  
     die();  
   }  
 }>

Nanti hasilnya akan keluar tulisan Hello World pada layar localhost

4.Kemudian buat tabel pada database
CREATE TABLE IF NOT EXISTS `employees` (  
  `employeeNumber` int(11) NOT NULL AUTO_INCREMENT,  
  `lastName` varchar(50) NOT NULL,  
  `firstName` varchar(50) NOT NULL,  
  `extension` varchar(10) NOT NULL,  
  `email` varchar(100) NOT NULL,  
  `officeCode` varchar(10) NOT NULL,  
  `file_url` varchar(250) CHARACTER SET utf8 NOT NULL,  
  `jobTitle` varchar(50) NOT NULL,  
  PRIMARY KEY (`employeeNumber`)  
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1703 ;  
 INSERT INTO `employees` (`employeeNumber`, `lastName`, `firstName`, `extension`, `email`, `officeCode`, `file_url`, `jobTitle`) VALUES  
 (1002, 'Murphy', 'Diane', 'x5800', 'dmurphy@classicmodelcars.com', '1', '', 'President'),  
 (1056, 'Patterson', 'Mary', 'x4611', 'mpatterso@classicmodelcars.com', '1', '', 'VP Sales'),  
 (1076, 'Firrelli', 'Jeff', 'x9273', 'jfirrelli@classicmodelcars.com', '1', '', 'VP Marketing'),  
 (1088, 'Patterson', 'William', 'x4871', 'wpatterson@classicmodelcars.com', '6', '', 'Sales Manager (APAC)'),  
 (1102, 'Bondur', 'Gerard', 'x5408', 'gbondur@classicmodelcars.com', '4', 'pdftest.pdf', 'Sale Manager (EMEA)'),  
 (1143, 'Bow', 'Anthony', 'x5428', 'abow@classicmodelcars.com', '1', '', 'Sales Manager (NA)'),  
 (1165, 'Jennings', 'Leslie', 'x3291', 'ljennings@classicmodelcars.com', '1', '', 'Sales Rep'),  
 (1166, 'Thompson', 'Leslie', 'x4065', 'lthompson@classicmodelcars.com', '1', '', 'Sales Rep'),  
 (1188, 'Firrelli', 'Julie', 'x2173', 'jfirrelli@classicmodelcars.com', '2', 'test-2.pdf', 'Sales Rep'),  
 (1216, 'Patterson', 'Steve', 'x4334', 'spatterson@classicmodelcars.com', '2', '', 'Sales Rep'),  
 (1286, 'Tseng', 'Foon Yue', 'x2248', 'ftseng@classicmodelcars.com', '3', '', 'Sales Rep'),  
 (1323, 'Vanauf', 'George', 'x4102', 'gvanauf@classicmodelcars.com', '3', '', 'Sales Rep'),  
 (1337, 'Bondur', 'Loui', 'x6493', 'lbondur@classicmodelcars.com', '4', '', 'Sales Rep'),  
 (1370, 'Hernandez', 'Gerard', 'x2028', 'ghernande@classicmodelcars.com', '4', '', 'Sales Rep'),  
 (1401, 'Castillo', 'Pamela', 'x2759', 'pcastillo@classicmodelcars.com', '4', '', 'Sales Rep'),  
 (1501, 'Bott', 'Larry', 'x2311', 'lbott@classicmodelcars.com', '7', '', 'Sales Rep'),  
 (1504, 'Jones', 'Barry', 'x102', 'bjones@classicmodelcars.com', '7', '', 'Sales Rep'),  
 (1611, 'Fixter', 'Andy', 'x101', 'afixter@classicmodelcars.com', '6', '', 'Sales Rep'),  
 (1612, 'Marsh', 'Peter', 'x102', 'pmarsh@classicmodelcars.com', '6', '', 'Sales Rep'),  
 (1619, 'King', 'Tom', 'x103', 'tking@classicmodelcars.com', '6', '', 'Sales Rep'),  
 (1621, 'Nishi', 'Mami', 'x101', 'mnishi@classicmodelcars.com', '5', '', 'Sales Rep'),  
 (1625, 'Kato', 'Yoshimi', 'x102', 'ykato@classicmodelcars.com', '5', '', 'Sales Rep'),  
 (1702, 'Gerard', 'Martin', 'x2312', 'mgerard@classicmodelcars.com', '4', '', 'Sales Rep');  

5.Lalu controller tadi yang sudah kita buat, tambahkan lagi datanya menjadi seperti ini
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');  
 class Main extends CI_Controller {  
   function __construct()  
   {  
     parent::__construct();  
     /* Standard Libraries of codeigniter are required */  
     $this->load->database();  
     $this->load->helper('url');  
     /* ------------------ */   
     $this->load->library('grocery_CRUD');  
   }  
   public function index()  
   {  
     echo "<h1>Hello World</h1>";  
     die();  
   }  
   public function employees()  
   {  
     $this->grocery_crud->set_table('employees');  
     $output = $this->grocery_crud->render();  
     echo "<pre>";  
     print_r($output);  
     echo "</pre>";  
     die();  
   }  
 }  

6.Kemudian, pada folder views tambahkan file ini
<!DOCTYPE html>  
 <html lang="en">  
 <head>  
   <meta charset="utf-8" />  
 <?php   
 foreach($css_files as $file): ?>  
   <link type="text/css" rel="stylesheet" href="<?php echo $file; ?>" />  
 <?php endforeach; ?>  
 <?php foreach($js_files as $file): ?>  
   <script src="<?php echo $file; ?>"></script>  
 <?php endforeach; ?>  
 <style type='text/css'>  
 body  
 {  
   font-family: Arial;  
   font-size: 14px;  
 }  
 a {  
   color: blue;  
   text-decoration: none;  
   font-size: 14px;  
 }  
 a:hover  
 {  
   text-decoration: underline;  
 }  
 </style>  
 </head>  
 <body>  
 <!-- Beginning header -->  
   <div>  
     <a href='<?php echo site_url('examples/offices_management')?>'>Offices</a> |   
     <a href='<?php echo site_url('examples/employees_management')?>'>Employees</a> |  
     <a href='<?php echo site_url('examples/customers_management')?>'>Customers</a> |  
     <a href='<?php echo site_url('examples/orders_management')?>'>Orders</a> |  
     <a href='<?php echo site_url('examples/products_management')?>'>Products</a> |   
     <a href='<?php echo site_url('examples/film_management')?>'>Films</a>  
   </div>  
 <!-- End of header-->  
   <div style='height:20px;'></div>   
   <div>  
     <?php echo $output; ?>  
   </div>  
 <!-- Beginning footer -->  
 <div>Footer</div>  
 <!-- End of Footer -->  
 </body>  
 </html>  


7.Pada file controller tadi, tambahkan ini
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');  
 class Main extends CI_Controller {  
   function __construct()  
   {  
     parent::__construct();  
     /* Standard Libraries of codeigniter are required */  
     $this->load->database();  
     $this->load->helper('url');  
     /* ------------------ */   
     $this->load->library('grocery_CRUD');  
   }  
   public function index()  
   {  
     echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function  
         die();  
   }  
   public function employees()  
   {  
     $this->grocery_crud->set_table('employees');  
     $output = $this->grocery_crud->render();  
     $this->_example_output($output);      
   }  
   function _example_output($output = null)  
   {  
     $this->load->view('our_template.php',$output);    
   }  
 }  


8.Kemudian, bukalah localhost tersebut maka tampilannya akan seperti ini


Thursday, April 7, 2016

Belajar dengan CodeIgniter [CI]

Langkah Instalasi

1.  Download CodeIgniter di : https://www.codeigniter.com/download
    (Saya menggunakan CodeIgniter 3)
2. Extract CodeIgniter-3.0.6 ke dalam folder C:/xampp/htdocs

Langkah Inisiasi untuk membuat "Hello World" dan Tabel Phonebook

1. Buka folder CodeIgniter dengan text editor (saya menggunakan Sublime Text 3), Inisiasi dilakukan dengan membuat kerangka/template web
2. Pada application/controllers ,buatlah file baru dengan nama pages.php yang berisi
<?php
class Pages extends CI_Controller {

        public function view($page = 'home')
        {
        }
}
3. Kemudian, pada application/views buatlah folder baru bernama templates. Lalu di dalam folder template buatlah file baru bernama header.php (file ini berisi header dari web)
<html>
        <head>
                <title>CodeIgniter Tutorial</title>
        </head>
        <body>

                <h1><?php echo $title; ?></h1>

4. Buat juga footer.php di dalam folder templates tadi
 <em>&copy; 2016</em>
        </body>
</html>
5. Lalu, di bagian views buatlah folder baru bernama pages yang nantinya digunakan untuk menyimpan file page-page yang ingin ditampilkan dalam web. Buatlah suatu file di dalamnya, misalnya home.php. Isilah dengan "HELLO WORLD"

6. Kemudian pada bagian routes.php ubah default_controllernya mengarah ke folder pages
$route['default_controller'] = 'pages';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
7. Kemudian buatlah database di phpmyadmin untuk membuat web phonebook

8. Kembali lagi ke sublime text 3, pada bagian autoload.php , tambahkan 'database' di dalam array berikut
$autoload['libraries'] = array('database', 'session');

9. Pada database.php, editlah bagian di bawah ini
'hostname' => 'localhost',
 'username' => 'root',
 'password' => '',
 'database' => 'phonebook',

localhost adalah server kita, usernamenya root dan password defaultnya tidak ada. kemudia database adalah nama database kita di phpmyadmin

10. Pada bagian views/pages buatlah file baru di dalamnya misalnya namanya tabel.php yang berisi tabel untuk menampilkan data dari database

<table border="1"> <thead> <tr> <th>Nama</th> <th>Alamat</th> <th>HP</th> <th>Email</th> <th>Kelas</th> </tr> <?php foreach($phone as $row) { ?> <tr> <td><?php echo $row->nama;?></td> <td><?php echo $row->alamat;?></td> <td><?php echo $row->hp;?></td> <td><?php echo $row->email;?></td> <td><?php echo $row->kelas;?></td> </tr> <?php } ?> </table>

11.  Untuk bagian query pada back end nya, di bagian models buatlah file baru misal namanya phonebook.php
<?php

class Phonebook extends CI_Model {

 function view()
 {
  $query = "SELECT * FROM MAHASISWA";
  
  $hasil = $this->db->query($query);

  return $hasil->result();
 }
}

12. Kemudian pada bagian controller, buatlah file bernama pages.php yang berfungsi untuk menghubungkan view dengan model

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Pages extends CI_Controller {

 function __construct()
 {
  parent::__construct();
  $this->load->model('phonebook');
 } 
 public function index()
 {
  $data['phone'] = $this->phonebook->view();
  $this->load->view('pages/home');
  $this->load->view('pages/tabel', $data);
 }
}
13.Sebelum selesai mengkoding dan melihat isi halaman web, tambahkan kode ini ke dalam pages.php yang gunanya untuk load halaman web
<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Pages extends CI_Controller {

 function __construct()
 {
  parent::__construct();
  $this->load->model('phonebook');
 } 
 public function index()
 {
  $data['phone'] = $this->phonebook->view();
  $this->load->view('pages/home');
  $this->load->view('pages/tabel', $data);
 }
}
14.Kemudian tes untuk membuka isi web yang sudah kita buat.


Friday, April 1, 2016

UTS PWEB

SOAL 1

Link : http://kathotel.com

Biaya yang dikeluarkan sekitar Rp396.000 untuk domain dan hosting

Langkah-langkah mengerjakan :
1. membuat database di localhost, atau langsung di phpmyadmin dari cpanel


2. membuat interfacenya lewat localhost


3. memasukkan data interface localhost melalui cpanel
  -buka cpanel lalu cari bagian File

-pilih upload untuk upload file localhost 



-lalu bisa dibuka melalui domain



Fitur yang tersedia

1.Mencari hotel,apartemen,dan homestay yang tersedia berdasarkan kategori dan tanggal check in check outnya (database masih dalam proses)


2.Login member area (database masih dalam proses)

3.Contact us beserta map



SOAL 2

1) config.php

<?php
 
$dbhost = 'localhost'; 
$dbuser = 'root';     // ini berlaku di xampp
$dbpass = '';         // ini berlaku di xampp
$dbname = 'utspweb';
 
// melakukan koneksi ke database
$connect = new mysqli($dbhost,$dbuser,$dbpass,$dbname);
 
// cek koneksi yang kita lakukan berhasil atau tidak
if ($connect->connect_error) {
   // jika terjadi error, matikan proses dengan die() atau exit();
   die('Maaf koneksi gagal: '. $connect->connect_error);
}
?>


2) login.php
<pre><code>?php  
  include 'configi.php';  
 ?>  
 <!DOCTYPE html>  
 <html lang="en">  
  <head>  
   <meta charset="utf-8">  
   <meta http-equiv="X-UA-Compatible" content="IE=edge">  
   <meta name="viewport" content="width=device-width, initial-scale=1">  
   <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->  
   <title>UTS Pweb</title>  
   <!-- Bootstrap -->  
     <link href="css/bootstrap.min.css" rel="stylesheet">  
  </head>  
 <div class="col-sm-3" padding-top:10px">  
   <form action="login_auth.php" method="POST">  
 <div class="contact-bottom">  
     <label>Username : </label>  
     <input name="nama_user" type="text" placeholder="Username" />  
     <label>Password : </label>  
     <input name="password_user" type="password" placeholder="Password" />  
 <div class="submit-btn">  
      <input type="Submit" value="Login">  
 </div>  
 </div>  
   </form>  
 </div>  
 <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->  
   <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>  
   <!-- Include all compiled plugins (below), or include individual files as needed -->  
   <script src="js/bootstrap.min.js"></script>  
  </body>  
 </html></code></pre>  







3) tampilkandata.php


 <pre><code><?php   
  include'config.php';  
 $i=1;  
 echo '  
 <table border="1" style="background-color:yellow">  
 <thead>  
 <td> No.</td>  
 <td>Kode</td>  
 <td>Mata Praktikum</td>  
 <td> Jumlah Praktikan</td>  
 </thead>  
 <tbody>';  
 echo '  
 <h1>Data Mata Praktikum dan Jumlah Praktikan</h1>  
 ';  
 if($resultc = $connect->query("SELECT * FROM `praktikum`")){  
         while($rowc = $resultc->fetch_assoc()) {  
            echo '  
 <tr>';  
             echo '  
 <td>', $i++,'</td>  
 ';  
             echo '  
 <td>', $rowc['kode_mk'],'</td>  
 ';  
             echo '  
 <td>', $rowc['nama_mk'],'</td>  
 ';  
             echo '  
 <td>', $rowc['jumlah_praktikum'],'</td>  
 ';  
           echo '</tr>  
 ';  
           }  
         $resultc->free();  
 }  
 echo '</tbody>  
 </table>  
 ';  
 echo '  
 <div style="text-align:center"><button > Tambah Data MK</button></div>  
 ';  
 ?></code></pre>  

























Thursday, March 10, 2016

10k line of code

Kali ini saya akan menjelaskan tentang pemrograman PHP tingkat awal, yaitu mencoba connect dengan database dan mencoba beberapa kodingan dasar dalam bahasa pemrograman PHP.
Sebenarnya bahasa pemrograman PHP tidak jauh beda dengan bahasa C, jadi kalau sudah pernah belajar bahasa C pasti tidak akan kesulitan lagi untuk belajar bahasa pemrograman PHP.

P.S: File .php dapat membaca <html> , sedangkan file dengan ekstensi .html tidak dapat membaca <php>

Aplikasi yang saya gunakan adalah Sublime Text 3 untuk text editornya dan XAMPP Control Panel untuk webservernya. Pertama-tama buka dulu aplikasi XAMPP Control Panel, aktifkan mysql dan apache


Kemudian, setelah running maka buka sublime dan mulai membuat kodingan untuk connect ke database
kodingannya :
<?php $servername = "localhost";$username = "";$password = ""; $conn = mysqli_connect($servername, $username, $password);if (!$conn) { die("connection failed:" . mysqli_connect_error());}echo "Connection successfully";?>


hasilnya


--------------------------------------------------------------------------------------------------------------------------

Berikut contoh beberapa kodingan bahasa pemrograman yang saya coba

PEMROGRAMAN ARRAY
Contoh 1 :


 kodingan:
<html>
<head>
<Title> Pemograman PHP dengan Array </title>
</head>
<body>
<?php
$sapaan[]="Halo";
$sapaan[]="Selamat Pagi";
echo "$nickname[0] $nickname[1]";
echo "<br>";
$nama[1]="Kania";
$nama[2]="Amalia";
echo "Nama saya $nama[1] $nama[2]";
echo "<br>";
$kampus[1]="ITS";
$kampus[2]="Surabaya";
echo "Saya kuliah di adalah $kampus[1] $kampus[2]";
echo "<br>";
$jurusan[1]="Teknik";
$jurusan[2]="Informatika";
echo " Jurusan saya yakni $jurusan[1] $jurusan[2]";
?>
</body>
</head>
</html>
hasilnya


 Contoh 2 :
kodingannya :
<html>
<head>
<title> Coba Variabel </title>
</head>
<body>
<?php
$kata[]="Coba";
$kata[]="belajar";
$kata[]="menghitung !";
echo "$kata[0] $kata[1] $kata[2]";
echo "<br>";
$nilai_1 = 10;
$nilai_2 = 4;
$nilai_3 = 2 * $nilai_1 + 7 * $nilai_2;
$jumlah=$nilai_1+$nilai_2;
$bagi=$nilai_1/$nilai_2;
$kurang=$nilai_1-$nilai_2;
echo"--------------------------------------<br>";
echo "nilai pertama = $nilai_1 <br>";
echo "nilai kedua = $nilai_2 <br><br>";
echo "pertanyaan pertama : <br>";
echo "hasil penjumlahan dari 2 dikali nilai pertama ditambahkan dgn
7 dikali nilai kedua? <br>";
echo "jawab : <br> hasil dari (2 * $nilai_1) + (7 * $nilai_2) = $nilai_3 <br><br>";
echo "pertanyaan kedua : <br>";
echo "hasil penjumlahan dari kedua nilai ? <br>";
echo "jawab : <br> hasil dari $nilai_1 + $nilai_2 adalah : $jumlah <br><br>";
echo "pertanyaan ketiga : <br>";
echo "hasil pembagian dari kedua nilai ? <br>";
echo "jawab : <br> hasil dari $nilai_1 / $nilai_2 adalah : $bagi <br><br>";
echo "pertanyaan ketiga : <br>";
echo "hasil pengurangan dari kedua nilai ? <br>";
echo "jawab : <br> hasil dari $nilai_1 - $nilai_2 adalah : $kurang <br><br>";
?>
</body>
</html> 

-------------------------------------------------------------------------------------------------------------------------
IF ELSE
Contoh :

kodingannya :
<html>
<head>
<title> Fungsi IF ELSE </title>
</head>
<body>
<?php
$bil = 10;
if($bil%2==0)
echo "Bilangan $bil merupakan bilangan genap";
else
echo "Bilangan $bil merupakan bilangan ganjil";
?>
</body>
</html>

hasilnya 

--------------------------------------------------------------------------------------------------------------------------
FUNGSI SWITCH
Contoh :
hasilnya

 kodingannya :
<html>
<body>
<?php
$jurusan = "TI";
switch($jurusan)
{
case "KA":
echo "$jurusan = Komputerisasi Akuntansi";
break;
case "TI":
echo "$jurusan = Teknik Infomatika";
break;
case "MI":
echo "$jurusan = Manajemen Informatika ";
break;
case "SI":
echo "$jurusan = Sistem Informasi";
break;
default:
echo "$jurusan tidak terdaftar";
}
?>
</body>
</html>

Fractal Tree