html kısmı
Enerji 150(6 dk sonra +10)
Sağlık 100
Seviye 6
function gorevAl()
{
//post ile isteği gönderiyoruz
$.post("gorevsorgula.php",$('#formGorev').serialize() ,function(sonuc){
if(!sonuc) {return alert('Sunucu Hatası!') }
//basarili alani true donerse islem yaptir donmezse hata bastir
if(sonuc.basarili){
//alanları yeni verilerle guncelle
$('#textEnerji').html(sonuc.enerji)
$('#textSaglik').html(sonuc.saglik)
$('#textSeviye').html(sonuc.seviye)
}else{
//hata mesaji bas
alert(sonuc.hata)
}
},'json').fail( function() {
alert('Sunucu hatası!')
})
}
php kısmı
$veri = array();
//gelen veriyi integer tipinde aldık
$inputGorev = int($_POST['gorev']);
// select * from gorevler where gorevsira = $inputGorev
//gelen işleme göre görev bilgilerini al
$sqlGetirGorev = Gorevler::find($inputGorev);
//görev varmı diye bak yoksa hata mesajı bas
if(empty($sqlGetirGorev))
//hata mesajı oluştur
$veri['hata'] = 'Görev Bulunamadı';
endif;
//oturum açan üyenin bilgilerini al
$sessionUye = $_SESSION['uye'];
//seviye kontrolu
if($sessionUye['seviye'] >= $sqlGetirGorev['seviye']):
$veri['hata'] = 'Üzgünüm görevi yerine getirecek seviyeye sahip değilsiniz';
endif;
/*
Aynı şekilde diğer kiriter kontrollerinide yapın
...
...
...
...
*/
//sistemle ilgili hata yoksa
if(empty($veri['hata']))
//yeni seviyeyi hesapla
$yeniSeviye = $sessionUye['seviye'] + $sqlGetirGorev['kazanc'];
//yeni sağlık bilgisini hesapla
$yeniSaglik = $sessionUye['saglik'] - 10;
//.... diğer kriterler
//update uyeler set seviye = $yenisEviye, saglık = $yeniSaglik ... where uyesira = $sessionUye['uyesira']
//üyeler tablosuna yeni sağlık seviye ... bilgilerini gir tabloyu güncelle
Uyeler::where('uyesira', $sessionUye['uyesira'])->update(array(
'saglik' => $yeniSeviye,
'seviye' => $yeniSaglik,
//.... diğer kriterleriniz
));
//kriterleri diziye at
$veri['saglik'] = $yeniSaglik;
$veri['seviye'] = $yenisEviye;
//true mesajı oluştur
$veri['basarili'] = 'İşleminiz başarılı';
endif;
//diziyi json formatında ekrana bas
return json_encode($veri);