【问题标题】:Php, mysql, sessionphp、mysql、会话
【发布时间】:2018-05-25 10:31:39
【问题描述】:

我在从网站上的表单接收数据时遇到问题。我的意思是,在成功注册后,用户必须看到这样的字符串:Hello“name”,但我收到的不是这个,而是所有字符串,但每个字符串对于每个新用户都必须是特殊的。我怎么能用会话做到这一点?帮助。谢谢。

【问题讨论】:

  • 您在此处未向我们提供足够的信息来回答问题。文件中有什么? “运作良好”是什么意思?
  • 您是否尝试过或至少想过将您的确切问题标题输入谷歌或任何其他搜索引擎?
  • main.php/');出口; mysql_close(); } ?>
  • 那么,我需要在哪里写 header(''Location main.php"); exit();?
  • @FranzGleichmann 是的,我有,但我找不到任何东西。你能帮我解决这个问题吗?

标签: php mysql session


【解决方案1】:

这是执行适用于所有情况的重定向的好方法:

// $url contains the page to which you want to redirect the user

function redirect($url)
{
    if (!headers_sent())
        header('Location: '.$url);
    else
    {  
        echo '<script type="text/javascript">';
        echo 'window.location.href="'.$url.'";';
        echo '</script>';
        echo '<noscript>';
        echo '<meta http-equiv="refresh" content="0;url='.$url.'"/>';
        echo '</noscript>';
    }

    exit();
}

用户注册完成后使用:

redirect('successfull_registration.php');

【讨论】:

    【解决方案2】:

    header 函数用于重定向。

    <?php header('Location: thispage.php'); ?>
    

    在您要重定向到thispage.php的页面中包含这一行。

    或者如果你在某个变量中有 URL,那么这样写

    <?php header('Location: '.$URL); ?>
    

    警告!!

    不要在页面顶部添加不必要的NewLine,否则header函数将不起作用并返回header已经发送。

    【讨论】:

    • 如果您要在答案中添加警告,至少手头有具体原因,而不是“有时由于某种原因它不起作用”。
    • 原因是,如果您开始从 PHP 发送输出并 然后 尝试设置标头,您将收到 2nd paragraph of the documentation 中所述的错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多