v2.5.2
Giriş yap

SweetAlert 2 ile Silme işlemi (ÇÖZÜLDÜ!!!)

aydinkeskin
2,322 defa görüntülendi

merhaba arkadaşlar

kodlar aşağıdaki gibidir fakat bir türlü silme işlemi gerçekleşmiyor

sürekli fail dönüyor

JS kodları

<script>
$(document).ready(function(){

$(document).on('click', '#delete', function(e){
		e.preventDefault();
	var id = $(this).data('id');

swal({

	  	title: 'Are you sure?',
	  	text: "You won't be able to revert this!",
	  	type: 'warning',
	  	showCancelButton: true,
	  	confirmButtonColor: '#3085d6',
	  	cancelButtonColor: '#d33',
	  	confirmButtonText: 'Yes, delete it!',
	}).then((result) => {
	  	if (result.value){
	  		$.ajax({
		   		url: '/ajans/panel/include/islemler.php',
		    	// type: 'GET',
		    	type: 'POST',
		       	data: 'delete='+id,
		       	// data: id,
		       	dataType: 'json'
		    })
			
		    .done(function(response){
				// alert(id);
		     	swal('Deleted!', response.message, response.status);
		    })
		    .fail(function(){
				// alert(id);
		     	swal('Oops...', 'Something went wrong with ajax !', 'error');
		    });
	  	}

	}) 
});

});
</script>

PHP KODLARIm
if(isset($_POST['delete']) && $_SESSION['adminlogin']=="true"){

$response = array();
	// $pid = intval($_POST['id']);
	$pid = intval($_POST['delete']);

	// $query = "DELETE FROM yonetici WHERE id=:id";
	// $stmt = $db->prepare( $query );
	// $stmt->execute(array(':id'=>$pid));
	if(!empty($pid)) {
		$response['status']  = 'success';
		$response['message'] = 'Product Deleted Successfully ...';
	} else {
		$response['status']  = 'error';
		$response['message'] = 'Unable to delete product ...';
	}
	echo json_encode($response);

}




Butonlar

	     <li>   <a class="btn btn-sm btn-danger" id="delete" data-id="<?php echo $row["id"]?>" href="nojavascript...void(0)">
			<i class="fa fa-trash"></i></a>
			<button type="submit" name="delete" id="delete" data-id="<?php echo $row["id"]?>" class="btn btn-danger"><i class="fa fa-trash"></i></button>
			
			</li>
			
	ne yaptıysam çalıştıramadım.
	id yi çekiyor görüyorum ama hiç bir şekilde veriyi post etmiyor direk fait e düşüyor.
Cevap yaz
Cevaplar (10)
aydinkeskin
1709 gün önce

swal('Başarılı!', response.message, response.status).then(function(result){location.reload();});

şeklinde hallettim sorun yaşayan olursa denk gelir buraya umarım.

@tayfunerbilen

ana sayfada sorun var sanırım anasayfadan hiç bir urlye gidemiyorum yeni sekmede açmadan bişi olmuyor.

aydinkeskin
1709 gün önce

arkadaşlar sorunu hallettim

2 farklı yere islmler.php eklediğim için oluyormuş halbuki olmaması gerekiyordu
require_once ile ekleme yapıyorum sayfaya :)))

bu sefer söyle bir sorunum var sorun değilde işleyiş eksikliiği diyelim.

silme işlemi ok ise ok ye tıklayınca sayfa yenilensin diyom diyemiyorum daha doğrusu :)

		    .done(function(response){
		     	swal('Başarılı!', response.message, response.status);
				
			}).then(function(){
				location.reload();
			})
			
			
			ok ekranı tam gelirken sayfa yenileniyor haliyle :)
aydinkeskin
1709 gün önce

@mutluol

url ile ilgiiili sorun gözükmüyor 200 olarak veri gidiyor fakat success işlemini göndermiyor geri

local de bu şekilde sorun yaşıyorum
hosting de veri zaten hiç gitmiyor. id yi alıyor 200 olarak gönderiyor ama geri hiç bişi gelmiyor.

mutluol
1709 gün önce

url: '/ajans/panel/include/islemler.php' ya baştaki slashı kaldır ya da nokta koy ./ajans veya ajans/ şeklinde olmalı sorun burdan kaynaklanıyor

aydinkeskin
1709 gün önce

@sekiiiiiiiiz
şimdi tekrar kontrol ettimde gitmiyormuş islemler.php ye
ama gidiyordu demek ya bu chroma deli oluyorum her seferinde geçmişi sildirmek zorunda bırakıyor beni :S

status failed

çok anlamıyorum bu js işlerinden niye gitmiyor bu giderdi normalde.

aydinkeskin
1709 gün önce

@pcmemo
valla eski olduğu için girişmedim ona
@mutluol
evet kardeşim pasif yaptığım için get ve post olarak ayrı ayrı denedim o yüzden
@sekiiiiiiiiz
kardeşim gidiyor islemler.php ye baktım hatta uyarı bölümünü pasif ettiğimde direk lap diye siliyor melet.
çalışmamaı için bir sebeo yok ama işte

pcmemo
1709 gün önce

Şu örnek üzerinde de ilerleyebilirsin. https://okandiyebiri.com/sweet-alert-ile-silme-islemi/

mutluol
1709 gün önce

düzeltme*

$pid = intval($_POST['delete']); herhangi bir yerde kullanmadığını sonradan fark ettim en iyisi kaldır : )

mutluol
1709 gün önce

// $pid = intval($_POST['id']);

$pid = intval($_POST['delete']);

iki gelen değeride pid değişkenine atamışsın ayrıca string değerlerde intval kullanmamalısın int değeleri tam sayı olarak döndürmek için kullanılır için kullanılır ayrıca id değerini yorum satırı yapmışssın 

$id = intval($_POST['id']);
$islem = $_POST['delete']; olarak dene lütfen
sekiiiiiiiiz
1709 gün önce

url kısmını tam adres verip denermisin ve consol'a bakıp islemler.php'ye verilerin gidip gitmediğini kontrol et yani sorun jquery'demi php kısmınıda mı bunu öğren bakalım ilk önce