我一直在尝试设置一个“加载更多”的功能小部件,我今天早些时候在另一个本地主机上取得了成功。但是,在另一台计算机(相同的Mac OS,MAMP等...)上,我收到会话变量的错误:未定义的索引:posts_start。
在javascript中,这些是相关的行:
<?php $number_of_posts = 2; ?>;
//<?php $_SESSION['posts_start'] = $_SESSION['posts_start'] ? $_SESSION['posts_start'] : $number_of_posts; ?>;
<?php $_SESSION['posts_start'] = 2 ?>;
var start = <?php echo $_SESSION['posts_start']; ?>;
这是使用Laravel 4,所以我已经为当前用户运行了一个会话(不需要使用session_start())。我不确定为什么这不能在这台机器上运行,但它正在开发另一台机器。有什么想法吗?谢谢。
答案 0 :(得分:0)
试试这个:
<?php $number_of_posts = 2; ?>;
<?php $_SESSION['posts_start'] = isset($_SESSION['posts_start']) ? $_SESSION['posts_start'] : $number_of_posts; ?>;
<?php $_SESSION['posts_start'] = 2 ?>;
var start = <?php echo $_SESSION['posts_start']; ?>;
答案 1 :(得分:0)
我肯定会使用Laravel的Session
库。
这个lib可以处理像这样美丽的情况......
var start = <?=Session::get('posts_start', 2) ?>;
// or this, if you use Blade syntax
var start = {{ Session::get('posts_start', 2) }};
这次电话有什么作用?如果未在会话中设置数字,它会尝试从会话中获取posts_start
,并回退到数字2
。