gpt4 book ai didi

php - 无法在 PHP 中显示 session 消息?

转载 作者:行者123 更新时间:2023-12-04 00:08:10 24 4
gpt4 key购买 nike

我在我的类文件中设置 session 消息 $_SESSION['op_status'] = 'MY MESSAGE HERE'; 然后重定向页面 header("location:news.php") ; 页面重定向到 news.php 但 session 消息未显示。

配置.php:

<?php
session_start();
// DATABASE CONFIURATION GOES HERE
?>

新闻.php:

<?php
require_once 'config.php';
require_once 'classes/class.news.php';
$objNews = new News();

if(isset($_POST['submit']) && $_POST['submit'] == 'add')
$objNews->add();

?>

<span class='text-warning'><?php echo $_session['op_status']; ?></span>

class.news.php:

public function add() {
if(){
// SOME CODE GOES HERE
} else {
$_SESSION['op_status'] == 'Already Exist';
}
}

最佳答案

您需要在 header() 之后使用 exit()。

 $_SESSION['msg']="Hello";
header("Location: account.php");
exit();

然后在account.php中使用

 echo $_SESSION['msg'];

确保 session_start(); 在您要显示/创建 session 消息的每个页面上。

与其使用这种方式,我更喜欢使用下面的函数。 (在 Bootstrap HTML 标记中区分它是错误消息还是成功)

 function _redirect($url=NULL, $message=NULL, $message_type=NULL){
$_SESSION['sess_flash_message']= array();
if($message){
switch($message_type){
case 'success': $_SESSION['sess_flash_message'][] = '<div class="alert alert-success"><button data-dismiss="alert" class="close" type="button">×</button>'.$message.'</div>';break;
case 'error': $_SESSION['sess_flash_message'][] = '<div class="alert alert-error"><button data-dismiss="alert" class="close" type="button">×</button>'.$message.'</div>';break;
case 'notice': $_SESSION['sess_flash_message'][] = '<div class="alert alert-info"><button data-dismiss="alert" class="close" type="button">×</button>'.$message.'</div>';break;
case 'warning': $_SESSION['sess_flash_message'][] = '<div class="alert alert-block"><button data-dismiss="alert" class="close" type="button">×</button>'.$message.'</div>';break;
default: $_SESSION['sess_flash_message'][] = $message;
}
}
if($url) {
header("Location: ".$url);
} else {
header("Location: ".$_SERVER['HTTP_REFERER']);
}
exit();
ob_flush();
}

并调用_redirect('login.php','你需要先登录!','warning');

关于php - 无法在 PHP 中显示 session 消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27766441/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com