簡體   English   中英

多頁中的PHP Session變量

[英]PHP Session variables in multiple pages

因此,這里有page1.php:

<form action="action_form.php" method="post">
<select name="font_syle">
<option value="tahoma">Tahoma</option>
<option value="arial">Arial</option>
</select>
<input type="submit" value="Done" />
</form>

這里是action_form.php:

<?php
session_start();
$font_style = $_POST["font_syle"];
$_SESSION["font_syle"] = $font_style;
if($_SESSION["font_syle"] == 'tahoma') $font_style = 10;
else if($_SESSION["font_syle"] == 'arial') $font_style = 20;

$total = $font_style;

echo $total;
?>

而這里page.php

<?php 
ob_start();
include 'action_form.php';
ob_end_clean();

echo $total;
?>

我不知道為什么“ $ total”的值未打印在page.php上

page.php包含action_form.php $font_style的值設置為:

$font_style = $_POST["font_syle"];

由於page.php不僅通過表單發布,因此將$font_style設置$font_style空字符串。 因此,當您要回聲它時,就沒有回聲了。

您可以做echo $_SESSION["font_syle"]; 在page.php中進行打印

原因是您的表單將轉到action_form.php並將數據存儲在變量$_SESSION

當您打開page.php ,數據不再存在,因為$total不會在頁面之間移動。

解決方案是更改:

<form action="action_form.php" method="post">

對於

<form action="page.php" method="post">

要么

而是打印出會話變量。

暫無
暫無

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

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