【问题标题】:How to store a session value in the textbox when the page is loaded?加载页面时如何在文本框中存储会话值?
【发布时间】:2010-12-10 14:16:06
【问题描述】:

我有一个搜索文本框。在那个框中,我想在下次加载页面时存储上一个搜索值。为此,我在单击搜索按钮时为文本框值创建了会话。但是我不知道下次加载页面时如何替换文本框中的会话值。帮我。任何帮助将不胜感激。

【问题讨论】:

    标签: php html session


    【解决方案1】:
    <?php
      session_start(); // must be before any other output
    
      $search_term = '';
      if (!empty($_SESSION['last_search_term']))
      {
        // Check for last search term and update the search_term var
        // Escaped from @Eli's suggestion - Thanks!
        $search_term = htmlspecialchars($_SESSION['last_search_term'], ENT_QUOTES);
      }
    ?>
    
    <form method="get" action="page.php">
      <input type="text" name="query" value="<?php print $search_term; ?>" />
      <input type="submit" value="Search" />
    </form>
    
    <?php
      if (!empty($_GET['query'])) 
      {
        // Form submitted
        // Any necessary search logic here
    
        $_SESSION['last_search_term'] = $_GET['query'];
      }
    ?>
    

    如 cmets 中所述,session_start() 必须放在任何其他输出之前,否则会出现错误。最后一个 PHP 块可以在表单上方。这取决于您和您的特定工作流程。

    【讨论】:

    • 哦,来吧。你应该能够自己解决这个问题,不是吗?
    • 将值放入HTML字段值时不要忘记转义,否则如果有人输入带引号的值,您将得到一半的值,并打开自己还有一些其他问题。
    • @Eli 不敢相信我错过了。感谢您指出。
    • @Rajesekar - 您是否使用 stackoverflow 来帮助您学习编程或作为众包工具?我倾向于不为您编写(更多)代码。
    【解决方案2】:
    <input type='text'  style='' name='' id='' class='' value='<?php echo(htmlspecialchars($_SESSION["Whatever"], ENT_QUOTES)); ?>' />
    

    【讨论】:

      猜你喜欢
      • 2020-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多