Postingan lainnya
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
memberikan kondisi else untuk data yg diupdate gagal pada sweetalert 2
ini script yg di .Js
const flashData = $('.flash-data').data('flashdata');
if (flashData) {
Swal.fire({
title: 'Success',
text: 'Data Berhasil ' + flashData,
icon: 'success'
});
} //rencana saya kasih else untuk notif data yg gagal
//tombolHapus
$('.konfirmasiHapus').on('click', function (e) {
e.preventDefault();
const href = $(this).attr('href');
Swal.fire({
title: 'Apakah anda yakin?',
text: "Data akan dihapus!",
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Hapus Data!'
}).then((result) => {
if (result.isConfirmed) {
document.location.href = href;
}
})
});
ini di view untuk memanggil notif dari sweetalertnya
<div class="flash-data" data-flashdata="<?= $this->session->flashdata('notif'); ?>"></div>
ini di controllernya
if ($cek) {
$this->session->set_flashdata('notif', 'Diubah', 'Success');
redirect('Kitir');
}else{
$this->session->set_flashdata('notif', 'Diubah', 'Error');
redirect('Kitir');
}
Tanggapan
Coba post juga kode yang berkaitan lainnya
sudah mas, sudah saya edit lengkapnya
6 Jawaban:
<div>tinggal tambahin else aja kan, else swal fire ,keterangannya error dah..</div>
Tanggapan
tidak bisa mas setelah saya kasih kondisi else langsung di Javascriptnya
Jawaban Terpilih
<div>Kalo saya biasanya gini :<br>Controller :</div><pre>if ($cek) { $notif = [ 'status' => 'success', 'message' => 'Data berhasil diubah' ]; }else{ $notif = [ 'status' => 'error', 'message' => 'Data gagal diubah' ]; } $this->session->set_flashdata('notif', $notif); redirect('Kitir');</pre><div><br>Saya taruh script ini biasanya di footer (template php-nya)<br>Javascript :</div><pre><script type="text/javascript"> <?php if(isset($_SESSION['notif']) && $_SESSION['notif'] !== ''): ?> Swal.fire({ title: "<?php echo $_SESSION['notif']['status']; ?>", text: "<?php echo $_SESSION['notif']['message']; ?>", icon: "<?php echo $_SESSION['notif']['status']; ?>", }); <?php endif; ?>
//tombolHapus $('.konfirmasiHapus').on('click', function (e) {
e.preventDefault(); const href = $(this).attr('href');
Swal.fire({ title: 'Apakah anda yakin?', text: "Data akan dihapus!", icon: 'warning', showCancelButton: true, confirmButtonColor: '#3085d6', cancelButtonColor: '#d33', confirmButtonText: 'Hapus Data!' }).then((result) => { if (result.isConfirmed) { document.location.href = href; } })
}); </script></pre><div><br>Tapi, untuk kasus agan, jika script sweetalertnya pakai file js terpisah, mungkin bisa seperti ini :<br><br>View untuk menampung nilai session dari CI-nya:</div><pre><div id="flash-data" data-type="<?= $_SESSION['notif']['status']; ?>" data-message="<?= $_SESSION['notif']['message']; ?>"></div></pre><div><br>Kemudian untuk JS-nya seperti ini :</div><pre><script type="text/javascript"> const flashData = document.getElementById("flash-data"); if(flashData) {
const notifType = flashData.getAttribute('data-type');
const notifMsg = flashData.getAttribute('data-message');
Swal.fire({
title: notifType,
text: notifMsg,
icon: notifType,
});
}
//tombolHapus $('.konfirmasiHapus').on('click', function (e) {
e.preventDefault(); const href = $(this).attr('href');
Swal.fire({ title: 'Apakah anda yakin?', text: "Data akan dihapus!", icon: 'warning', showCancelButton: true, confirmButtonColor: '#3085d6', cancelButtonColor: '#d33', confirmButtonText: 'Hapus Data!' }).then((result) => { if (result.isConfirmed) { document.location.href = href; } })
}); </script></pre><div>Semoga membantu!</div>
Tanggapan
masih ada error Undefined index: notif mas sebelumnya makasih banget udah bantu
di viewnya mas
<div>Terimasih mas Ahanafi sudah membantu, tapi masih ada bug untuk sweetalertnya masih belum muncul notifnya setelah update data. itu ada yg salah di viewnya atau di controllernya mas?<br><br>untuk Javascriptnya yg ditaruh di footer udah saya coba juga, problemnya sama seperti yang diatas tidak muncul sweetalertnya mas<br><br>untuk yg undefined sudah gak error lagi setelah saya tambahin isset.</div><pre><div id="flash-data" data-type="<?= isset($_SESSION['notif']['status']) ? $_SESSION['notif']['status']:''; ?>" data-message="<?= isset($_SESSION['notif']['message']) ? $_SESSION['notif']['message']:''; ?>"></div></pre>
Tanggapan
apa file sweetalert.js nya sudah di load di footer sebelumnya? Terus agan ini pake, metode yg pertama atau yg kedua ?
sudah ane load di footer mas, ane coba pertama pakai metode Js terpisah kemudian metode kedua taruh JavaScriptnya di Footer dan probelmnya sama pop up sweetalert nya tidak muncul mas
coba di console browsernya ada error ngga?
sudah saya screenshot error consolenya mas
<div>Ini ada 1 yg error di console. tapi di Kitir.php tidak sampai line 380. <br><figure data-trix-attachment="{"contentType":"image/jpeg","filename":"Screenshot_60.jpg","filesize":31698,"height":79,"url":"https://i.ibb.co/dLsvNpK/Screenshot-60.jpg","width":1362}" data-trix-content-type="image/jpeg" data-trix-attributes="{"presentation":"gallery"}" class="attachment attachment--preview attachment--jpg"><img src="https://i.ibb.co/dLsvNpK/Screenshot-60.jpg" width="1362" height="79"><figcaption class="attachment__caption"><span class="attachment__name">Screenshot_60.jpg</span></figcaption></figure><br><figure data-trix-attachment="{"contentType":"image/jpeg","filename":"Screenshot_61.jpg","filesize":71930,"height":483,"url":"https://i.ibb.co/0Bz1YHF/Screenshot-61.jpg","width":1361}" data-trix-content-type="image/jpeg" data-trix-attributes="{"presentation":"gallery"}" class="attachment attachment--preview attachment--jpg"><img src="https://i.ibb.co/0Bz1YHF/Screenshot-61.jpg" width="1361" height="483"><figcaption class="attachment__caption"><span class="attachment__name">Screenshot_61.jpg</span></figcaption></figure><br>di Kitir.php ini yg saya ubah</div><pre>$cek = $this->Perkutut_model->update_kitir($id_,$data); if ($cek) { $notif = [ 'status' => 'success', 'message' => 'Data Kitir Berhasil Diubah' ]; }else{ $notif = [ 'status' => 'error', 'message' => 'Data Kitir Gagal Diubah' ]; } $this->session->set_flashdata('notif', $notif); redirect('Kitir');</pre><div>Tapi saya cek di page yang lain error di consolenya berbeda, seperti contoh di page beranda error consolenya.<br><figure data-trix-attachment="{"contentType":"image/jpeg","filename":"Screenshot_63.jpg","filesize":29018,"height":57,"url":"https://i.ibb.co/pdyGKnb/Screenshot-63.jpg","width":1365}" data-trix-content-type="image/jpeg" data-trix-attributes="{"presentation":"gallery"}" class="attachment attachment--preview attachment--jpg"><img src="https://i.ibb.co/pdyGKnb/Screenshot-63.jpg" width="1365" height="57"><figcaption class="attachment__caption"><span class="attachment__name">Screenshot_63.jpg</span></figcaption></figure></div>
Tanggapan
errornya ngga jelas gan, coba kirim full source code footernya seperti apa
<div>ini full source code dari footer nya<br><br></div><pre><!-- ======= Footer ======= --> <footer id="footer" style="width:auto;background-color:#4263D8"> <div class="container-fixed" style="width:auto"> <div class="copyright"> &copy; Copyright <strong><span>MyKITIR | Perkutut Indonesia</span></strong>. All Rights Reserved </div>
&lt;/div&gt;
</footer><!-- End Footer -->
<a href="#" class="back-to-top"><i class="icofont-simple-up"></i></a>
<!-- Vendor JS Files --> <script src="<?php echo base_url(); ?>assets/home/vendor/jquery/jquery.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/bootstrap/js/bootstrap.bundle.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/jquery.easing/jquery.easing.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/php-email-form/validate.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/jquery-sticky/jquery.sticky.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/venobox/venobox.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/waypoints/jquery.waypoints.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/counterup/counterup.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/owl.carousel/owl.carousel.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/isotope-layout/isotope.pkgd.min.js"></script> <script src="<?php echo base_url(); ?>assets/home/vendor/aos/aos.js"></script>
<!-- Template Main JS File --> <script src="<?php echo base_url(); ?>assets/home/js/main.js"></script>
<!-- <script src="<?php echo base_url(); ?>assets/home/css/my1.js"></script> -->
</body>
<script type="text/javascript"> <?php if(isset($_SESSION['notif']) && $_SESSION['notif'] !== ''): ?> Swal.fire({ title: "<?php echo $_SESSION['notif']['status']; ?>", text: "<?php echo $_SESSION['notif']['message']; ?>", icon: "<?php echo $_SESSION['notif']['status']; ?>", }); <?php endif; ?>
if (flashData) { Swal.fire({ title: 'Success', text: 'Data Berhasil ' + flashData, icon: 'success' }); }
//tombolHapus $('.konfirmasiHapus').on('click', function (e) {
e.preventDefault(); const href = $(this).attr('href');
Swal.fire({ title: 'Apakah anda yakin?', text: "Data akan dihapus!", icon: 'warning', showCancelButton: true, confirmButtonColor: '#3085d6', cancelButtonColor: '#d33', confirmButtonText: 'Hapus Data!' }).then((result) => { if (result.isConfirmed) { document.location.href = href; } })
}); </script>
</html></pre><div>untuk di viewnya pakai yg ada sessionya apa yg awal punya saya itu kalau javascriptnya ditaruh di footer mas?</div>
<div>terimakasih banyak buat mas ahanafi sudah menyempatkan waktunya untuk menjawab problem saya, untuk kasus ini udah solved mas. cuman tinggal yg upload gagal untuk max size belum clear</div>
Tanggapan
Sama-sama gan, semangat!
siap gan terimakasih banyak:)