php 会话 ID 重定向

发布于 2024-12-08 03:42:12 字数 447 浏览 0 评论 0原文

我尝试做的是使用 $_SESSION['user_id'] 检查 'user_id' 是否 = “number”,例如 56,如果是这样加载页面,如果没有将用户重定向到 "billing/".$_SESSION['user_id'].".php";

到目前为止,

<?php
    if ($_SESSION['user_id']) === 56) {
        //do nothing
    } else {
          header("Location: billing/".$_SESSION['user_id'].".php");
          exit();   
    }
?>

我知道这段代码是错误的,但希望它能传达我的意思试图完成。 预先感谢您的帮助和代码片段。

What I am try to do is use $_SESSION['user_id'] to check if 'user_id' is = to "number", say 56 for example, if so load page, if not redirect user to "billing/".$_SESSION['user_id'].".php";

So far I have this

<?php
    if ($_SESSION['user_id']) === 56) {
        //do nothing
    } else {
          header("Location: billing/".$_SESSION['user_id'].".php");
          exit();   
    }
?>

I know this code is wrong but hopefully it conveys what I am trying to accomplish.
Thanks in advance for your help and code snippets.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

抱着落日 2024-12-15 03:42:12
  1. 请勿根据答案编辑问题中的代码。你让人无法理解你在说什么。
    如果您想添加某些内容 - 将其添加到原始文本下方。

  2. 提出明确、明确的问题。描述您面临的问题以及您需要什么样的解决方案。

  3. 单独的事情。事实上,会话与重定向无关。如果您想知道如何使用会话 - 询问如何使用会话。如果您已经拥有有效且经过验证的会话变量,但不知道重定向 - 询问重定向。如果您不知道如何比较值,请询问。如果您了解一切,但不确定代码样式的一些附加功能 - 请提出这个特定问题。

现在,你的问题是什么?

  1. do not edit the code in your question based on the answers. You are making it impossible to understand what are you talking about.
    If you want to add something - ADD it below the original text.

  2. Ask clear, certain question. Describe the problem you face and what kind of solution you need.

  3. Separate matters. As a matter of fact, sessions has nothing to do with redirects. If you want to know how to use sessions - ask how to use sessions. If you already have valid and verified session variable but have no idea of redirects - ask about redirects. If you don't know how to compare values - ask it. If you know everything but not certain about some bells and whistles of the code styling - ask this particular question.

Now, what is your question?

猫九 2024-12-15 03:42:12

你已经很接近了,但是你可以使用 php 函数 http_redirect代替重定向,更简洁(需要 PECL 库):

<?php
    if ($_SESSION['user_id'] == 56) {
        //do nothing
    } else {
        http_redirect("billing/".$_SESSION['user_id'].".php", array(), true, HTTP_REDIRECT_PERM);
    }
?>

You're pretty close, but you could use the php function http_redirect instead for the redirect, to be more concise (requires the PECL library):

<?php
    if ($_SESSION['user_id'] == 56) {
        //do nothing
    } else {
        http_redirect("billing/".$_SESSION['user_id'].".php", array(), true, HTTP_REDIRECT_PERM);
    }
?>
述情 2024-12-15 03:42:12

header() 的 PHP 文档 提供了很多有关如何使用标头功能的信息。最重要的是:

  • 在调用 header() 之前,请确保没有回显或发送任何 html 或文本到浏览器。
  • header() 之后需要一个 exit();,因为您已经完成了页面渲染,并且某些浏览器更喜欢它。
  • HTTP/1.1 需要一个绝对 URI 作为 » Location: 的参数,包括方案、主机名和绝对路径,因此您需要将完整的 URL 放在“Location:”之后。例如,请参阅 php 文档。

The PHP Doc for header() gives a lot of info about how to use the header function. The most important is:

  • Make sure no html or text has been echoed or sent to the browser before you call header().
  • You need an exit(); after header() since you're done rendering the page and some browsers prefer it.
  • HTTP/1.1 requires an absolute URI as argument to » Location: including the scheme, hostname and absolute path so you'll want to put the full URL after 'Location:'. See php doc for example.
紫罗兰の梦幻 2024-12-15 03:42:12

为什么不检查相反的情况呢?为了提高可读性,明智的做法是使用 {} 而不是“.”。 (只要你的编辑强调这一点)

<?php 
if($_SESSION["user_id"] != 56) {
    header("location: billing/{$_SESSION['user_id']}.php");
    die();
}
?>

Why not check the opposite? And for readability it is wise to use {} not "." (as long as your editor highlights this)

<?php 
if($_SESSION["user_id"] != 56) {
    header("location: billing/{$_SESSION['user_id']}.php");
    die();
}
?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文