Skip to main content

cara cek data yang ada di database pake jquery ???

October 1, 2009 by gedoyman

gedoyman's picture

para master semuanya :D. Saya mau bikin aplikasi seperti:

1. jadi pagenya ada 3 input text.
2. pertama saya masukin inputan di input text ke- 1 (berupa primary key unik),
3. lalu setelah kursor dipindahkan ke ke input text ke -2. si jquerynya nyari ke database, apakah value input text ke -1 sudah pernah diinput???
4. Jika belum, maka anggapannya form tersebut untuk input data baru
5. Jika sudah, keluar pilihan alert message, apakah data ingin dihapus???
6. Jika Ya, maka codeiginiter akan menjalankan fungsi delete
7. jika tidak, maka codeiginiter akan menampilkan form update/edit yg berisi data dari databse yg pernah dicari saat meletakan kursor mouse di input text ke-2.

seperti itulah kira2..... gimana caranya gan :(.... konpius punya nih

thx b4

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

BLS:

October 22, 2009 by syabac, 1 year 24 weeks ago
Comment: 5688

syabac's picture

ID: txt-1, txt-2, txt-3
kira2 begini: (diedit sendiri ya)

$(document).ready(
    $('#txt-1').blur(function(){
          var text = this.value;
          if(text != '') {
               $.post('/form/check/' + text, function(data){
                    if(data=='kosong'){
                            //new form
                    }else{
                   //prompt to user whether wants edit or delete the data
                    }
                 });
          }
    });
);

Controller form.php

function check($text=''){
     if(! empty($text)){
             //query
             if( not exists) { //check if exists or not
                  echo 'kosong';
            }else{
                 echo 'ada';
             }
     }
}

Caranya gimana? :p

January 8, 2010 by gedoyman, 1 year 13 weeks ago
Comment: 5799

gedoyman's picture

Bos, gw uda berhasil ngebuat aplikasinya, tq bgt akhirnya pikiran gw sedikit terbuka mengenai codeigniter + jquery.....

cuma ada 1 kendala disini, pada saat menjalankan form id=edit...... fungsi $("#txt_angka2").blur(function () { gak bisa dijalankan seperti di form id=add.....

Biar lebih jelas sourcenya seperti ini :

Databse : spp_db

-- phpMyAdmin SQL Dump
-- version 2.6.4-pl1
-- <a href="http://www.phpmyadmin.net<br />
--" title="http://www.phpmyadmin.net<br />
--">http://www.phpmyadmin.net<br />
--</a> 
-- Host: localhost
-- Generation Time: Jan 08, 2010 at 07:16 PM
-- Server version: 4.1.14
-- PHP Version: 5.0.5
-- 
-- Database: `spp_db`
-- 
 
-- --------------------------------------------------------
 
-- 
-- Table structure for table `spp`
-- 
 
CREATE TABLE `spp` (
  `no` varchar(50) collate latin1_general_ci NOT NULL default '',
  `dibayar_ke` varchar(100) collate latin1_general_ci NOT NULL default '',
  `jumlah_angka` int(10) NOT NULL default '0',
  `jumlah_huruf` varchar(50) collate latin1_general_ci NOT NULL default '',
  `keperluan` varchar(50) collate latin1_general_ci NOT NULL default '',
  `penjelasan` longtext collate latin1_general_ci NOT NULL,
  `dibuat_oleh` varchar(50) collate latin1_general_ci NOT NULL default '',
  `tipe_dokumen` varchar(5) collate latin1_general_ci NOT NULL default '',
  PRIMARY KEY  (`no`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
 
-- 
-- Dumping data for table `spp`
-- 
 
INSERT INTO `spp` VALUES ('005/SPP/IT/X/2009', 'hendra', 1900000, '  satu juta sembilan ratus   ribu  rupiah #', 'biaya dinas', 'damri  = 20.000\r\nhotel  = 19.000\r\n\r\ntotal  =  39.000', 'hendra', 'SPP');
INSERT INTO `spp` VALUES ('tes', '', 0, '', '', '', '', '');
INSERT INTO `spp` VALUES ('005/SPP/KOM-SALES/X/2009', '', 0, '', '', '', '', '');

controller : spp.php

class Spp extends Controller {
 
	function Spp()
	{
		parent::Controller();	
	}
 
	function index(){
		$this->load->view('form_spp');	
	}
 
 
 
	function check($text=''){
 
	 	$panjang = strlen($text);
	 	$pan = $panjang-1;
	 	$kata="";
	 	$suku="";
	 	for($n=0 ; $n<=$pan; $n++){
					$suku = substr($text,$n,1);
					if($suku==" "){
						$suku = "/";
					}
					$kata = $kata."".$suku;
		}
		$sql = mysql_query("SELECT * FROM spp WHERE no='".$kata."'");
		$jml = mysql_num_rows($sql);
		if($jml>0){
			echo"ada";
		}	
	 //echo "ini dari check 2 :" . $kata . "";
    // die();
     //return $text;
	 }
 
	function tampil2($text=''){
		$panjang = strlen($text);
	 	$pan = $panjang-1;
	 	$kata="";
	 	$suku="";
	 	for($n=0 ; $n<=$pan; $n++){
			$suku = substr($text,$n,1);
			if($suku==" "){
				$suku = "/";
			}
			$kata = $kata."".$suku;
		}	
 
		//echo "$kata";
		$sql = mysql_query("SELECT * FROM spp WHERE no='".$kata."'");
 
		while($row = mysql_fetch_array($sql)){
		echo"<table width='800'>
		<tr>
		<td width='30%'>No Ref </td>
		<td width='1%'>:</td>
		<td><input type='text' name='txt_no' id='txt_no' value='$row[0]' readonly/></td>
		</tr>
		<tr>
		<td width='30%'>Currency</td>
		<td width='1%'>:</td>
		<td>
		<input type='radio' name='txt_curr' value='IDR' checked>IDR
		<input type='radio' name='txt_curr' value='USD'>USD
 
		</td>
		</tr>
		<tr>
		<td>Harap Dibayarkan Kepada</td>
		<td>:</td>
		<td><input type='text' name='txt_kepada' value='$row[1]'/></td>
		</tr>
		<tr>
		<td>Sejumlah Uang</td>
		<td>:</td>
		<td><input type='text' name='txt_angka2' value='$row[2]' id='txt_angka2'/></td>
		</tr>
		<tr>
		<td>terbilang</td>
		<td>:</td>
		<td><input type='text' name='txt_huruf2' size='70' id='txt_huruf2' readonly=''></td>
		</tr>
		<tr>
		<td>Keperluan</td>
		<td>:</td>
		<td><input type='text' name='txt_keperluan' value='$row[4]' size='70'/></td>
		</tr>
		<tr>
		<td>Penjelasan</td>
		<td>:</td>
		<td><textarea name='txt_penjelasan' rows='10' cols='50'>$row[5]</textarea></td>
		</tr>
		<tr>
		<td>Dibuat Oleh (Kepala Divisi)</td>
		<td>:</td>
		<td><input type='text' name='txt_angka' value='$row[6]'/></td>
		</tr>
		<tr>
		<td>Type Document</td>
		<td>:</td>
		<td>
			<input type='radio' name='txt_tipe' value='SPP' checked>SPP
			<input type='radio' name='txt_tipe' value='SPDB'>SPDB
			<input type='radio' name='txt_tipe' value='Cheese'>SPPB
		</td>
		</tr>
		<tr>
		<td></td>
		<td></td>
		<td>
		<input type='submit' name='txt_submit' value='Print'/>
		</td>
		</tr>
		</form>
		</table>";
		}
	}
 
 
	function tampil($text=''){
 
	}
 
	function rubah($text=''){
		$pan = strlen($text);
 
		$panjang = $pan-1;
		if($panjang == '6'){
			$satuan[0] = "juta";
			$satuan[1] = "ratus";
			$satuan[2] = "puluh";
			$satuan[3] = "ribu";
			$satuan[4] = "ratus";
			$satuan[5] = "puluh";
			$satuan[6] = "rupiah";
		}
		$gabung="";
		$kata="";
		for($n=0; $n<=$panjang; $n++){
			$suku = substr($text, $n, 1);
			if($suku=='1'){
 
					$suku = "se";
 
			}else if($suku=='2'){
				$suku="dua";
			}else if($suku=='3'){
				$suku="tiga";
			}else if($suku=='4'){
				$suku="empat";
			}
 
			$gabung = $gabung." ".$suku." ".$satuan[$n];
		}
 
		echo"$gabung #";
	}
 
	function terbilang2($satuan){
		$huruf = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas", "duabelas", "tigabelas", "empatbelas", "limabelas", "enambelas", "tujuhbelas", "delapanbelas", "sembilanbelas", "dua puluh", "dua puluh satu", "dua puluh dua", "dua puluh tiga");
		if ($satuan < 12){
		echo " " . $huruf[$satuan];
		}elseif ($satuan < 20){
		echo $huruf[($satuan - 10)] . "belas";
		}elseif ($satuan < 100){
		echo $huruf[($satuan / 10)] . " puluh " . $huruf[($satuan % 10)];
		}elseif ($satuan < 200){
		echo "seratus " . $huruf[($satuan - 100)];
		}elseif ($satuan < 1000){
		echo $huruf[substr(($satuan / 100),0,1)] . " ratus " . $huruf[substr(($satuan % 100),0,1)];
		}/*elseif ($satuan < 2000)
		echo " seribu" . terbilang($satuan - 1000);
		elseif ($satuan < 1000000)
		echo terbilang($satuan / 1000) . " ribu" . terbilang($satuan % 1000);
		elseif ($satuan <)
		echo terbilang($satuan / 1000000) . " juta" . terbilang($satuan % 1000000);
		elseif ($satuan >=)
		echo "Hasil terbilang tidak dapat di proses karena nilai uang terlalu besar!"; 
		*/
	}
 
	function terbilang($bilangan) {
 
  $angka = array('0','0','0','0','0','0','0','0','0','0',
                 '0','0','0','0','0','0');
  $kata = array('','satu','dua','tiga','empat','lima',
                'enam','tujuh','delapan','sembilan');
  $tingkat = array('','ribu','juta','milyar','triliun');
 
  $panjang_bilangan = strlen($bilangan);
 
  /* pengujian panjang bilangan */
  if ($panjang_bilangan > 15) {
    $kalimat = "Diluar Batas";
    return $kalimat;
  }
 
  /* mengambil angka-angka yang ada dalam bilangan,
     dimasukkan ke dalam array */
  for ($i = 1; $i <= $panjang_bilangan; $i++) {
    $angka[$i] = substr($bilangan,-($i),1);
  }
 
  $i = 1;
  $j = 0;
  $kalimat = "";
 
 
  /* mulai proses iterasi terhadap array angka */
  while ($i <= $panjang_bilangan) {
 
    $subkalimat = "";
    $kata1 = "";
    $kata2 = "";
    $kata3 = "";
 
    /* untuk ratusan */
    if ($angka[$i+2] != "0") {
      if ($angka[$i+2] == "1") {
        $kata1 = "seratus";
      } else {
        $kata1 = $kata[$angka[$i+2]] . " ratus";
      }
    }
 
    /* untuk puluhan atau belasan */
    if ($angka[$i+1] != "0") {
      if ($angka[$i+1] == "1") {
        if ($angka[$i] == "0") {
          $kata2 = "sepuluh";
        } elseif ($angka[$i] == "1") {
          $kata2 = "sebelas";
        } else {
          $kata2 = $kata[$angka[$i]] . " belas";
        }
      } else {
        $kata2 = $kata[$angka[$i+1]] . " puluh";
      }
    }
 
    /* untuk satuan */
    if ($angka[$i] != "0") {
      if ($angka[$i+1] != "1") {
        $kata3 = $kata[$angka[$i]];
      }
    }
 
    /* pengujian angka apakah tidak nol semua,
       lalu ditambahkan tingkat */
    if (($angka[$i] != "0") OR ($angka[$i+1] != "0") OR
        ($angka[$i+2] != "0")) {
      $subkalimat = "$kata1 $kata2 $kata3 " . $tingkat[$j] . " ";
    }
 
    /* gabungkan variabe sub kalimat (untuk satu blok 3 angka)
       ke variabel kalimat */
    $kalimat = $subkalimat . $kalimat;
    $i = $i + 3;
    $j = $j + 1;
 
  }
 
  /* mengganti satu ribu jadi seribu jika diperlukan */
  if (($angka[5] == "0") AND ($angka[6] == "0")) {
    $kalimat = str_replace("satu ribu","seribu",$kalimat);
  }
 
  echo"$kalimat rupiah #";
 
}
 
 
 
 
 
}

view : form_spp.php

Welcome to CodeIgniter

/css/css_nya.css" rel="stylesheet"/>

$(document).ready(function(){
$("#edit").hide();
var site = "<?=base_url();?>index.php/";

$("#txt_no").blur(function(){
var text = this.value;

var panjang = text.length;
var sampai = panjang-1;

if(text != '') {
var bil="";
var suku="";

for(var n=0 ; n<=sampai; n++){
suku = text.substr(n,1);
if(suku=="/"){
suku = " ";
}
bil = bil+suku;
}

$.post(""+site+"spp/check/"+bil, function(data){

if(data=="ada"){

var konfirmasi = confirm("Data Sudah Ada, Apa Anda Ingin Menghapus?");
if(konfirmasi){
alert("Anda Tidak Dapat Menghapus");
}else{
$("#add").slideUp("slow");

$.ajax({
type:"POST",
url:""+site+"spp/tampil2/"+bil,
data:bil,
success:function(response){
$("#edit").html(response);

},
dataType:"html"
});

$("#edit").slideDown("slow");
}
}

});
}
});

$("#txt_angka").blur(function () {
if(this.value != '') {
$.post(""+site+"spp/terbilang/"+this.value, function(data){
$("#txt_huruf").val(data);

});
}

});

$("#txt_angka2").blur(function () {
if(this.value != '') {
$.post(""+site+"spp/terbilang/"+this.value, function(data){
$("#txt_huruf2").val(data);

});
}

});

});
/*$(document).ready(function(){
$("#edit").hide();
var site="index.php/";

$("#txt_reset").click(function(){
//alert("jhjkhkj");
$("#edit").hide("slow");

$("#add").show("slow");
$("#txt_reset").value('');

});

$("#txt_angka").blur(function () {
if(this.value != '') {
$.post(""+site+"spp/terbilang/"+this.value, function(data){
$("#txt_huruf").val(data);

});
}

});

$("#txt_angka2").blur(function () {
if(this.value != '') {
/*$.post(""+site+"spp/terbilang/"+this.value, function(data){
$("#txt_huruf2").val('');
$("#txt_huruf2").val(data);

});
alert("tes");
}

});

$("#txt_no").blur(function () {
var text = this.value;
//alert(text);
//text = '"' + text + '"';
//text = text.replace('/', " ");
//alert(text);
var panjang = text.length;
var sampai = panjang-1;
if(text != '') {
var bil='';
var suku='';
for(var n=0 ; n<=sampai; n++){
suku = text.substr(n,1);
if(suku=="/"){
suku = " ";
}
bil = bil+suku;
}
//alert(bil);
/*$.post(""+site+"spp/check/"+text, function(data){
alert(data);
if(data=="kosong"){
alert("kosong");
}else{
//var tanya = confirm(data+" sudah ada di database, ingin delete?");
//if(tanya==true){
//lakukandelete(data);
//}else{
//document.getElementById("input2").value = data;
//}
}
});*/

/*$.ajax({
type: "POST",
url: ""+site+"spp/check/",
data: text,
success: function(msg){
if(msg=="ada"){
var tanya = confirm(msg+" sudah ada di database, ingin delete?");
if(tanya == true){
alert("data akan dihapus!!!!!");
}else{
alert("data akan diedit");
}
}else{
alert(msg);
}
}
});

$.post(""+site+"spp/check/"+bil, function(data){
//if(data=='kosong'){
//alert("kosong");
//}else{
//alert(data);
if(data=="ada"){
var konfirmasi = confirm("Data Sudah Ada, Apa Anda Ingin Menghapus?");
if(konfirmasi){
alert("Anda Tidak Dapat Menghapus");
}else{
$("#add").hide("slow");

$.ajax({
type:"POST",
url:""+site+"spp/edit/"+bil,
data:bil,
success:function(response){
$("#edit").html(response);
//$("#edit").slideDown("slow");
},
dataType:"html"
});
$("#add").hide("slow");
$("#edit").show("slow");
}
}
//}
});
}
});

});*/

Form SPP

No Ref
:

Currency
:

IDR
USD

Harap Dibayarkan Kepada
:

Sejumlah Uang
:

Terbilang
:

Keperluan
:

Penjelasan
:

Dibuat Oleh (Kepala Divisi)
:

Type Document
:

SPP
SPDB
SPPB

Jquery - CodeIgniter

October 17, 2009 by mul14, 1 year 25 weeks ago
Comment: 5678

mul14's picture

Diasumsikan text anda memiliki id text1, text2, text3.

Gunakan $('#text2').click(); untuk mendeteksi klik pada text2. Atau bisa gunakan attribut onclick.

Untuk mengecek isi data text1 $('#text1').val();

Untuk request data (insert, delete, update) ke codeigniter gunakan $.get() atau $.post().

Untuk konfirmasi gunakan var action = confirm('Apakah data ingin dihapus?');

Premium Drupal Themes by Adaptivethemes