【发布时间】:2010-12-10 14:16:06
【问题描述】:
我有一个搜索文本框。在那个框中,我想在下次加载页面时存储上一个搜索值。为此,我在单击搜索按钮时为文本框值创建了会话。但是我不知道下次加载页面时如何替换文本框中的会话值。帮我。任何帮助将不胜感激。
【问题讨论】:
我有一个搜索文本框。在那个框中,我想在下次加载页面时存储上一个搜索值。为此,我在单击搜索按钮时为文本框值创建了会话。但是我不知道下次加载页面时如何替换文本框中的会话值。帮我。任何帮助将不胜感激。
【问题讨论】:
<?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 块可以在表单上方。这取决于您和您的特定工作流程。
【讨论】:
<input type='text' style='' name='' id='' class='' value='<?php echo(htmlspecialchars($_SESSION["Whatever"], ENT_QUOTES)); ?>' />
【讨论】: