簡體   English   中英

重定向到另一個頁面后,php彈出成功消息

[英]Php pop up successfull message after redirect to another page

我目前正在使用在線預訂系統。在下面的腳本中,我構建了一個腳本,其中包含所有詳細信息,並在成功后將其重定向到另一頁。 我的問題是如何在標題頁上彈出成功的消息。

這是腳本

$statement = $db->prepare("INSERT INTO bookings (customerid, pname,cnumber, paddress, daddress, via, pdate, hours, mins, luggage, vtype, pnum, info) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)");
      $statement->bind_param('issssssiiisis', $user_id, $pname, $number, $pickupaddress, $dropaddress, $via, $date, $hours, $minutes, $luggages, $vtype, $passengers, $additional);

      if($statement->execute()){
            header('Location: activebookings.php');
        }
      }else{
      die('Error : ('. $mysqli->errno .') '. $mysqli->error);
      }
      $statement->close();
      }

最簡單的解決方案是為此使用會話。

if($statement->execute()){
    $_SESSION['message'] = "Your message here";
    header('Location: activebookings.php');
}

(如果您此時尚未使用會話,則可能需要先調用session_start()

然后在您的activebookings.php頁面上從會話中讀取它(同樣,您可能需要先調用session_start() ):

if (isset($_SESSION['message'])) {
    echo '<script type="text/javascript">alert("' . $_SESSION['message'] . '");</script>';
    unset($_SESSION['message']);
}

您需要取消會話中的消息設置,以確保訪問者刷新頁面后不會再次看到彈出窗口。

您可以在標頭之前使用$ _SESSION變量,將一個名為status的會話變量設置為1或類似的名稱,然后在activebookings上檢查該會話變量,如果存在該變量,則可以回顯彈出模式所需的JavaScript。

在預訂頁面上

$_SESSION['status'] = 1;

在活動預訂上(您要彈出的位置)

$status = $_SESSION['status']

if($status)
echo '<script>popup();</script>'

使用echo來顯示js警報,如下所示:

echo "<script>alert('Success');</script>";

如果要將會話數據放入警報中,請確保您的消息中沒有任何“”或“”以免干擾語法

像這樣:

echo "</script>alert("'.$_SESSION['your data'].'");</script>";

希望我有所幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM