How to use sweetalert2 in php

I have a code to insert data to MySQL which is working well, I want to replace the current java script alert to sweetalert2. I went through all forums but couldn't find anything. can anyone help me? Thank you.

<?php
//session_start();
//include "dbcon.php";
error_reporting(0);

$conn = new PDO('mysql:host=localhost; dbname=fleet','root', 'root'); 

$department=$_POST['department'];
$employee=$_POST['employee'];
$approver=$_POST['approver']; 
$depart_date=$_POST['depart_date'];
$return_date=$_POST['return_date'];
$depart_time=$_POST['depart_time'];
$return_time=$_POST['return_time'];
$depart_place=$_POST['depart_place'];
$arrival_place=$_POST['arrival_place'];
$reason=$_POST['reason'];
$request_timestamp=$_POST['request_timestamp'];    
$approver_email = $_POST['approver_email'];
//employee_name = $_POST['employee_name'];  
$employee_name = $_POST['employee_name'];
$approver_name = $_POST['approver_name'];
$employee_title = $_POST['employee_title'];
//$no_of_passengers = '';
//$name_of_passengers = '';


$no_of_passengers = $_POST['no_of_passengers'];
$name_of_passengers = $_POST['name_of_passengers'];

//$no_of_passengers2 = $_POST['no_of_passengers2'];
//$name_of_passengers2 = $_POST['name_of_passengers2'];

//$no_of_passengers2 = '';
//$name_of_passengers2 = '';

$sql2='';

//include "mail.php";

// $no_of_passengers2 = $_POST['no_of_passengers2'];
// $name_of_passengers2 = $_POST['name_of_passengers2'];

if (isset($_POST['submit'])) {

       // $sql2='';

        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

        $sql = "INSERT INTO fms_booking_request (requested_by, approver, approving_dept, no_of_passengers, name_of_passengers, departure_place, arrival_place, reason, request_timestamp,departure_date, return_date, departure_time, return_time)
        VALUES ('$employee', '$approver', '$department', '$no_of_passengers', '$name_of_passengers', '$depart_place', '$arrival_place', '$reason','$request_timestamp','$depart_date', '$return_date','$depart_time','$return_time')";

        $conn->exec($sql);
        //$conn->exec($sql2);

        /*echo "<br><br>You have successfully booked for a vehicle.<br>
              An emial is being sent to approver, Please wait for 5 seconds.<br>
              *<br>
              **<br>
              ***<br>
              ****<br>
              *****<br>
              ******<br>";
        */
        include "mail.php";


        echo "<script>alert('Successfully booked for a vehicle, email has been sent to approver'); window.location='vehicle_booking_form.php'</script>";

} 

else{

    echo "<script>alert('Please try again!'); window.location='vehicle_booking_form.php'</script>";
}

?>

I want to use this sweetalert

Swal.fire({
  position: 'top-end',
  type: 'success',
  title: 'Your work has been saved',
  showConfirmButton: false,
  timer: 1500
})

Upvotes: 0

Views: 43411

Answers (3)

Sohaib El Mediouni
Sohaib El Mediouni

Reputation: 195

you can use this sweetalert https://sweetalert.js.org/guides/#getting-started and then you can do

echo '<script type="text/javascript">sweetAlert("Congratulations !","Successfully booked for a vehicle, email has been sent to approver","success")</script>';

echo '<script type="text/javascript">sweetAlert("Error !","Try again !","error")</script>';

Upvotes: 1

Budimir Skrtic
Budimir Skrtic

Reputation: 419

You need to download and include sweetalert js library or use an online version.

<!-- SweetAlert2 -->
<script type="text/javascript" src='../files/bower_components/sweetalert/js/sweetalert2.all.min.js'> </script>
<!-- SweetAlert2 -->
<link rel="stylesheet" href='../files/bower_components/sweetalert/css/sweetalert2.min.css' media="screen" />

Then in the code you replace all js alert to swal.

 Swal.fire({
   position: 'top-end',
   type: 'success',
   title: 'Your work has been saved',
   showConfirmButton: false,
   timer: 1500
 });

All other options for sweetalert2 you can find here https://sweetalert2.github.io/

Upvotes: 2

Zain Farooq
Zain Farooq

Reputation: 2964

For using it in php you can use the following code. First, you have to include the sweetalert library as I have included. Then you can use the sweet alert as I have used in the echo. Sweetalert doesn't load until the dom elements get loaded. So to tackle this situation I have used jquery's $(document).ready() function.

NOTE: Don't forget to include jquery library at the top as well

<head>
  <script src="jquery-3.3.1.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js"></script>
</head>

<?php

echo '
<script type="text/javascript">

$(document).ready(function(){

  swal({
    position: "top-end",
    type: "success",
    title: "Your work has been saved",
    showConfirmButton: false,
    timer: 1500
  })
});

</script>
';
 ?>

Upvotes: 6

Related Questions