我只是为搜索设置了一些分页,搜索使用POST变量来定义要搜索的内容等。在我的URL中,我可以像这个搜索/ OFFSET一样设置分页偏移量,并在分页链接中设置我的链接。但是,当我单击链接时,即使我明确设置它们,所有POST变量也会消失,因此我可以在下一个脚本中使用它们。我正在使用codeigniter而且我关闭GET并且真的不想在会话中存储这些5-6值,因为它会变得笨拙。
点击链接是否完全重新加载页面并删除POST变量?
由于
答案 0 :(得分:2)
是的,单击链接会创建一个GET请求,因此不会保留任何POST数据。虽然在技术上可以用javascript这样做,但这是一个坏主意。
这完全适用于GET,请阅读this fuller explanation。
答案 1 :(得分:1)
是的,单击链接会删除所有POST变量。
答案 2 :(得分:1)
您是否有权更改收到请求的php页面?您可能希望在那里调整变量以接受GET或POST:
$defaultvalue='';//change this to '' or NULL or whatever you want
$searchQuery = (isset($_POST['s']) ? $_POST['s'] : (isset($_GET['s'])?$_GET['s']: $defaultvalue));
然后你的php页面将更好地处理GET或POST
答案 3 :(得分:0)
POST数据仅在原始请求期间出现(即它不会在请求之间保留)。如果要保留数据,请使用会话。但是,通常的做法是将GET用于搜索查询和页面。
答案 4 :(得分:0)
您可以使用难以置信的丑陋变通方法,并在单击链接时设置一个包含隐藏字段的表单。我真的不会推荐它。
答案 5 :(得分:0)
您应该能够创建一个表单,使用get变量将一些post变量集提交到action参数。因此,表单应向http://www.somedomain.com/FormSubmit.php?pag=1&sort=asc提交帖子请求。这将提交该表单的帖子值以及字符串的获取值。如果您可以将链接更改为表单按钮,那么您应该很高兴。