Diposkan pada Pemrograman, PHP

ABOUT SESSION

Jumpa lagi kawan…. Pembahasan kali ini yaitu session.

Untuk menjelaskan tentang session dan kegunaannya, sebelumnya kita mulai dengan contoh visualisasi terlebih dahulu ya.

Misalkan kita memiliki sebuah form sebagai berikut :

<form method="post" action="submit.php">
Bilangan ke-1 <input type="text" name="bil1" /><br /> Bilangan ke-1 <input type="text" name="bil1" /><br />
<input type="submit" name="submit" value="Submit" />
</form>

Form di atas digunakan untuk memasukkan dua buah bilangan. Selanjutnya kita buat script untuk membaca kedua bilangan yang diinputkan tersebut

submit.php

<?php

$bil1 = $_POST[‘bil1’];
$bil2 = $_POST[‘bil2′];

echo “Anda memasukkan bilangan ke-1 : “.$bil1.”<br />”; echo “Anda memasukkan bilangan ke-2 : “.$bil2.”<br />”;

echo “<a href=’lanjut.php’>Klik di sini</a>”;
?>

Apabila kita telah memasukkan dua buah bilangan melalui form, kemudian mensubmitnya maka pada script submit.php akan memunculkan kedua bilangan tersebut dengan sukses.

Pada submit.php ini terdapat pula link menuju script lanjut.php. Dalam script lanjut.php ini, kita juga akan menampilkan kedua bilangan yang diinputkan sebelumnya.

lanjut.php

<?php

echo “Anda memasukkan bilangan ke-1 : “.$bil1.”<br />”; echo “Anda memasukkan bilangan ke-2 : “.$bil2.”<br />”;

echo “<a href=’lanjut.php’>Klik di sini</a>”;
?>

Apa yang akan terjadi jika kita mengklik link menuju ke lanjut.php tersebut? Apakah kedua bilangan yang diinputkan tadi masih bisa terbaca nilainya? Jawabannya adalah tidak. Kedua bilangan hanya bisa terbaca pada script submit.php saja, karena submit.php adalah halaman pertama setelah pemrosesan form.

Mungkin kawan-kawan berpikiran bahwa perlu ditambahkan perintah

$bil1 = $_POST[‘bil1’];
$bil2 = $_POST[‘bil2’];

pada lanjut.php. Cara ini pun juga tidak bisa untuk membaca kedua bilangan.

Terus.. Bagaimana supaya dalam lanjut.php ini kedua bilangan yang diinputkan masih bisa dibaca nilainya?

Untuk mengatasi hal ini terdapat 2 solusi yang bisa digunakan, yaitu menggunakan get method atau session.

Apabila kita menggunakan get method, maka caranya adalah menyisipkan parameter untuk kedua bilangan pada link menuju lanjut.php tersebut. Selanjutnya dalam lanjut.php, parameter kedua bilangan ini dibaca nilainya.

submit.php

<?php

$bil1 = $_POST[‘bil1’];
$bil2 = $_POST[‘bil2’];

echo “Anda memasukkan bilangan ke-1 : “.$bil1.”<br />”; echo “Anda memasukkan bilangan ke-2 : “.$bil2.”<br />”;

echo “<a href=’lanjut.php?bil1= “.$bil1.”&bil2=”.$bil2.”‘>Klik di sini</a>”;
?>
lanjut.php

<?php

$bil1 = $_GET[‘bil1’];
$bil2 = $_GET[‘bil2’];

echo “Anda memasukkan bilangan ke-1 : “.$bil1.”<br />”; echo “Anda memasukkan bilangan ke-2 : “.$bil2.”<br />”;

?>

Cara di atas akan dapat memunculkan kedua bilangan pada lanjut.php. Namun… cara ini terdapat kelemahan yaitu ditampilkannya nilai input sebagai parameter dalam URL link.

Terus… bagaimana dengan menggunakan session? Ya… dengan menggunakan session, kita tidak perlu menuliskan nilai input dalam URL link. Nilai input ini nantinya akan disimpan dalam suatu variabel session. Selama browser kita masih aktif (browse belum ditutup) atau sengaja dinonaktifkan (dihapus) sessionnya, maka variabe session ini masih terus aktif.


Nah, sekian dulu nih penjelasan mengenai session.. Untuk lebih lengkapnya lagi langsung ke contoh soal kuyyy..

Diposkan pada Pemrograman, PHP

LEBIH DEKAT DENGAN ARRAY

Halo kawan”, mau tau bagaimana array? Gimana bentuknya? Prosesnya?

Simak yuk contoh soal berikut ini

Tapi sebelumnya mohon maaf karena masih dalam proses pengerjaan..


CONTOH SOAL

1. Perhatikan kembali kasus no. 2 pada bab ini. Apakah asumsi bilangan terbesar untuk pertama kali harus diberikan pada bilangan yang pertama? Jelaskan jawaban Anda

Program :

<?php

$bil = array(9,2,10,3,7,5,2);

$max = $bil[0];

for($i=0;$i<=count($bil)-1;$i++)

{

if($bil[$i]>$max)$max = $bil[$i];

}

echo "Bilangan terbesarnya adalah :".$max;

?>
Hasil percobaan :
array 1.PNG
Analisa :
Pada program ini mencari bilangan terbesar dari beberapa bilangan yang diinputkan pada variabel dengan menggunakan for yang didalamnya terdapat if, dimana jika variabel bilangan lebih besar dari variabel max dan dikalikan variabel max samadengan variabel bilangan maka pada browser akan menampilkan bilangan terbesar.

2. Identik dengan kasus no. 2 pada bab ini, sekarang coba Anda buat script PHP untuk mencari nilai terkecil dari bilangan-bilangan 283, 182, 381, 119, 391, 591, 123, 124, 284, 215, 312.

Keterangan: tanpa menggunakan form input

Program :

<?php

$bil = array(283,182,381,119,391,591,123,124,284,215,312);

$min = $bil[0];

for($i=0;$i<=count($bil)-1;$i++)

{

if($bil[$i]<$min)$min = $bil[$i];

}

echo "Bilangan terkecilnya adalah :".$min;

?>
Hasil percobaan :
array 2.PNG
Analisa :
Pada program ini mencari bilangan terkecil dari beberapa bilangan yang diinputkan pada variabel dengan menggunakan for yang didalamnya terdapat if, dimana jika variabel bilangan lebih kecil dari variabel min dan dikalikan variabel min samadengan variabel bilangan maka pada browser akan menampilkan bilangan terkecil.

3. Identik dengan kasus no. 3 pada bab ini, coba Anda buat form input untuk memasukkan n buah bilangan, yang selanjutnya dicari nilai terbesar dan nila terkecil, serta nilai jangkauan yang diperoleh dari nilai terbesar dikurangi nila terkecil.


4. Diketahui sebuah data bilangan berikut ini: 273

281

384

119

392

184

105

129

204

219

274

275

263

Buatlah script untuk fasilitas pencarian data bilangan. Mula-mula buatlah form untuk memasukkan bilangan yang ingin dicari. Selanjutnya  apabila  ditekan submit, maka berikutnya muncul status ‘ada atau tidaknya’ bilangan yang dicar dalam keseluruhan data. Jika ada, maka tampilkan urutan data ke berapa dar keseluruhan data (urutan dimulai dari 1, 2, 3, …)

Contoh:

Masukkan Bilangan yang dicari = 281 [submit]

Selanjutnya muncul keterangan:

“Bilangan yang Anda cari ada dalam data pada urutan ke-2”


5. Sebuah toko swalayan ingin membuat aplikasi  sederhana  untuk  menghitung total harga yang harus dibayarkan si pembeli. Misalkan  dalam  toko  tersebu hanya terdapat 10 jenis barang saja. Berikut daftar barang yang ada dalam toko beserta harganya

Kode Barang

Nama Barang

Harga Satuan

1001 Sabun Lifebuoy Rp. 1.500,-
1002 Permen Blaster Rp. 5.600,-
1003 Pasta Gigi Pepsodent Rp. 4.560,-
1004 Madu Arbain Rp. 30.000,-
1005 Kecap ABC Rp. 7.250,-
1006 Saus Tomat ABC Rp. 6.700,-
1007 Gula Gulaku Rp. 8.900,-
1008 Rinso Rp. 7.100,-
1009 Super Pel Rp. 6.450,-
1010 Permen Tango Rp. 5.600,-

Aplikasi ini terletak pada kasir. Berikut ini tampilan aplikasinya Form pertama

Masukkan banyaknya jenis barang yang dibeli   [BANYAK JENIS BARANG] [ SUBMIT ]

Form kedua

Masukkan kode barang yang dibeli dan banyaknya

Barang ke -1

Barang ke -2

Barang ke -3

.

.

[ SUBMIT ]

[MASUKKAN KODE BARANG] [JUMLAH BRG] [MASUKKAN KODE BARANG] [JUMLAH BRG] [MASUKKAN KODE BARANG] [JUMLAH BRG]

Tampilan Output :

Daftar Barang Yang Dibeli

KODE BARANG NAMA BARANG JUM BRG HARGA
XXX XXX XXX Rp. XXX
XXX XXX XXX Rp. XXX
XXX. XXX XXX Rp. XXX
.

TOTAL HARGA : Rp. XXX

Contoh:

Misalkan ada konsumen yang membeli sabun Lifebuoy (10 buah), dan permen Blaster (20 pack), maka formnya:

Form Pertama:

Masukkan banyaknya jenis barang yang dibeli [ 2 ] [SUBMIT]

Form Kedua

Masukkan kode barang yang dibeli dan banyaknya.

Barang ke -1     [ 1001 ]

Barang ke -2     [ 1002 ]

[ 10 ]

[ 20 ]

[ SUBMIT ]

 

Tampilan Output :

Daftar Barang Yang Dibeli

KODE BARANG 1001

1002

NAMA BARANG

Sabun Lifebuoy Permen Blaster

JUM BRG 10

20

HARGA

Rp. 15000,-

Rp. 112000,-

TOTAL HARGA : Rp. 127000,-


Terimakasih telah berkunjung, sabar dulu ya kawan kawan hehe..