我有一个博客,我希望用户点击一个链接,以便能够反转颜色方案(从暗处亮到暗处亮)。此链接将在博客的每个页面上提供。
如果我没有使用CodeIgniter,我会创建一个带参数的链接(例如“index.php?inverted = true”),并在我的控制器中检测是否设置了$ _GET ['inverted'],设置$ _SESSION变量。链接将被更改,并且在设置$ _SESSION时将添加其他CSS文件。链接的新href将类似于“index.php?inverted = false”,并且$ _SESSION变量将被取消设置。它可以在站点范围内工作,而不管URI的其余部分。
我尝试在CodeIgniter中使用uri_segement函数,但因为这需要遍及整个站点,我的URI会发生变化(有时只是“index.php / controller / function”,其他时候是“index.php / controller /”功能/ PARA1 / PARA2 / para3" 各个)。因此,我不能只做我的链接:[href =“$ _ SESSION ['REQUEST_URI']。”/ inverted“]然后检测该URI段是否存在,因为我不知道段”倒“的是哪个数字此外,如果用户在同一页面上并单击链接两次,则URI会不断添加“/ inverted”。
我做了一个模拟表单,所以我可以使用$ _POST数组,但我知道这不是一个好习惯。
有什么建议吗?
答案 0 :(得分:0)
如您所述,通过POST使链接提交表单,然后设置SESSION变量,之后,向引用页面发出重定向(HTTP_REFERER)。您可以执行类似操作以关闭此选项。