jQuery ve PHP ile sayfa yenilenmeden AJAX ile veri eklemek

İlgili Konular: Php Jquery & Javascript     

Bu yazıda sayfa yenilenmeden PHP ve Jquery kullanarak veri ekleme ve eklenen verileri sayfamızda göstermeyi göreceğiz.

Öncelikle jQuery ile gelen ajax fonksiyonumuza bir göz atalım;

jQuery.ajax({
type: 'POST',//Bu kısım POST ve GET değerlerinden birini alabilir
url: 'veri_isle.php',//Verinin gönderileceği sayfa
data: 'veri=verimiz&veri_iki=verimiz_iki',//Sorgu cümlesi
error:function(){ $('#yazdir').html("Bir hata algılandı."); }, //Hata alınırsa ekrana bastırılacak veri
success: function(veri) { $('#yazdir').html(veri);}//Başarılı olursa ekrana bastırılacak veri
});
Şimdi bu kod parçasını kullanarak basitçe verilerimizi veri_isle.php sayfamıza post ediceğiz.
<form id="veri-formu">
<input name="veri"/> - <input name="veri_iki"/>
<input type="button" onclick="gonder();" value="Gönder"/>
</form>
<div id="yazdir"></div>
HTML formumuzu oluşturduk. Şimdide verilerimizi POST methodu ile gönderecek fonksiyonumuzu oluşturalım.
function gonder() {
jQuery.ajax({
type: 'POST',//Bu kısım POST ve GET değerlerinden birini alabilir
url: 'veri_isle.php',//Verinin gönderileceği sayfa
data: $('#veri-formu').serialize(),
error:function(){ $('#yazdir').html("Bir hata algılandı."); }, //Hata alınırsa ekrana bastırılacak veri
success: function(veri) { $('#yazdir').html(veri);}//Başarılı olursa ekrana bastırılacak veri
});
}
Şimdi burada değinmediğim bir nokta var
data: ‘veri=verimiz&veri_iki=verimiz_iki’

bu gördüğünüz kısma tabikide sırayla giriş tanımlayıp daha sonra o girişleri veri yerine yerleştirmeyeceğiz daha kısa bir yolu var.

$('#veri-formu').serialize();

Gördüğünüz kod parçası sayesinde id değeri veri-formu olan formdan giriş (input) isimlerini ve değerlerini (value) okur sonuç olarak aşağıdaki gibi bir sorgu cümlesi oluşturur.

veri=veri isimli girişe(input) girilen veri&veri_iki=veri_iki isimli girişe(input) girilen veri

Şimdide veri_isle.php sayfamızı oluşturalım.

function database($host,$username,$password,$database_name,$set_name){

mysql_connect($host,$username,$password) or die("Hata");

mysql_select_db($database_name) or die("Hata");

mysql_query("SET NAMES '".$set_name."'");

}

//Database fonksiyon bitti.

database("localhost","root","1234","vt adı","latin5");

//Veritabanıma bağlandım.

$veri = mysql_real_escape_string($_POST["veri"]);

$veri_iki = mysql_real_escape_string($_POST["veri_iki"]);

//Get ile gelen verimi aldım. Fakat ' şeklindeki karakterleri etkisiz hale getirmesini istedim.

$sql = "INSERT INTO tablonuz (veri,veri_iki) VALUES ('$veri','$veri_iki')" ;
@mysql_query($sql) or die("Hata algılandı");

Bu sayfada verilerimi post ile aldım ve veritabanıma ekledim. Şimdi sayfaların son hallerine bakalım;

index.php sayfamız;

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>jQuery:Sayfa yenilenmeden AJAX ile veri eklemek</title>
<script type="text/javascript" src="jquery-latest.js"></script>
<script type="text/javascript">

function gonder() {
jQuery.ajax({
type: 'POST',//Bu kısım POST ve GET değerlerinden birini alabilir
url: 'veri_isle.php',//Verinin gönderileceği sayfa
data: $('#veri-formu').serialize(),
error:function(){ $('#yazdir').html("Bir hata algılandı."); }, //Hata alınırsa ekrana bastırılacak veri
success: function(veri) { $('#yazdir').html(veri);}//Başarılı olursa ekrana bastırılacak veri
});
}

</script>
</head>

<body>

<form id="veri-formu">
<input name="veri"/> - <input name="veri_iki"/>
<input type="button" onclick="gonder();" value="Gönder"/>
</form>

<div id="yazdir"></div>

</body>

</html>

veri_isle.php sayfamız;
function database($host,$username,$password,$database_name,$set_name){

mysql_connect($host,$username,$password) or die("Hata");

mysql_select_db($database_name) or die("Hata");

mysql_query("SET NAMES '".$set_name."'");

}

//Database fonksiyon bitti.

database("localhost","root","1234","vt adı","latin5");

//Veritabanıma bağlandım.

$veri = mysql_real_escape_string($_POST["veri"]);

$veri_iki = mysql_real_escape_string($_POST["veri_iki"]);

//Get ile gelen verimi aldım. Fakat ' şeklindeki karakterleri etkisiz hale getirmesini istedim.

$sql = "INSERT INTO tablonuz (veri,veri_iki) VALUES ('$veri','$veri_iki')" ;
@mysql_query($sql) or die("Hata algılandı");

 
Alıntıdır: codersstuff.com/jquerysayfa-yenilenmeden-ajax-ile-veri-eklemek/

Yorumlar

Yeni yorum veya soru gönder

Bu alanın içeriği gizlenecek, genel görünümde yer almayacaktır.
  • PHP source code can also be enclosed in <?php ... ?> or <% ... %>.
  • You may insert videos with [video:URL]

Biçimlendirme seçenekleri hakkında daha fazla bilgi


4 + 4 =
Basit matematik sorusunuz çözünüz. Örn; 1+3= 4