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');
          }
avatar akbarimawandwicahya_google
@akbarimawandwicahya_google

11 Kontribusi 2 Poin

Diperbarui 3 tahun yang lalu

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>

avatar nanto88
@nanto88

122 Kontribusi 56 Poin

Dipost 3 tahun yang lalu

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' =&gt; 'success', 'message' =&gt; 'Data berhasil diubah' ]; }else{ $notif = [ 'status' =&gt; 'error', 'message' =&gt; 'Data gagal diubah' ]; } $this-&gt;session-&gt;set_flashdata('notif', $notif); redirect('Kitir');</pre><div><br>Saya taruh script ini biasanya di footer (template php-nya)<br>Javascript :</div><pre>&lt;script type="text/javascript"&gt; &lt;?php if(isset($_SESSION['notif']) &amp;&amp; $_SESSION['notif'] !== ''): ?&gt; Swal.fire({ title: "&lt;?php echo $_SESSION['notif']['status']; ?&gt;", text: "&lt;?php echo $_SESSION['notif']['message']; ?&gt;", icon: "&lt;?php echo $_SESSION['notif']['status']; ?&gt;", }); &lt;?php endif; ?&gt;

//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) =&gt; { if (result.isConfirmed) { document.location.href = href; } })

}); &lt;/script&gt;</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>&lt;div id="flash-data" data-type="&lt;?= $_SESSION['notif']['status']; ?&gt;" data-message="&lt;?= $_SESSION['notif']['message']; ?&gt;"&gt;&lt;/div&gt;</pre><div><br>Kemudian untuk JS-nya seperti ini :</div><pre>&lt;script type="text/javascript"&gt; const flashData = document.getElementById("flash-data"); if(flashData) {

  const notifType = flashData.getAttribute(&#039;data-type&#039;);
  const notifMsg = flashData.getAttribute(&#039;data-message&#039;);

  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) =&gt; { if (result.isConfirmed) { document.location.href = href; } })

}); &lt;/script&gt;</pre><div>Semoga membantu!</div>

avatar ahanafi
@ahanafi

815 Kontribusi 552 Poin

Dipost 3 tahun yang lalu

Tanggapan

masih ada error Undefined index: notif mas sebelumnya makasih banget udah bantu

<div>Terimasih mas Ahanafi sudah membantu, tapi masih ada bug untuk sweetalertnya masih belum muncul notifnya setelah update data.&nbsp; 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>&lt;div id="flash-data" data-type="&lt;?= isset($_SESSION['notif']['status']) ? $_SESSION['notif']['status']:''; ?&gt;" data-message="&lt;?= isset($_SESSION['notif']['message']) ? $_SESSION['notif']['message']:''; ?&gt;"&gt;&lt;/div&gt;</pre>

avatar akbarimawandwicahya_google
@akbarimawandwicahya_google

11 Kontribusi 2 Poin

Dipost 3 tahun yang lalu

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="{&quot;contentType&quot;:&quot;image/jpeg&quot;,&quot;filename&quot;:&quot;Screenshot_60.jpg&quot;,&quot;filesize&quot;:31698,&quot;height&quot;:79,&quot;url&quot;:&quot;https://i.ibb.co/dLsvNpK/Screenshot-60.jpg&quot;,&quot;width&quot;:1362}" data-trix-content-type="image/jpeg" data-trix-attributes="{&quot;presentation&quot;:&quot;gallery&quot;}" 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="{&quot;contentType&quot;:&quot;image/jpeg&quot;,&quot;filename&quot;:&quot;Screenshot_61.jpg&quot;,&quot;filesize&quot;:71930,&quot;height&quot;:483,&quot;url&quot;:&quot;https://i.ibb.co/0Bz1YHF/Screenshot-61.jpg&quot;,&quot;width&quot;:1361}" data-trix-content-type="image/jpeg" data-trix-attributes="{&quot;presentation&quot;:&quot;gallery&quot;}" 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-&gt;Perkutut_model-&gt;update_kitir($id_,$data); if ($cek) { $notif = [ 'status' =&gt; 'success', 'message' =&gt; 'Data Kitir Berhasil Diubah' ]; }else{ $notif = [ 'status' =&gt; 'error', 'message' =&gt; 'Data Kitir Gagal Diubah' ]; } $this-&gt;session-&gt;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="{&quot;contentType&quot;:&quot;image/jpeg&quot;,&quot;filename&quot;:&quot;Screenshot_63.jpg&quot;,&quot;filesize&quot;:29018,&quot;height&quot;:57,&quot;url&quot;:&quot;https://i.ibb.co/pdyGKnb/Screenshot-63.jpg&quot;,&quot;width&quot;:1365}" data-trix-content-type="image/jpeg" data-trix-attributes="{&quot;presentation&quot;:&quot;gallery&quot;}" 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>

avatar akbarimawandwicahya_google
@akbarimawandwicahya_google

11 Kontribusi 2 Poin

Dipost 3 tahun yang lalu

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>&lt;!-- ======= Footer ======= --&gt; &lt;footer id="footer" style="width:auto;background-color:#4263D8"&gt; &lt;div class="container-fixed" style="width:auto"&gt; &lt;div class="copyright"&gt; &amp;copy; Copyright &lt;strong&gt;&lt;span&gt;MyKITIR | Perkutut Indonesia&lt;/span&gt;&lt;/strong&gt;. All Rights Reserved &lt;/div&gt;

&amp;lt;/div&amp;gt;

&lt;/footer&gt;&lt;!-- End Footer --&gt;

&lt;a href="#" class="back-to-top"&gt;&lt;i class="icofont-simple-up"&gt;&lt;/i&gt;&lt;/a&gt;

&lt;!-- Vendor JS Files --&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/jquery/jquery.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/bootstrap/js/bootstrap.bundle.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/jquery.easing/jquery.easing.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/php-email-form/validate.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/jquery-sticky/jquery.sticky.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/venobox/venobox.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/waypoints/jquery.waypoints.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/counterup/counterup.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/owl.carousel/owl.carousel.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/isotope-layout/isotope.pkgd.min.js"&gt;&lt;/script&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/vendor/aos/aos.js"&gt;&lt;/script&gt;

&lt;!-- Template Main JS File --&gt; &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/js/main.js"&gt;&lt;/script&gt;

&lt;!-- &lt;script src="&lt;?php echo base_url(); ?&gt;assets/home/css/my1.js"&gt;&lt;/script&gt; --&gt;

&lt;/body&gt;

&lt;script type="text/javascript"&gt; &lt;?php if(isset($_SESSION['notif']) &amp;&amp; $_SESSION['notif'] !== ''): ?&gt; Swal.fire({ title: "&lt;?php echo $_SESSION['notif']['status']; ?&gt;", text: "&lt;?php echo $_SESSION['notif']['message']; ?&gt;", icon: "&lt;?php echo $_SESSION['notif']['status']; ?&gt;", }); &lt;?php endif; ?&gt;

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) =&gt; { if (result.isConfirmed) { document.location.href = href; } })

}); &lt;/script&gt;

&lt;/html&gt;</pre><div>untuk di viewnya pakai yg ada sessionya apa yg awal punya saya itu kalau javascriptnya ditaruh di footer mas?</div>

avatar akbarimawandwicahya_google
@akbarimawandwicahya_google

11 Kontribusi 2 Poin

Dipost 3 tahun yang lalu

<div>terimakasih banyak buat mas ahanafi sudah menyempatkan waktunya untuk&nbsp; menjawab problem saya, untuk kasus ini udah solved mas. cuman tinggal yg upload gagal untuk max size belum clear</div>

avatar akbarimawandwicahya_google
@akbarimawandwicahya_google

11 Kontribusi 2 Poin

Dipost 3 tahun yang lalu

Tanggapan

Sama-sama gan, semangat!

siap gan terimakasih banyak:)

Login untuk ikut Jawaban