简体   繁体   中英

PHP Header redirect and echo out session on next page?

i am submitting a form and then using header redirect to take the user to a new page. how can i add a session to my header redirect to say once user has been redirected echo out a div within a session saying something like form submitted?

heres what i have tried to do but can not get it to work, can someone please point me in the right direction, thanks.

submit_form.php:

header("Location: ../index.php?success=$success");

index.php:

<?php echo $_SESSION['success']; ?>
    <?php $success= "<div> CONGRATULATIONS!!!!!</DIV>"; ?>

A session value is something stored in a session started with session_start() .
What you have is a URL query parameter, which you can access with $_GET['success'] .

submit_form.php:

session_start();
$_SESSION['success'] = true;
header("Location: ../index.php?success=$success");

index.php:

session_start();
if (isset($_SESSION['success']) && $_SESSION['success']) {
   //Echo your div
}

You appear to be mixing up $_SESSION and $_GET

Try below code:

On submit_form.php page:

 $_SESSION['success'] = "YOUR SUCCESS MESSAGE";
 header("Location: ../index.php");

On index.php page:

if(isset($_SESSION['success']) && $_SESSION['success']!=""){
    echo $_SESSION['success'];
    unset($_SESSION['success']);
}

On both page, on top, put below code:

session_start();

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM