php session_start默认值?

问题描述:

我有一个关于会话变量的问题。php session_start默认值?

我有会话变量,需要从默认变量开始。然后我需要能够通过$_GET通过一个新的并保持更新。所以即使用户重新加载页面,它也不会回到默认值。我该如何去做这件事?谢谢!

+1

只是程序你所描述的算法的每一步,并询问**具体问题**当你拥有它。 – zerkms 2011-03-05 03:36:30

好像这些方针的东西可能的工作:

if(!isset($_SESSION['my_parm'])) 
{ 
    $_SESSION['my_parm'] = 'DEFAULT'; 
} 

if(isset($_GET['my_parm'])) 
{ 
    $_SESSION['my_parm']=$my_parm; 
} 
+0

不幸的是,这是行不通的。在我改变分页的页面之后,它并没有停留在我想要显示的页面数量上(我的mysql LIMIT),这是我试图通过的获取变量 – rick 2011-03-05 04:14:17

+0

没关系这个工作完美。谢谢! – rick 2011-03-05 04:20:19

使用

session_start(); 
$_SESSION 
下面

是在这个片段中的链接进行会话手册

http://www.php.net/manual/en/reserved.variables.session.php

+0

没错,但我需要能够将它更新到$ _GET变量,然后保持即使页面重新加载,也不会返回到开始的默认值 – rick 2011-03-05 03:44:15

+0

@rick,您可以按照zerkms回答 – sush 2011-03-05 03:50:46

你就会有session变量分配一次:如果我的理解

if (!isset($_SESSION['magic'])) { 
    $_SESSION['magic'] = isset($_GET['magic']) ? $_GET['magic'] : 1; 
} 
+0

我只需加上: else $ _SESSION ['magic'] = 1; (或任何我想我的默认是?) 因为不幸的是,它正在打破它 – rick 2011-03-05 03:55:10

+0

@ rick:当然可以。看看我的更新。 – zerkms 2011-03-05 03:56:33

+0

解开我的浏览器后,这实际上也工作!谢谢! – rick 2011-03-05 04:20:56

好吧,这将是你的方法的轮廓:

<?php 
session_start(); 
if (isset($_GET['my_variable'])) { 
    $_SESSION['my_variable'] = $_GET['my_variable']; // force new value 
} 
if (!isset($_SESSION['my_variable'])) { 
    $_SESSION['my_variable'] = $default_value; // initialize 
} 
update_value($_SESSION['my_variable']);