Diposkan pada Pemrograman, PHP

COOKIE BUKAN BISKUIT

Sebelumnya apakah kalian sudah tau apa itu cookie? Bukan sejenis biskuit loh ya wkwkwk :v . Jadi cookie yaitu variabel sementara yang dibuat untuk keperluan tertentu dan terletak pada client ( sumber : http://media-kreatif.com/home/post/10/cookie-dalam-pemrograman-php.prm).

Sebelumya kita kan sudah mempelajari bagaimana menggunakan session untuk menyimpan data. Nah, selain menggunakan session kita juga bisa menggunakan cookie loh.

Emmmmm jadi kita sama saja dong antara memakai session dengan cookie??

Tentu tidak, dalam hal ini terdapat perbedaan antara session dengan cookie yaitu dari sisi kegunaannya, jika session data disimpan dalam server web sedangkan data cookie disimpan dalam komputer client.

Diantara session dan cookie juga memiliki kelebihan dan kelemahan masing-masing yaitu pada session user tidak bisa menghapus data yang tersimpan kecuali dirinya sendiri, misal dengan menutup browser atau ketika dalam proses logout. Kelemahannya yaitu ketika tiba-tiba jaringan internet terputus setelah proses login, maka otomatis session akan terhapus sehingga apabila hal ini terjadi ketika kita mengakses halaman web yang terdapat autentifikasi maka kita diharuskan login kembali.

Sedangkan cookie, data disimpan di komputer client. Dengan demikian data tersebut tetap tersimpan meskipun jaringan internetnya terputus atau dalam kondisi offline. Namun kelemahannya yaitu data cookie tersebut dapat dihapus oleh orang lain yang juga menggunakan komputer tersebut, atau mungkin user komputer tersebut telah mengeset  bahwa  browsernya  tidak  bisa  menerima cookie sehingga cookie tidak  bisa tersimpan dalam komputer client.


CARA MENYIMPAN DATA KE DALAM COOKIE

Untuk menyimpan data ke dalam cookie yaitu dengan memberikan perintah :

setcookie(“nama cookie”, value, expired time);

Pada perintah di atas, parameter ‘nama cookie’ bisa diisi dengan sebarang nama. Nama cookie  ini  seperti  halnya  kita  memberi  nama  pada  session.  Parameter  ‘value’ nantinya diisi dengan data yang akan disimpan. Sedangkan parameter ‘expired time’ adalah lama waktu untuk mengatur masa berlaku cookie.

Catatan:

Nama cookie tidak boleh mengandung spasi Expired Time dihitung dalam satuan detik

Contoh:

<?php

$kata = "Saya sedang belajar COOKIE"; 
setcookie("mycookie", $kata, time()+3600); 
?>

cookies.PNG

Script di atas akan menyimpan data berupa teks ‘Saya sedang belajar COOKIE’ ke dalam cookie.  Bila  script  di  atas  dijalankan,  maka  kita  bisa  lihat  valuenya  dalam  COOKIE. Apabila kita menggunakan Firefox, maka cara melihat cookienya adalah:

  1. Klik TOOLS > OPTIONS
  2. Pilih menu tab PRIVACY
  3. Klik tombol SHOW COOKIES
  4. Kemudian dicari nama situsnya, karena Anda mencobanya melalui LOCALHOST maka LOCALHOST pada site name
  5. Lalu akan tampil seperti pada gambar berikut ini

(gambar menyusul ya. Mianne…)

Nah…   konsep cookie yang bisa diatur jangka waktu atau umurnya ini sering dimanfaatkan oleh program-program bisnis afiliasi.


MEMBACA VALUE/DATA COOKIE

Setelah cookie tersimpan, selanjutnya kita bisa membaca valuenya. Untuk membaca value cookie, caranya adalah menggunakan perintah

$_COOKIE['nama cookie'];

Contoh:

<?php

if isset($_COOKIE['mycookie'])

{

echo $_COOKIE['mycookie'];

}

else echo "Cookie Tidak Ada"; ?>

Script di atas digunakan untuk menampilkan value dari cookie bernama ‘mycookie’ apabila cookie tersebut ada (masih tersimpan dalam komputer), sedangkan apabila sudah tidak ada maka tampilkan ‘cookie tidak ada’.

Nah… mungkin kita terbesit pikiran, bagaimana apabila terdapat nama cookie yang sama lebih dari satu yang tersimpan dalam komputer? Apabila nama  cookie yang sama tersebut berasal dari situs yang sama, maka sifat timpa menimpa value seperti halnya dalam variabel akan terjadi.

Contoh:

script1.php

<?php

$kata = "COOKIE 1";

setcookie("mycookie", $kata, time()+3600);

?>

script2.php

<?php

$kata = "COOKIE 2";

setcookie("mycookie", $kata, time()+3600); ?>

Kedua script di atas akan melakukan proses penyimpanan cookie sebanyak  2 kali dengan value yang berbeda namun nama cookienya sama. Jika kita jalankan script di atas dalam localhost (sebagai nama situsnya), maka value cookie pertama akan ditimpa dengan cookie yang kedua.

Namun… misalnya kita mempunyai dua situs atau server yang berbeda yaitu A dan B, kemudian script1.php kita upload ke A sedangkan script2.php diupload ke B. Selanjutnya script1.php di A dijalankan dan script2.php di B juga dijalankan. Jika diperhatikan, maka proses ini akan menghasilkan 2 buah  cookie yang  berbeda, meskipun nama cookienya sama. Disini yang membedakan adalah nama server atau situsnya.


Sekian dulu penjelasan mengenai cookie. Terimakasih telah berkunjung.. Tetap semangat dan terus berlatih..

Diposkan pada Pemrograman, PHP

CONTOH SOAL SESSION

Hallooo hallooo…

Pasti kalian pada nungguin kannn bagaimana contoh soal session??? wkwk

Oke langsung aja ya


1. Buatlah  autentifikasi  user  dari  suatu  aplikasi  web  menggunakan  konsep  SESSION. Adapun username-username yang boleh mengakses aplikasi ini adalah

USERNAME PASSWORD
A password1
B password2
C password3
D password4
E password5

Username dan password di atas harus disimpan dalam sebuah ARRAY. Adapun konsepnya sama seperti pada pengerjaan soal no. 5 Bab 11.

Berikut ini gambaran aplikasinya:

Terlebih dahulu buatlah sebuah desain halaman web dengan layout seperti di bawah ini:

TITLE

 

KONTEN

 

FOOTER

Selanjutnya, bagi-bagilah layout tersebut ke dalam modul header.php dan footer.php Untuk halaman utama, tampilkan form login untuk user.

TITLE

 

Silakan Login

 

Username

Password

[ SUBMIT ]

 

FOOTER

Selanjutnya bila login berhasil tampilkan halaman berikut ini (munculkan link navigasi)

TITLE

 

Username : XXX

Link 1 | Link 2 | Link 3 | Logout

 

 

 

Anda telah berhasil login

 

FOOTER

Keterangan:

Login  dikatakan  berhasil  bila  password  yang  dimasukkan  oleh  seorang  user melalui form login sama dengan password yang tersimpan dalam aplikasi (dalam hal ini password yang ada dalam array). XXX adalah username yang sukses login.

Untuk setiap halaman Link 1, 2, dan 3 berikut ini tampilannya

TITLE

 

Username : XXX

Link 1 | Link 2 | Link 3 | Logout

 

 

 

Ini adalah isi dari halaman Link 1

 

FOOTER

Catatan:

Aplikasi yang dibuat harus bisa menghandle apabila login salah, misalnya muncul keterangan “Password yang dimasukkan salah” bila username terdaftar namun passwordnya salah, atau “Username tidak terdaftar” bila usernamenya tidak terdaftar dalam aplikasi.

Bila password login salah atau user tidak terdaftar, maka menu link navigasi tidak ditampilkan

Aplikasi  yang  dibuat  harus  bisa  menghandle   adanya  penyusup  yang  ingin langsung masuk ke halaman Link 1, 2 dan 3 tanpa melalui login (autentifikasi).

Aplikasi yang dibuat harus bisa menghandle proses logout.


Naaaaahhhh itu tadi contoh soalnya… Untuk jawabannyaaa jreng jreng jreng.. Masih dalam pengerjaan…. Harap bersabar yaaa… :”v

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..

Diposkan pada Pemrograman, PHP

HALO ARRAY

Apa kabar kawan???? Semoga baik baik saja.. Emmmm kali ini kita akan membahas tentang array loh..!!! Wah udah lumayan jauh pembahasan kita.

Sebelumnya bentuk variabel yang kita buat untuk menyimpan value adalah berbentuk tunggal. Kira-kira ada tidak ya variabel yang menyimpan value lebih dari satu??? Ada tidak yaaa?? Yaaa yang pasti ada dong, namanya variabel bertipe data array. Kita sapa yuk sekalian kenalan :v .

Jadi pada array ini, misalkan suatu variabel x bertipe array, maka x ini dapat kita bayangkan seperti gambar berikut

tempsnip

Variabel X seperti memiliki beberapa ruang dan terdapat nomor ruangan dari 0,1,2,3,…,N-1. Dalam ruangan inilah kita bisa mengassign beberapa value sekaligus. Ingat ya untuk PHP, nomor ruang array dimulai dari 0, bukan 1.

Untuk mendeklarasikan suatu variabel (misal: $x) bertipe data array adalah $x = array(); . Variabel bertipe data array ini dapat diassign dengan berbagai tipe data loh misalnya ruang 1 diisi dengan value berupa bilangan bulat (integer), ruang 2 diisi dengan string dsb.

Contoh mengassign ruang variable bertipe data array. Misalnya kita akan mengassign ruang nomor 3 dengan value bilangan integer 15, dan ruang nomor 5 dengan string ‘ I LOVE PHP’ perintahnya:

<?php

$x=array();

$x[3] = 15;

$x[5] = 'I LOVE PHP';

?>

Selanjutnya, cara kita menampilkan value yang tersimpan yaitu dengan memanggil nomor ruangnya dan diecho.

<?php

$x=array();

$x[3] = 15;

$x[5] = "I LOVE PHP";

echo $x[3]; // akan menampilkan value pada ruang ke-3, yaitu 15

echo $x[5]; // akan menampilkan value pada ruang ke-5, yaitu "I LOVE PHP"

?>

Kita juga bisa mengisi value untuk setiap ruang array sekaligus secara berturut-turut seperti contoh berikut ini:

<?php

$x = array(10, 12, 3, 44, 50, “hallo”);

?>

atau cara kedua bisa pula menggunakan seperti berikut ini:

<?php

$x = array(0 => 10, 1 => 12, 2 => 3, 3 => 44, 4 => 50, 5 => “hallo”);

?>

Selanjutnya, bagaimana cara kita menampilkan value-value yang  tersimpan  dalam kamar array tersebut? Caranya yaaa tinggal panggil saja nomor ruangnya lanjut dengan di echo kan.

<?php

$x = array(10, 12, 3, 44, 50, “hallo”);

echo $x[0]; echo $x[5];

// akan menampilkan value pada ruang ke-0, yaitu 10

// akan menampilkan value pada ruang ke-5, yaitu ‘hallo’

$x[2] = -3;

echo $x[2];

// mengganti value pada ruang ke-2 dengan value yang baru (-3)

// akan menghasilkan -3 (yang tampil bukan 3 karena sudah ditimpa -3)

?>

Kita juga bisa menampilkan semua value array sekaligus secara berturut-turut menggunakan looping

<?php

$x = array(10, 12, 3, 44, 50, “hallo”); for ($i = 0; $i <= 5; $i++)

{

echo “Nilai kamar ke “.$i. ” dari array = “.$x[$i]. “<br />”;

}

?>

atau cara kedua, kita bisa menggunakan perintah count() untuk menentukan jumlah ruang array yang telah diisi value.

<?php

$x = array(10, 12, 3, 44, 50, “hallo”); for ($i = 0; $i <= count($x)-1; $i++)

{

echo “Nilai kamar ke “.$i. ” dari array = “.$x[$i]. “<br />”;

}

?>

Dalam script di atas, perintah count($x) akan menghasilkan 6 karena dalam array $x tersebut terdapat 6 ruang yang terisi value. Penggunaan count() ini akan efektif jika kita malas menghitung jumlah ruang array yang telah diisi value  secara  manual,  ibaratnya kita minta tolong si PHP untuk menghitungkannya.


CONTOH PROGRAM MENGGUNAKAN ARRAY

Program :

<?php

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

$jumlah=0;

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

{

$jumlah=$jumlah+$bil[$i]; //atau bisa dituliskan $jumlah += $bil[$i];

}

$ratarata = $jumlah/count($bil);

echo"Rata-ratanya adalah : ".$ratarata;

?>
Hasil program :
contoh array.PNG
Analisa :

Terimakasih telah berkunjung semoga bermanfaat