1

我正在开发一个自定义主页背景,在我的 html 中有

<form action="'.$_SERVER['PHP_SELF'].'">
<input type="text" width="128px" name="mybg">
<input type="submit" value="Set as background">
</form>

<b style="position:absolute;height:100%;width:100%;top:0;left:0;z-index:-1;background:url('<?=$_SESSION['mybg'];?>');"></b>

和我的 php 文件:

if(isset($_GET['mybg'])){
session_set_cookie_params(3600 * 24 * 7);
session_start();
$_SESSION['mybg'] = $_GET['mybg'];
}

并且我的背景图片显示为帖子网址,该网址就像"http://si.te/?mybg=http%3A%2F%2Fabc.com%2Fpic.jpg"但是当我返回主页(index.php)并且背景图片消失时,如何在会话中保存它?

我不想使用任何 sql 请不要建议。

4

3 回答 3

0

用下面替换您的 html 表单标记行并尝试..

<form action="<?=$_SERVER['PHP_SELF']?>">
于 2012-11-03T08:51:05.710 回答
0

您的代码主要是正确的,但是您必须将条件移到session_start()外部if。否则,当您返回主页时,会话将不会启动,$_SESSION['mybg']也不会设置。

于 2012-11-03T08:51:47.693 回答
0

此行定义在您的页面顶部

session_set_cookie_params(3600 * 24 * 7);
session_start();
于 2012-11-03T08:52:21.033 回答