Selasa, 02 April 2013

Sistem Informasi Ujian Online PHP MYSQL

Pada artikel kali ini saya akan membahas tentang web untuk ujian online. dimana web ini akan menampilkan soal-soal berupa pilihan ganda. adapun alur programnya adalah sebagai berikut :

  1. User daftar akun
  2. User melakukan login
  3. User menjawab soal-soal
  4. User mengirim jawaban
  5. Program menampilkan hasil jawaban user
  6. Selesai
Adapun untuk menginput soal-soal ujian online, telah disediakan halaman untuk administrator. Pada halaman ini admin dapat menginput, update, delete soal ujian online.  untuk masuk kehalaman admin caranya :
  • Alamat http://localhost/ujian-online/admin
  • Username : admin
  • Password : admin
Halaman Admin Input Soal

Tabel Soal
Sedangkan untuk databasenya, saya menggunakan tabel_soal untuk menyimpan soal-soal ujian online. field publish untuk mengatur soal tersebut di tampilkan atau tidak ke user. sedangkan field tipe untuk membagi soal-soal menjadi beberapa tipe (untuk tipe silahkan dikembangkan)
Potongan skrip untuk mengecek Jawaban user
<?php
if(isset($_POST['submit'])){
$pilihan=$_POST["pilihan"];
$id_soal=$_POST["id"];
$jumlah=$_POST['jumlah'];
$score=0;
$benar=0;
$salah=0;
$kosong=0;
for ($i=0;$i<$jumlah;$i++){
//id nomor soal
$nomor=$id_soal[$i];
//jika user tidak memilih jawaban
if (empty($pilihan[$nomor])){
$kosong++;
}else{
//jawaban dari user
$jawaban=$pilihan[$nomor];
//cocokan jawaban user dengan jawaban di database
$query=mysql_query(“select * from tabel_soal where id_soal=’$nomor’ and jawaban=’$jawaban’”);
$cek=mysql_num_rows($query);
if($cek){
//jika jawaban cocok (benar)
$benar++;
}else{
//jika salah
$salah++;
}}
$score = $benar*5;
}}
?>
Download

Tutorial Cara Upload Gambar Dengan AJAX PHP

Sebenarnya hal ini tidak beda jauh dengan cara mengupload foto dengan PHP, hanya saja dengan menggunakan ajax, maka cara kerjanya lebih cepat dan dinamis.

Tutorial Cara Upload Gambar dengan AJAX PHP akan menggunakan cara yang sama dengan yang digunakan di tutorial tersebut, ditambahan sedikit trik dan javascript. Untuk meng-upload gambar dengan AJAX diperlukan bantuan  <iframe>. Di tutorial upload gambar dengan PHP digunakan html form seperti di bawah:

  1. <!--form to upload file-->  
  2. <form name="formupload" method="post" enctype="multipart/form-data" action="script/to/upload/file.php">  
  3.    Picture : <input name="picture" type="file" />  
  4.    <input type="submit" name="upload" value="Upload" />  
  5. </form>  
Perlu sedikit perubahan di html form yang digunakan untuk mengupload file seperti berikut:

  1. <iframe name="upload-frame" id="upload-frame" style="display:none;"></iframe>  
  2. <form name="formupload" method="post" enctype="multipart/form-data" action="upload.php" 
  3. target="upload-frame" onsubmit="startUpload();">  
  4.    Picture : <input name="picture" type="file" />  
  5.    <input type="submit" name="upload" value="Upload" />  
  6. </form>  
  7. <div id="uploaded-picture">  
  8. <!-- div tempat photo yang telah diupload ditampilkan -->  
  9. </div>  
  10. <script type="text/javascript" src="jquery.js"></script>  
  11. <script type="text/javascript">  
  12. function startUpload(){  
  13.   $("#uploaded-picture").html("loading...");  
  14. }  
  15.   
  16. function displayPicture(pictureUrl){  
  17.   var img = new Image();  
  18.   $(img).load(function(){  
  19.     $(this).hide();  
  20.     $("#uploaded-picture").html($(this));  
  21.     $(this).fadeIn();  
  22.   }).attr('src', pictureUrl)  
  23.   .error(function(){  
  24.     alert("gagal menampilkan gambar");  
  25.   });  
  26. }  
  27. </script>  
Di baris 1 ditambahkan html tag <iframe> dengan atribut name="upload-frame", id="upload-frame" dan menggunakan atribut style="display:none;" agar <iframe> tersembunyi. Di bagian tag <form> 

baris 2 ditambahkan atribut target="upload-frame", atribut target ini diisi dengan hal yang sama dengan atribut name"upload-frame" dari tag <iframe>. 

Baris 6 menambahkan tag <div/> tempat menampilkan gambar yang telah diupload. 

Baris 9 menambahkan javascript jquery. Baris selanjutnya membuat dua function javascript, startUpload() untuk menampilkan text loading saat gambar sedang diupload dan displayPicture(pictureUrl) untuk menampilkan gambar setelah selesai diupload.

Langkah selanjutnya yang perlu dilakukan adalah membuat script untuk mengupload file.

  1. <?php  
  2. //file upload.php  
  3.    $fileName = $_FILES['picture']['name'];  
  4.    $fileSize = $_FILES['picture']['size'];  
  5.    $fileError = $_FILES['picture']['error'];  
  6.    $success = false;  
  7.    if($fileSize > 0 || $fileError == 0){  
  8.      $move = move_uploaded_file($_FILES['picture']['tmp_name'], 'photo/'.$fileName); //atau ke directory yang dinginkan  
  9.      if($move){  
  10.     $success = true;  
  11.      }  
  12.    }  
  13.   
  14. echo '<script type="text/javascript">';  
  15.   if($success){  
  16.     echo "parent.displayPicture('photo/$fileName');";  
  17.   }else{  
  18.     echo "alert('Upload gagal $fileError');";  
  19.   }  
  20. echo '</script>';  
  21. ?>  


Jika file gagal diupload maka akan ditampilkan alert dan jika file berhasil diupload maka akan dipanggil function displayPicture().

Selamat Mencoba

Membuat Submit Form Dengan Ajax Menggunakan jQuery dan PHP

Halo smua ,, kali ini saya akan membagikan bagaimana cara untuk membuat submit form atau proses dari suatu form dengan menggunakan Ajax Jquery. Oke langsung saja ke TKP ...!!!
Studi kasus kali ini adalah contoh penggunaan Ajax untuk mengirimkan data dalam sebuah form dan memprosesnya. Salah satu kelebihan menggunakan form berbasis Ajax dibandingkan form konvensional adalah: kita tidak perlu meninggalkan form selama form dikirimkan/diproses.
Untuk contoh ini, saya menggunakan dua buah file, yang pertama adalah file ajaxform.html untuk menampilkan form nya, dan file proses.php untuk memproses data yang dikirimkan dan menampilkan hasilnya.

Script pada file ajaxform.html nya adalah sebagai berikut :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$(document).ready(function() {
 
 $().ajaxStart(function() {
  $('#loading').show();
  $('#result').hide();
 }).ajaxStop(function() {
  $('#loading').hide();
  $('#result').fadeIn('slow');
 });
 
 $('#myForm').submit(function() {
  $.ajax({
   type: 'POST',
   url: $(this).attr('action'),
   data: $(this).serialize(),
   success: function(data) {
    $('#result').html(data);
   }
  })
  return false;
 });
})
Dalam mengimplementasikan Ajax, pada file form.html ini kita menggunakan fungsi ajax () pada jQuery. Fungsi ini memiliki sebuah argumen yaitu berupa object (pasangan key/value), dan yang akan saya gunakan di antaranya sebagai berikut:
  • type: jenis request yang dipakai, bisa ‘POST’ atau ‘GET
  • url: url yang akan digunakan untuk memproses data. karena pada form sudah terdapat nilai action (proses.php) maka saya tinggal mengambil nilai dari action tsb menggunakan $(this).attr('action')
  • data: data yang dikirimkan, dalam format querystring. untuk menghasilkan querystring dari form, saya menggunakan fungsi serialize()
  • success: fungsi yang akan dijalankan jika request berhasil, dengan sebuah argumen berupa data yang dikembalikan dari server, dalam hal ini adalah hasil output dari file proses.php (hasil output ini akan saya tampilkan ke dalam sebuah div dengan id="result" )
Sedangkan file proses.php yang akan memproses data yang dikirimkan, isinya adalah sebagai berikut:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
//validasi
if (trim($_POST['nim']) == '') {
 $error[] = '- NIM harus diisi';
}
if (trim($_POST['nama']) == '') {
 $error[] = '- Nama harus diisi';
}
if (trim($_POST['tempat_lahir']) == '') {
 $error[] = '- Tempat Lahir harus diisi';
}
//dan seterusnya
 
if (isset($error)) {
 echo '<b>Error</b>: <br />'.implode('<br />', $error);
} else {
 /*
 jika data mau dimasukkan ke database,
 maka perintah SQL INSERT bisa ditulis di sini
 */
 
 $data = '';
 foreach ($_POST as $k => $v) {
  $data .= "$k : $v<br />";
 }
 echo '<b>Form berhasil disubmit. Berikut ini data anda:</b>';
 echo '<br />';
 echo $data;
}
die();
?>
Setelah file proses.php ini berhasil dijalankan dalam browser anda masing-masing maka hasil outputnya akan ditampilkan pada element div yang berada pada file ajaxform.html

Untuk lebih jelasnya anda bisa melihat demonya pada Link dibawah ini :
Lihat Demo Ajax Form Disini


Anda juga dapat mendownload source code nya di sini:


Klik Disini Untuk Download

Membuat Berita Dinding Auto Refresh Seperti Twitter dengan jQuery dan PHP

Halo sahabat Belajar Pintar PHP, kali ini saya akan memberikan source code php yang tentunya bisa saya jamin anda akan sangat menyukainya. Pada kasus ini kita akan melibatkan bantuan dari Ajax Jquery. Penasaran ??? Oke langsung saja.
Anda Tau kan Twitter ?? kalau kita masuk ke halaman depan twitter.com, maka akan kita lihat semacam berita dinding yang menampilkan status atau berita terbaru dari para twitter. Berita terbaru tersebut ditampilkan secara scrolling, kemudian menngunakan efek fade in. Pada artikel kali ini kita akan belajar membuat seperti itu, dimana pada program kita kali ini, kita akan menampilkan lima berita terbaru secara scolling dan fade in (dari pudar mejadi jelas). Kemudian program kita secara periodik akan mengecek ke database, jika ada berita terbaru, maka akan langsung kita update di berita dinding.

Wall Twitter

Sekarang mari kita lihat algoritma dan kode dari program ini.

Algoritma :

  1. Membuat database user dan berita
  2. Mengambil 5 berita terbaru dari database
  3. Memasukkan 5 berita ke dalam suatu variabel array, supaya gampang melakukan proses scrolling
  4. Melakukan scrolling 5 berita terbaru tersebut
  5. Mengecek berita terbaru setiap 4 detik, jika ada yang terbaru, tambahkan ke dalam variabel array untuk scrolling tersebut.
Berikut Kode Lengkapnya
Berikut adalah struktur tabel_user dan tabel_berita
CREATE TABLE `tabel_user` (
  `nomor` int(5) NOT NULL auto_increment,
  `userid` varchar(30) NOT NULL,
  `password` varchar(30) NOT NULL,
  `nama` varchar(30) NOT NULL,
  `email` varchar(30) NOT NULL,
  `photo` varchar(50) NOT NULL,
  PRIMARY KEY  (`nomor`)
);
CREATE TABLE `tabel_berita` (
  `nomor` int(5) NOT NULL auto_increment,
  `user_nomor` int(5) NOT NULL,
  `waktu` datetime NOT NULL,
  `berita` tinytext NOT NULL,
  PRIMARY KEY  (`nomor`)
);

1. Pada halaman index.php, Copy-kan kode php di bawah ini :

<html>
<head>
<title>Berita dinding seperti twitter</title>
<style>
body{background-color:#93C9FF;font-family:verdana;font-size:10pt}
#papan{width:600;height:300;border:#efefef 1px solid;
background-color:white;overflow:hidden}
.p{background-color:white;height:70;text-align:left;
border-bottom:#cdcdcd 1px solid;padding:5}
.x{background-color:white;height:70;text-align:left;
border-bottom:#cdcdcd 1px solid;display:none;padding:5}
a{color:#306DA3;text-decoration:none}
</style>
<script type="text/javascript" src="jquery-1.4.3.min.js"></script>
<script>
var i = 5;
var jumlah;
var brt = new Array();
var rotasi = 5;
var nomorakhir;
var posisiar;
$(document).ready(function(){
    jumlah = $("#jumlahberita").html();
    jumlah = parseInt(jumlah);
    nomorakhir = $("#nomorakhir").html();
    for(x=1;x<=jumlah;x++){
        brt[x] = $("#drz"+x).html(); //mengambil berita ,menjadi array brt[]
    }
    cek();
    putar();
});
function cek(){
    $.ajax({
        url: "cekdata.php",
        data: "akhir="+nomorakhir,
        cache: false,
        success: function(msg){
            if(msg!=""){
                data = msg.split("||");
                nomorakhir = data[0];
                brt.push(data[1]); //tambahkan berita baru ke array brt[] di posisi akhir
                jumlah++;
                rotasi = jumlah;
            }
        }
    });
    var waktucek = setTimeout("cek()",4000);
}
function putar(){
    if(jumlah>4){                   //kita putar atau scroll jika jumlah berita lebih dari 4
        $("#papan").prepend("<div id=drz"+i+" class=x><span id=s"+i+">"+brt[rotasi]+"<br></span></div>");
        $("#s"+i).hide();
        $("#drz"+i).slideDown(400); //fungsi untuk melakuan scrolldown
        $("#s"+i).fadeIn(3000);     //fungdi untuk menampilkan berita secara fade in
        rotasi--;
        i++;
        if(rotasi<=(jumlah - 5)){
            rotasi = jumlah;
        }
    }
    var waktuputar = setTimeout("putar()",4000);
}
</script>
</head>
<body>
<center>
<br>
<div id=papan>
<?php
include "koneksi.php";
$i = 1;
//mengambil 5 berita terbaru dari database
$berita = mysql_query("SELECT * FROM tabel_berita,tabel_user
WHERE tabel_user.nomor=tabel_berita.user_nomor
ORDER by tabel_berita.nomor DESC LIMIT 5");
while($b = mysql_fetch_array($berita)){
    echo "<div class=p id=drz$i>";
    echo "<img src='".$b['photo']."' align=left><b><a href=#>".$b['nama']."</a></b> ";
    echo "<font size=1>".$b['waktu']."</font><br>".$b['berita']."<br>";
    echo "</div>\n";
    $i++;
}
//mengambil nomor terakhir, yang nanti berguna untuk pengecekan
$akhir = mysql_query("SELECT nomor FROM tabel_berita ORDER BY nomor DESC LIMIT 1");
$a = mysql_fetch_array($akhir);
$akhirnya = $a['nomor'];
?>
</div>
<?php
$j = $i - 1;
echo "<span id=jumlahberita style='display:none'>$j</span>";
echo "<span id=nomorakhir style='display:none'>$akhirnya</span>";
?>
<p>
<script>
function buka(id,no){
    window.open("formberita.php?userid="+id+"&no="+no,"","width=500,height=400,toolbar=0");
}
</script>
Tes kirim pesan dari :<p>
<ul>
<li><a href="javascript:buka('alex',1)">Alex</a>
<li><a href="javascript:buka('budi',2)">Budi</a>
<li><a href="javascript:buka('Mitha',3)">Mitha</a>
<li><a href="javascript:buka('bagas',4)">Bagas</a>
<li><a href="javascript:buka('Luthor',5)">Luthor</a>
</ul>
</body>
</html>

2. Pada Halaman cekdata.php, untuk mengecek berita terbaru di database copy-kan code dibawah ini kedalam halaman cekdata.php :

<?php
include "koneksi.php";
$a = $_GET['akhir'];
$berita = mysql_query("SELECT * FROM tabel_berita,tabel_user
WHERE tabel_user.nomor=tabel_berita.user_nomor
AND tabel_berita.nomor>$a");
while($b = mysql_fetch_array($berita)){
    echo $b[0]."||";
    echo "<img src='".$b['photo']."' align=left><b><a href=#>".$b['nama']."</a></b> ";
    echo "<font size=1>".$b['waktu']."</font><br>".$b['berita']."<br>\n";
}
?>

Sekian dari saya dan selamat mencoba.

Download Source Code Lengkapnya pada link dibawah ini :

Download

Cara Membuat Form Entry Data, Edit/Update, Hapus Di PHP

Pemprograman dasar database merupakan komponen utama yang ada untuk dapat membuat suatu aplikasi berjalan dengan penyimpanan. Oke, kita dalam kesempatan ini akan belajar bagaimana  membuat fungsi edit, tambah dan edit di bahasa pemprograman PHP. Ini adalah fungsi dasar yang terlebih dahulu dipelajari sebelum lebih lanjut belajar PHP dengan fungsi penyimpanan yang lain.

Pertama yang perlu diketahui yaitu bagaimana membuat database dengan nama data_siswa dan tabel mhs, yang berisi field nim,nama, alamat, agama dan nomor telepon.

Setelah langkah pembuatan database selesai maka yang perlu dibuat yaitu buat folder baru di server local semisal wampserver.seperti ini caranya masuk kelocaldisk c cari wamp buat seperti berikut Wamp/www/namafolder yang akan dibuat. Kemudian buat file koneksi.php untuk koneksi ke database.

<?php
   $host="localhost";
   $user="root";
   $pass="";
   $db="data_siswa";
   $sambung=mysql_connect($host,$user,$pass);
   mysql_select_db($db,$sambung);
?>

Kita selanjutnya akan membuat index.php yang digunakan sebagai file utama sbb:
<html>
<head>
 <title>Daftar Mahasiswa</title>
</head>
<body>
<?php
 $sambung = mysql_connect("localhost", "root", "") or die ("Gagal konek ke server.");
mysql_select_db("data_siswa") or die ("Gagal membuka database.");
?>
<table border="5">
<tr>
<th>NIM</th>
<th>Nama Mahasiswa</th>
<th>Alamat</th>
<th>Agama</th>
<th>No_tlpn</th>
<th colspan="3">Aksi</th>
</tr>
<?php
$query = "select * from mhs";
$result = mysql_query($query, $sambung);
//$no = 0;
while ($buff = mysql_fetch_array($result)){
//$no++;
?>
 <tr>
 <td><?php echo $buff['nim']; ?></td>
 <td><?php echo $buff['nama']; ?></td>
 <td><?php echo $buff['alamat']; ?></td>
 <td><?php echo $buff['agama']; ?></td>
 <td><?php echo $buff['notlpn']; ?></td>
 <td><a href="edit.php?nim=<?php echo $buff['nim']; ?>">Edit</a> |
  <td><a href="hapus.php?nim=<?php echo $buff['nim']; ?>">Hapus</a>
 </tr>
 <?php
};
mysql_close($sambung);
?>
</table>
<p align="left"><a href="tambah.html">Tambah Data</a></p>
</body>
</html>

File utama sudah jadi sekarang fungsi untuk memasukan data buat dengan nama entry.php sbb:

<?php
include("koneksi.php");
      $nim = $_POST['nim'];
     $nama = $_POST['nama'];
     $alamat = $_POST['alamat'];
     $agama = $_POST['agama'];
     $notlpn = $_POST['notlpn'];
                 
$query = mysql_query("insert into mhs values  ('$nim','$nama','$alamat','$agama','$notlpn')");
echo "Data Telah disimpan<br>
<a href=\"index.php\">Kembali</a>";
?>

Kita perlu membuat file tampilan tambah data dengan nama tambah.html sbb:

<html>
<head><title>Tambah Data</title></head>
<body>
<h3><p align="left">Tambah Data Mahasiswa</p></h3>
<form name="form1" method="post" action="entry.php">
<table>
<tr><td>NIM</td> <td><input type="text" name="nim" size="12"></td></tr>
<tr><td>Nama</td> <td><input type="text" name="nama" size="30"></td></tr>
<tr><td>Alamat</td><td><input type="text" name="alamat" size="50"></td></tr>
<tr><td>Agama</td><td><input type="text" name="agama" size="10"></td></tr>
<tr><td>No. Tlpn</td><td><input type="text" name="notlpn" size="15"></td></tr>
<tr><td><input value="Simpan" name="submit" type="submit" /></td></tr>
<tr><td><input value="ulangi" type="reset" /></td></tr>
<tr><td><input value="Kembali" type="button"  onClick="self.history.back()"></td></tr>
</table>
</form>
</body>
</html>
Fungsi update data dengan file update.php  sbb:

<?php
include("koneksi.php");
   $nim = $_POST['nim'];
     $nama = $_POST['nama'];
     $alamat = $_POST['alamat'];
     $agama = $_POST['agama'];
     $notlpn = $_POST['notlpn'];
                 $query = mysql_query("update mhs set nama='$nama', alamat='$alamat', agama='$agama', notlpn='$notlpn' where nim='$nim'");
echo "Data Telah diupdate<br>
<a href=\"index.php\">Kembali</a>";
?>

Buat Fungsi hapus data dengan file hapus.php sbb:

<?php
include("koneksi.php");
mysql_query("DELETE from mhs WHERE nim='$_GET[nim]'");
echo"Data Telah dihapus<br>
<a href=\"index.php\">Kembali</a>";
?>

Terakhir buat fungsi edit dengan file name edit.php sbb:

<?php
 $sambung = mysql_connect("localhost", "root", "") or die ("Gagal konek ke server.");
mysql_select_db("data_siswa") or die ("Gagal membuka database.");
//$edit=mysql_query("SELECT * FROM mhs WHERE nim='$_GET[nim]'");
//$r_edit=mysql_fetch_array($edit);
$nim = $_GET['nim'];
$query = "select * from mhs where nim='$nim'";
$result =  mysql_query($query, $sambung) or die("gagal melakukan query");
     $buff = mysql_fetch_array($result);
                 mysql_close($sambung);
?>
<html>
<head><title>Edit Data</title></head>
<body>
<form name="form1" method="post" action="update.php">
<table>
<tr>
<td>Nim</td><td><input type="text" name="nim" value="<?php echo $buff['nim']; ?>"></td></tr>
<tr><td>Nama</td><td><input type="text" name="nama" value="<?php echo $buff['nama']; ?>"></td></tr>
<tr><td>Alamat</td><td><input type="text" name="alamat" value="<?php echo $buff['alamat']; ?>" size="50"></td></tr>
<tr><td>Agama</td><td><input type="text" name="agama" value="<?php echo $buff['agama']; ?>"></td></tr>
<tr><td>No. tlpn</td><td><input type="text" name="notlpn" value="<?php echo $buff['notlpn']; ?>"></td></tr>
<tr>
<input value="Simpan" type="submit" name="submit"/>
<input type="button" value="Kembali" onClick="self.history.back()"></td></tr>
</table>
</form>
</body>
</html>
Setelah semua file dibuat jalan kan localhost dan ketik dengan format localhost/nama folder/index.php.
Selamat berjuang membuat fungsi edit, tambah, hapus di php. 
Semoga sukses...

Tipe - Tipe Data yang didukung oleh MySQL

Oke Sahabat setia Belajar Pintar PHP, Pada artikel ini kita akan membahas tipe - tipe data yang didukung oleh MySQL. Pemilihan tipe data merupakan suatu hal yang cukup penting dalam mengelola server. Salah satu sebabnya adalah berkaitan dengan ruang di harddisk dan memori yang akan “digunakan” oleh data-data tersebut. Terkadang kita mengabaikan hal ini dan hanya ingin mengetahui tipe data tertentu saja tanpa mau tahu tipe data yang lainnya.
Berikut ini akan diberikan tipe-tipe data yang didukung oleh MySQL yang terambil dari dokumentasi MySQL. Tipe - tipe data ini diberikan dalam bentuk yang siap dituliskan pada sintaks-sintaks MySQL, misalnya Create Table. Pada tipe-tipe data tersebut terdapat beberapa atribut yang memiliki arti sebagai berikut:
  • M, menunjukkan lebar karakter maksimum. Nilai M maksimum adalah 255.
  • D,  menunjukkan jumlah angka di belakang koma. Nilai maksimum D adalah 30 tetapi dibatasi oleh nilai M, yaitu tidak boleh lebih besar daripada M-2.
  • Atribut yang diberi tanda [ dan ] berarti pemakaiannya adalah optional.
  • Jika atribut ZEROFILL disertakan, MySQL akan otomatis menambahkan atribut UNSIGNED.
  • UNSIGNED adalah bilangan tanpa tanda di depannya (misalnya tanda negatif).
Inilah tipe-tipe data Mysql tersebut:
  • TINYINT[(M)] [UNSIGNED] [ZEROFILL]
Integer yang sangat kecil jangkauan nilainya, yaitu -128 hingga 127. Jangkauan unsigned adalah 0 hingga 255.
  • SMALLINT[(M)] [UNSIGNED] [ZEROFILL]
Integer yang kecil jangkauan nilainya, yaitu -32768 hingga 32767. Jangkauan unsigned adalah 0 hinga 65535.
  • MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]
Integer tingkat menengah. Jangkauan nilainya adalah -8388608 hingga 8388607. Jangkauan unsigned adalah 0 hingga 16777215.
  • INT[(M)] [UNSIGNED] [ZEROFILL]
Integer yang berukuran normal. Jangkauan nilainya adalah -2147483648 hingga 2147483647. Jangkauan unsigned adalah 0 hingga 4294967295.
  • INTEGER[(M)] [UNSIGNED] [ZEROFILL]
Sama dengan INT.
  • BIGINT[(M)] [UNSIGNED] [ZEROFILL]
Integer berukuran besar. Jangkauan nilainya adalah -9223372036854775808 hingga 9223372036854775807. Jangkauan unsigned adalah 0 hingga 18446744073709551615.
  • FLOAT(precision) [ZEROFILL]
Bilangan floating-point. Tidak dapat bersifat unsigned. Nilai atribut precision adalah <=24 untuk bilangan floating-point presisi tunggal dan di antara 25 dan 53 untuk bilangan floating-point presisi ganda.
  • FLOAT[(M,D)] [ZEROFILL]
Bilangan floating-point presisi tunggal. Tidak dapat bersifat unsigned. Nilai yang diijinkan adalah -3.402823466E+38 hingga -1.175494351E-38 untuk nilai negatif, 0, and 1.175494351E-38 hingga 3.402823466E+38 untuk nilai positif.
  • DOUBLE[(M,D)] [ZEROFILL]
Bilangan floating-point presisi ganda. Tidak dapat bersifat unsigned. Nilai yang diijinkan adalah -1.7976931348623157E+308 hingga -2.2250738585072014E-308 untuk nilai negatif, 0, dan 2.2250738585072014E-308 hingga 1.7976931348623157E+308 untuk nilai positif.
  • DOUBLE PRECISION[(M,D)] [ZEROFILL] dan REAL[(M,D)] [ZEROFILL]
Keduanya sama dengan DOUBLE.
  • DECIMAL[(M[,D])] [ZEROFILL]
Bilangan floating-point yang “unpacked”. Tidak dapat bersifat unsigned. Memiliki sifat mirit dengan CHAR.   Kata “unpacked'' berarti bilangan disimpan sebagai string, menggunakan satu karakter untuk setiap digitnya. Jangkauan nilai dari DECIMAL sama dengan DOUBLE, tetapi juga tergantung dai nilai atribut M dan D yang disertakan. Jika D tidak diisi akan dianggap 0. Jika M tidak diisi maka akan dianggap 10. Sejak MySQL 3.22 nilai M harus termasuk ruang yang ditempati oleh angka di belakang koma dan tanda + atau -.
  • NUMERIC(M,D) [ZEROFILL]
Sama dengan DECIMAL.
  • DATE
Sebuah tanggal. MySQL menampilkan tanggal dalam format 'YYYY-MM-DD'. Jangkauan nilainya adalah '1000-01-01' hingga '9999-12-31'.
  • DATETIME
Sebuah kombinasi dari waktu (jam) dan tanggal. MySQL menampilkan waktu dan tanggal dalam format 'YYYY-MM-DD HH:MM:SS'. Jangkauan nilainya adalah '1000-01-01 00:00:00' hingga '9999-12-31 23:59:59'.
  • TIMESTAMP[(M)]
Sebuah timestamp. Jangkauannya adalah dari '1970-01-01 00:00:00' hingga suatu waktu di tahun 2037. MySQL menampilkan tipe data TIMESTAMP dalam format YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD, atau YYMMDD, tergantung dari nilai M, apakah 14 (atau tidak ditulis), 12, 8, atau 6.
  • TIME
Tipe data waktu. Jangkauannya adalah '-838:59:59' hingga '838:59:59'. MySQL menampilkan TIME dalam format 'HH:MM:SS'.
  • YEAR[(2|4)]
Angka tahun, dalam format 2- atau 4-digit (default adalah 4-digit). Nilai yang mungkin adalah 1901 hingga 2155, 0000 pada format 4-digit, dan 1970-2069 pada format 2-digit (70-69).
  • CHAR(M) [BINARY]
  • VARCHAR(M) [BINARY]
String dengan lebar bervariasi. Nilai M adalah dari 1 hingga 255 karakter. Jika nilai M adalah 10 sedangkan   data yang disimpan hanya terdiri dari 5 karakter, maka lebar data tersebut hanya 5 karakter saja, tidak ada tambahan spasi.
  • TINYBLOB dan TINYTEXT
Sebuah BLOB (semacam catatan) atau TEXT dengan lebar maksimum 255 (2^8 - 1) karakter.
  • BLOB dan TEXT
Sebuah BLOB atau TEXT dengan lebar maksimum 65535 (2^16 - 1) karakter.
  • MEDIUMBLOB dan MEDIUMTEXT
Sebuah BLOB atau TEXT dengan lebar maksimum 16777215 (2^24 - 1) karakter.
  • LONGBLOB dan LONGTEXT
Sebuah BLOB atau TEXT dengan lebar maksimum 4294967295 (2^32 - 1) karakter.
  • ENUM('value1','value2',...)
Sebuah enumerasi, yaitu objek string yang hanya dapat memiliki sebuah nilai, dipilih dari daftar nilai 'value1', 'value2', ..., NULL atau nilai special "" error. Sebuah ENUM maksimum dapat memiliki 65535 jenis nilai.
  • SET('value1','value2',...)
Sebuah set, yaitu objek string yang dapat memiliki 0 nilai atau lebih, yang harus dipilih dari daftar nilai 'value1', 'value2', .... Sebuah SET maksimum dapat memiliki 64 anggota.
 Sekian Tutorial Mysql dari saya, semoga bermanfaat bagi kita semua.
Thanks ...!!!

Kumpulan Perintah MYSQL dan penjelasannya

Hai Sahabat Setia Belajar Pintar PHP, dalam dunia pemrograman website, kita pasti tidak terlepas dari peran sebuah database, dan hampir seluruh website di dunia ini memiliki databasenya masing-masing. Dalam kasus ini saya akan membahas tentang MYSQL karena MYSQL adalah salah satu database yang paling banyak digunakan oleh para web developer dalam pembuatan website. Oke tanpa banyak basa-basi, kita langsung ke TKP ...!!!

SQL (Structured Query Language) adalah bahasa query yang digunakan untuk mengakses basis data relasional. Perintah SQL meliputi perintah-perintah untuk menyimpan, menerima, memelihara, dan mengatur akses ke basis data serta untuk memanipulasi dan menampilkan data dari database. Perintah - perintah SQL yang sering digunakan untuk web database:
 

Create database
Untuk membuat database, perintah umumnya: CREATE database nama_database.
 

Create table
Untuk membuat tabel, perintah umumnya: CREATE table nama_tabel ( namafield1 tipe_data not null, namafield2 tipe_data not null,… ).
 

Select
Untuk mengambil data dari suatu tabel untuk ditampilkan. Perintah umumnya: SELECT nama_field FROM nama_tabel (WHERE kondisi). “WHERE” tidak harus ada.
 

Insert
Untuk menyisipkan data pada tabel di suatu basis data. Perintah umumnya: INSERT INTO nama_tabel (field1,field2,…) VALUES (nilai1,nilai2,…).
 

Delete
Untuk menghapus sebuah record pada tabel. Perintah umumnya: DELETE FROM nama_tabel WHERE kondisi.
 

Update
Untuk memperbarui nilai suatu data di suatu sistem basis data. Perintah umumnya:UPDATE nama_tabelSET field=’nilai‘WHERE kondisi.
 

Alter Table
Untuk memodifikasi tabel baik menambah, menghapus, maupun mengganti field/kolom yang ada pada tabel.Menambah Field: ALTER TABLE nama_tabel ADD nama_field tipe_data;Mengubah Field: ALTER TABLE nama_tabel CHANGE nama_field_lama nama_field_baru tipe_data;Menghapus Field: ALTER TABLE nama_tabel DROP nama_field.
 

Drop
Untuk menghapus tabel dan database.Menghapus tabel: DROP TABLE nama_tabel;Menghapus database: DROP DATABASE nama_database;
 

Perintah-perintah pada SQL ini nantinya akan sangat bermanfaat ketika kita membuat halaman web dinamis (baik dengan PHP atau ASP) yang berbasis database.