Welcome

Welcome, thanks to look my blog

Wednesday, 31 December 2014

[How To] Bagaimana menghilangkan error “imageantialias() is not available” saat install jpgraph.



[How To] Bagaimana menghilangkan error “imageantialias() is not available” saat install jpgraph.


Setelah download jpgraph di di sini http://jpgraph.net/download/  dan ekstraks di folder server.

“The function imageantialias() is not available in your PHP instalation. Use GD version that comes with PHP and not the standalone version.”
Intinya fungsi imageantialias tidak ada pada setting PHP di komputer  Apa yang salah dengan ini ? Bagaimana solusi pemecahannya ?
. Inilah dia solusi permasalahan ini :
Langkah 1 :
Buka file  gd_image.inc.php  yang terdapat pada folder jpgraph/src/
Langkah 2:
Cari source code function berikut ini :

// Should we use anti-aliasing. Note: This really slows down graphics!
function SetAntiAliasing($aFlg=true) {
$this->use_anti_aliasing = $aFlg;
if( function_exists('imageantialias') ) {
imageantialias($this->img,$aFlg);
}
else {
JpGraphError::RaiseL(25128);//('The function imageantialias() is not available in your PHP installation. Use the GD version that comes with PHP and not the standalone version.')
}
}

Langkah 3 :
Berikan tanda  // pada baris  JpGraphError::RaiseL(25128);
sehingga menjadi seperti ini :

// Should we use anti-aliasing. Note: This really slows down graphics!
function SetAntiAliasing($aFlg=true) {
$this->use_anti_aliasing = $aFlg;
if( function_exists('imageantialias') ) {
imageantialias($this->img,$aFlg);
}
else {
// JpGraphError::RaiseL(25128);//('The function imageantialias() is not available in your PHP installation. Use the GD version that comes with PHP and not the standalone version.')
}
}

Kemudian Simpan.
Langkah 4 :
Silahkan di test kembali dan inilah hasilnya :
Alhamdulillah, sekarang tinggal testing dan padukan dengan panadaframework.
Salam Blogger!

Friday, 19 December 2014

Cara buat kode otomatis dengan format



Asslamu'alaikum wr wb.
Kali ini saya akan share bagaimana caranya buat kode otomatis dengan format yang telah kita tentukan.
Berikut ini syntaxnya yang pernah saya buat dengan format "1312070001"
_________________________________
 $query = "SELECT max(id_tiket) as idMaks FROM tbl_tiket";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);
$idMax = $data['idMaks'];

// mengambil angka atau bilangan dalam kode anggota terbesar,
// dengan cara mengambil substring mulai dari karakter ke-1 diambil 4 karakter
// misal 'A00001', akan diambil '00001' 1312060001
// setelah substring bilangan diambil lantas dicasting menjadi integer 1312060001

$noUrut = (int) substr($idMax, 6, 4);

// bilangan yang diambil ini ditambah 1 untuk menentukan nomor urut berikutnya

$noUrut++;

// membentuk kode anggota baru
// perintah sprintf("%05s", $noUrut); digunakan untuk memformat string sebanyak 5 karakter
// misal sprintf("%05s", 12); maka akan dihasilkan '00012'
// atau misal sprintf("%05s", 1); maka akan dihasilkan string '00001'
$format = date(ymd);
$newID = $format . sprintf("%04s", $noUrut);

    echo '<div id="judul"><a href="?Pangeran=ticket_in">Ticket In</a> => Create New Ticket In</div>';
   echo "<br>
            <form method=POST action='$aksi?Pangeran=ticket_in&act=input' enctype='multipart/form-data'>
            <table class='list'><tbody>

          <tr>
          <td width='70' align='right'>ID Ticket</td> 
          <td class='left'>";?>
          <input type="text" readonly="readonly" name="id_tiket" value='<?php echo $newID;?>' style='float:left;margin-left:4px;'>
         <?php
   echo"</td>
   </tr> 
 
  <tr>
  <td class='left'>Category</td> 
  <td class='left'>
          <select name='category'   style='float:left;margin-left:4px;' title='Please select Category'>
            <option value=0 selected>- Select Category -</option>";
            $tampil=mysql_query("SELECT * FROM tbl_kategori ORDER BY id_kategori");
            while($r=mysql_fetch_array($tampil)){
              echo "<option value=$r[id_kategori]>$r[nama_kategori]</option>";
            }
    echo "</select></td></tr>

<tr>
  <td class='left'>Priority</td> 
  <td class='left'>
          <select name='prioritas'   style='float:left;margin-left:4px;' title='Please select prioritas'>
            <option value=0 selected>- Select Priority -</option>
            <option value='Critical'>Critical</option>
<option value='Urgent'>Urgent</option>
<option value='High'>High</option>
<option value='Medium'>Medium</option>
<option value='Low'>Low</option>
</select></td></tr>

 <input type=hidden name='email' size='50' value='$e' readonly='readonly' style='float:left;margin-left:4px;'>
          <tr>
             <td width='70' align='right'>Name</td>
             <td class='left'><input type=text name='nama' size='50' style='float:left;margin-left:4px;'></td>
            </tr>
 
  <tr>
             <td width='70' align='right'>Subject</td>
             <td class='left'><input type=text name='subjek' size='50' style='float:left;margin-left:4px;'></td>
            </tr>
    
          <tr> 
   <td width='70' align='right'>Messages</td>
              <td class='left' colspan='2'><textarea name='isi_halaman' id='isi_halaman' rows=9 cols=60 style='float:left;margin-left:4px;'></textarea></td>
   </tr>
 
   <tr> 
   <td width='70' align='right'>Deskription</td>
              <td class='left' colspan='2'><textarea name='ket' id='ket' rows=3 cols=60 style='float:left;margin-left:4px;'></textarea></td>
   </tr>
          
 
   <tr> 
   <td width='70' align='right'>Images</td>
           <td class='left' colspan='2'><input name='picture' type='file'  style='float:left;margin-left:4px;'/>
 
          <tr>
           <td colspan='2'><input type=submit name=submit value=Save  style='float:left;margin-left:88px;'> <input type=button value=Cancel onclick=self.history.back()></td>
          </tr>
          </tbody></table></form>";


Membuat ID Otomatis dengan PHP

Membuat ID Otomatis dengan PHP

Membuat ID otomatis dengan PHP
Pada umumnya untuk urusan ID atau Primary Key pada tabel di mysql kita biasa menggunakan Auto Increment(A.I) dimana dengan A.I tersebut id atau key yang di inginkan akan bertambah otomatis setiap kali record bertambah.

Namun, pada kasus2 lain seperti NIM (No Induk Mahasiswa), NIP atau sejenisnya sering kita jumpai format seperti ini : 8020070233 dimana setiap angka mempunyai arti masing2:
80 : sebagai identifikasi jurusan
2007 : Tahun pendaftaran
0233 : jumlah mahasiswa

dari format diatas, jumlah maksimal mahasiswa yang akan mendaftar ditentukan dengan 4 digit, artinya tidak bisa lebih dari 9999 orang. Untuk kasus seperti NIM diatas, tentu tidak bisa menggunakan fungsi A.I pada MySql, maka dari perlu dibuat suatu fungsi agar NIM tersebut bisa bertambah secara otomatis setiap kali data di inputkan.

langsung ke pokok permasalah. Untuk kasus NIM seperti 8020070233, kita pisahkan terlebih dahulu NIM tersebut dengan fungsi SUBSTR
$id_old = 8020070233;
$jurusan = substr($id_old,0,2); //mengambil angka jurusannya
$jumlah_mhs = substr($id_old,6,4); //mengambil angka jumlah mahasiswa
$tahun = date("Y"); //mengambil tahun dari sistem.

setelah itu, tambahkan jumlah mahasiswa dengan 1
$hasil = $jumlah_mhs + 1;
lalu hitung jumlah karakter dari $hasil dan simpan di $pk_n
$pk_n = strlen($hasil);


langkah berikutnya adalah membuat kondisi penambahan 0 di belakang $hasil berdasarkan jumlah karakter hasil penambahan ($pk_n).
if($pk_n == 1){
$jumlah_mhs = "000".$hasil;
}else if($pk_n == 2){
$jumlah_mhs = "00".$hasil;
}else if($pk_n == 3){
$jumlah_mhs = "0".$hasil;
}else if($pk_n == 4){
$jumlah_mhs = $hasil;
}else{
$jumlah_mhs = "Data Error";
}

Dari kondisi diatas dapat diartikan seperti ini jika jumlah karakternya ($pk_n) = 1 maka jumlah mahasiswa 000 digabungkan dengan $hasil yang berarti jika $hasil adalah 2 maka $jumlah_mhs berisi 0002.

dan jika $hasil=10, berarti $pk_n = 2 (2 karakter) maka $jumlah_mhs = 0010 dst sampai dengan kondisi terakhir dimana jika jumlah karatkter ($pk_n) tidak 1,2,3 atau 4 berarti $jumlah_mhs=Data Error.

lalu langkah terakhir kita gabungkan kembali jurusan, tahun dan jumlah mahasiswa
$primary = $jurusan.$tahun.$jumlah_mhs;

dan didapatkanlah ID baru setelah ditambah 1 dari id yang lama.

Untuk lebih jelasnya, silahkan coba script dibawah:
file index.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>@nix</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="proses.php">
<table width="657" border="0">
<tr>
<td width="122">Nama</td>
<td width="519"><input name="nama" type="text" id="nama" /></td>
</tr>
<tr>
<td>Jurusan</td>
<td><select name="jurusan" id="jurusan">
<option value="80">TI</option>
<option value="40">SK</option>
<option value="30">SI</option>
</select>
</td>
</tr>
<tr>
<td>Alamat</td>
<td><label>
<textarea name="alamat" id="alamat"></textarea>
</label></td>
</tr>
<tr>
<td><input type="submit" name="Submit" value="Simpan" /></td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table>
</form>
</body>
</html>




file proses.php
<?php

include "function.php";

mysql_connect("localhost","root","");

mysql_select_db("test");

$nama = $_POST['nama'];

$jur = $_POST['jurusan'];

$alamat = $_POST['alamat'];

$tahun = date("Y");

$query = mysql_query("select * from registrasi where

substr(nim,1,2) = '$jur' order by nim desc");

$data = mysql_fetch_assoc($query);

$id_old = $data['nim'];

if(mysql_num_rows($query) == 0){

$primary = $jur.$tahun."0001";

}else{

$primary = getId($id_old);

}

$qinput = mysql_query("insert into registrasi (nim,nama,alamat) values

('$primary','$nama','$alamat')");

if($qinput){

header("location:./view.php");

exit;

}

?>


file function.php
<?php

function getId($id_old){

$jurusan = substr($id_old,0,2);

$tahun = date("Y");

$jumlah_mhs = substr($id_old,6,4);

$hasil = $jumlah_mhs + 1;

$pk_n = strlen($hasil);

if($pk_n == 1){

$jumlah_mhs = "000".$hasil;

}else if($pk_n == 2){

$jumlah_mhs = "00".$hasil;

}else if($pk_n == 3){

$jumlah_mhs = "0".$hasil;

}else if($pk_n == 4){

$jumlah_mhs = $hasil;

}else{

$jumlah_mhs = "Data Error";

}

return $primary = $jurusan.$tahun.$jumlah_mhs;

}

?>


file view.php

<?php

include "koneksi.php";

$query = mysql_query("select * from registrasi where

substr(nim,1,2) = '40' order by nim desc");

echo "<h2>Jurusan SK</h2>";

while($data = mysql_fetch_assoc($query)){

echo "<br />Nim : $data[nim]";

echo "<br />Nama : $data[nama]";

echo "<br />Alamat : $data[alamat]";

echo "<hr color=blue>";

}

$query = mysql_query("select * from registrasi where

substr(nim,1,2) = '80' order by nim desc");

echo "<h2>Jurusan TI</h2>";

while($data = mysql_fetch_assoc($query)){

echo "<br />Nim : $data[nim]";

echo "<br />Nama : $data[nama]";

echo "<br />Alamat : $data[alamat]";

echo "<hr color=blue>";

}$query = mysql_query("select * from registrasi where

substr(nim,1,2) = '30' order by nim desc");

echo "<h2>Jurusan SI</h2>";

while($data = mysql_fetch_assoc($query)){

echo "<br />Nim : $data[nim]";

echo "<br />Nama : $data[nama]";

echo "<br />Alamat : $data[alamat]";

echo "<hr color=blue>";

}

?>


Pada contoh yang saya buat diatas, untuk setiap jurusan diwakilkan dengan angka.
80 : Untuk Jurusan TI
40 : Untuk Jurusan SK
30 : Untuk Jurusan SI

Jika pada kasus lain, diperlukan id seperti ini 80-2009-0002 atau lc/produk/01 maka cara nya sama saja, hanya saja kita lebih mudah menggunakan fungsi explode untuk memisahkan tiap karakter.
Semoga bermanfaat :D

Monday, 15 December 2014

MENENTUKAN PILIHAN COMBOBOX BERDASARKAN COMBOBOX SEBELUMNYA DENGAN PHP


 Kadang ada suatu kasus di sistem informasi khususnya yg berbasis web mengenai penggunaan combo box, seperti ini kasusnya jika terdapat 2 combo box dan satu combo box isinya tergantung pada combo box yang lainnya. Misalkan ada combo box1 yang isinya nama-nama provinsi yang ada di Indonesia dan combo box2 isinya nama-nama kota tiap provinsi yang ada di Indonesia. Ketika combo box memilih provinsi jawa timur maka combo box2 akan menampilkan nama-nama kota yang ada di jawa timur seperti malang, Surabaya, mojokerto dll. Tapi tidak mungkin menampilkan kota semarang, jepara dan solo karena kota-kota tersebut tidak terdapat di provinsi jawa timur. Nah, tutorial kali ini akan membuat program sederhana seperti yang sudah dijelaskan diatas. Apa aja yang perlu disiapkan, let’s check this out!
1. Pertama kalian haru membuat sebuah database yang di dalamnya terdapat table provinsi dan kota. Kurang lebih seperti ini tabelnya.
tabel prov
tabel kota
2. Setelah itu pada table kota terdapat ‘id_prov’ yang merupakan id dari provinsi pada table ‘provinsi’. Maka dari itu, kita akan membuat relasi antar kedua table tersebut dengan ‘id’ pada table ‘provinsi’ sebagai primary key dan ‘id_prov’ pada table kota sebagai foreign key. Lihat gambar di bawah ini:
alter table
3. Setelah anda ketikkan query pada langkah nomor 2 sekarang table kota dan table provinsi mempunyai relasi. Sekarang kita isi table tersebut. Masukkan query dibawah ini pada DBMS anda.
Insert into provinsi values (1, ‘jawa timur’), (2, ‘jawa barat’), (3, ‘jawa tengah’);
Insert into kota values (1, ‘surabaya’, 1), (2, ‘malang’, 1), (3, ‘blitar’, 1), (4, ‘bandung’, 2), (5, ‘bogor’,2), (6, ‘tangerang’,2), (7, ‘semarang’, 3), (8, ‘solo’,3), (9, ‘jepara’,3);
4. Sekarang kita menuju ke tampilan web. Karena ini hanya sebagai contoh maka tampilannya cukup sederhana saja, kita hanya akan menggunakan 2 combo box. Kurang lebih seperti ini.
combo

<form name='form1' method='post' id=’form_combo’>
pilih provinsi : <select name=’provinsi’>
<option value=”>pilih provinsi</option>
</select>
<br/>
pilih kota : <select name=’kota’>
<option value=”>pilih kota</option>
</select>
</form>
5. Pada tampilan combo box tersebut masih belum terdapat data provinsi maupun kota. Nah sekarang kita akan mengambil data dari database kemudian kita masukkan ke dalam combo box tersebut. Combo box yang akan kita isi adalah combo box provinsi karena combo box kota akan mengikuti hasil dari combo box provinsi.

<?php
mysql_connect(‘localhost’,’root’,’root’) or die(“Koneksi gagal”);
mysql_select_db(‘belajar’) or die(“Database tidak bisa dibuka”);
?>
<form name=’form1′ method=’post’ id=’form_combo’>
pilih provinsi : <select name=’provinsi’>
<option value=”>pilih provinsi</option>
<?php
$prov = mysql_query(“SELECT * FROM provinsi order by id asc”);
while($hasil = mysql_fetch_array($prov)){
echo “<option value=’$hasil[id]’>$hasil[prov]</option>”;
}
?>
</select>
<br/>
pilih kota : <select name=’kota’>
<option value=”>pilih kota</option>
</select>
</form>
Keterangan: pada baris ke 1 – 4 merupakan kode untuk mengkoneksikan dengan database. Sedangkan 8 – 13 merupakan baris untuk mengambil data dan menampilkan ke combo box provinsi.
Tampilan
combo box
6. Setelah itu kita akan membuat inti dari aplikasi tersebut, yaitu ketiak combo box provinsi memilih jawa timur maka pada combo box kota akan memunculkan nama-nama kota yang ada di jawa timur yang ada pada table kota yang sudah dibuat tadi. Kita akan membuat 1 file lagi dengan ekstensi .php
Combo_kota.php

<script language='javascript'>
function showKab()
{
<?php
mysql_connect(‘localhost’,’root’,’root’) or die(“Koneksi gagal”);
mysql_select_db(‘belajar’) or die(“Database tidak bisa dibuka”);
// membaca semua propinsi
$query = “SELECT * FROM provinsi ORDER BY id ASC”;
$hasil = mysql_query($query);
// membuat if untuk masing-masing pilihan propinsi beserta isi option untuk combobox kedua
while ($data = mysql_fetch_array($hasil))
{
$prov = $data[‘id’];
// membuat IF untuk masing-masing propinsi
echo “if (document.form1.provinsi.value == \””.$prov.”\”)”;
echo “{“;
// membuat option kota untuk masing-masing propinsi
$query2 = “SELECT * FROM kota WHERE id_prov = ‘$prov’ ORDER BY id_kota ASC”;
$hasil2 = mysql_query($query2);
$content = “document.getElementById(‘kot’).innerHTML = \””;
while ($data2 = mysql_fetch_array($hasil2))
{
$content .= “<option value='”.$data2[‘id_kota’].”‘>”.$data2[‘kota’].”</option>”;
}
$content .= “\””;
echo $content;
echo “}\n”;
}
?>
}
</script>
Kode diatas akan menampilkan data yang ada di table ‘kota’ berdasarkan ‘id’ pada table ‘provinsi’ dan akan ditampilkan pada combo box kota.
7. Setelah selesai pada file combo_kota.php, kita akan seditki mengubah pada file sebelumnya.
Hasil akhir dari kode setelah perubahan adalah sebagai berikut:

<?php
include(“combo_kota.php”);
?>
<?php
mysql_connect(‘localhost’,’root’,’root’) or die(“Koneksi gagal”);
mysql_select_db(‘belajar’) or die(“Database tidak bisa dibuka”);
?>
<form name=’form1′ method=’post’ id=’form_combo’>
pilih provinsi : <select name=’provinsi’ onchange=’showKab()’>
<option value=”>pilih provinsi</option>
<?php
$prov = mysql_query(“SELECT * FROM provinsi order by id asc”);
while($hasil = mysql_fetch_array($prov)){
echo “<option value=’$hasil[id]’>$hasil[prov]</option>”;
}
?>
</select>
<br/>
pilih kota : <select name=’kota’ id=’kot’>
<option value=”>pilih kota</option>
</select>
</form>
Keterangan : pada baris awal terdapat tambahan kode yang berfungsi memanggil file combo_kota.php yang sudah kita buat sebelumnya. Pada kode HTML untuk menampilkan combo box provinsi ditambahi atribut onchange=’showKab()’, atribut ini akan memanggil fungsi showKab() ketika ada perubahan nilai dari combo box tersebut. Kemudian pada combo box kota terdapat atribut id=’kot’untuk menginisialisasi combo box tersebut.
Sekarang kita akan lihat hasil dari program yang sudah kita buat:
1. Ketika provinsi jawa barat dipilih:
combo jabar
2. Ketika provinsi jawa timur dipilh:
combo jatim
3. Ketika provinsi jawa tengah dipilih:
combo jateng