[英]Why my confirm “alert” don't work on my code?
這是一個 web 應用程序的頁面,工作很簡單:
我可以看到詢問我是否要確認的“警報”。 根據答案,我轉到其他頁面。
如果我發送了我的“ if ”cicle,它就會顯示“警報”。 這是代碼
<?php
session_start();
include('../Model/gestoreAccessi.php');
include('connect.php');
?>
<script>
let result = confirm("Sei sicuro di voler procedere?");
</script>
<script>
if(!result)
result = <?php header('Location: http://www.teamjg.altervista.org/Matteo/navbar.php');?>
else
<?php
session_start();
session_unset();
session_destroy();
header('Location: http://www.teamjg.altervista.org/Matteo/index.html');
?>
</script>
所以,在我回答你的問題之前; 只是一個注釋。 PHP 和 Js 將在不同的機器上運行(即使您在本地主機上測試它,仍然將它們視為不同的機器)
所有 PHP 代碼都運行,並在后端執行,然后將任何內容發送到您的瀏覽器,然后執行 js 代碼。 PHP 不懂JS語法,只會看<?
和?>
標簽並執行其中的所有內容。
<?php
session_start();
include('../Model/gestoreAccessi.php');
include('connect.php');
?>
<script>
let result = confirm("Sei sicuro di voler procedere?");
</script>
<script>
if(!result)
result = <?php header('Location: http://www.teamjg.altervista.org/Matteo/navbar.php');?>
else
<?php
session_start();
session_unset();
session_destroy();
header('Location: http://www.teamjg.altervista.org/Matteo/index.html');
?>
</script>
當此代碼由 XAMPP(或您使用的任何引擎)發送時,首先執行 PHP,這將使代碼如下所示:
// Session will be started
// contents of ../Model/gestoreAccessi.php will be copied and run
// contents of connnect.php will be copied and run
<script>
let result = confirm("Sei sicuro di voler procedere?");
</script>
<script>
if(!result)
result = //The header is already set
else
// Location is already set
</script>
所以這是未定義的行為,因為您要發送兩個具有不同位置的 header 標簽,我最好的猜測是它會重定向到http://www.teamjg.altervista.org/Matteo/index.html
。
如果您想將用戶重定向到其他網站,您可以作為修補程序做的一件事是設置window.location.href
。 讀這個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.