【问题标题】:Undefined index: posts_start on one localhost machine, but not on another? with Laravel 4未定义的索引:posts_start 在一台 localhost 机器上,但不在另一台机器上?使用 Laravel 4
【发布时间】:2013-07-23 11:05:38
【问题描述】:

我一直在尝试设置“加载更多”功能小部件,今天早些时候我在另一个本地主机上成功了。但是,在另一台计算机(相同的 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())。我不确定为什么这在这台机器上不起作用,但它在另一台机器上起作用。有什么想法吗?谢谢你。

【问题讨论】:

  • 顺便用一下laravel的session类吧?

标签: jquery session laravel laravel-4


【解决方案1】:

我肯定会使用 Laravel 的 Session 库。 这个库可以漂亮地处理这样的情况......

var start = <?=Session::get('posts_start', 2) ?>;

// or this, if you use Blade syntax
var start = {{ Session::get('posts_start', 2) }};

这个调用有什么作用?它会尝试从 Session 中获取 posts_start,如果 Session 中未设置 number,则回退到编号 2

【讨论】:

    【解决方案2】:

    试试这个:

    <?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']; ?>;
    

    【讨论】:

      猜你喜欢
      • 2018-01-06
      • 2016-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-29
      • 2016-02-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多