表单页面 venue_events 上的操作会调用 event_list ,并为我提供所请求的查询输出。如果您键入 event_list 页面的链接,它将使用表单中的值填充新查询。有没有办法阻止用户这样做,或者我可以将它们重定向回 venue_events 页面吗?
答案 0 :(得分:1)
在目标网页中,您必须检查是否有正确的查询,或者更正数据以构建查询。如果没有,例如因为用户直接在网址中输入,您可以将用户重定向到您想要的页面(可能是表单),如果您之前没有回复任何内容,header('Location: http://www.mysite.com/my_form_page.php');
。
答案 1 :(得分:0)
如果我理解正确,您应该在查询数据库之前验证值。如果没有有效值,您可以使用html中的javascript或元重定向或使用以下命令启动重定向:
header('Location: http://www.domain.com/site.php');
只有header()
命令之前没有输出才能正常工作。
此外,您还可以检查是否从数据库中获得了一些结果。如果不是这种情况,您也可以启动重定向。
我对你的意见的建议:
<?php
// Was a search term passed?
if (isset($_POST['search']) && !empty($_POST['search'])){
$sql=" SELECT * FROM venue_event ";
$search_term = mysql_real_escape_string($_POST['AAC']);
$sql .= "WHERE venue = '{$search_term}' ";
$sql .= "AND state = '{$search_term2}'"; // $search_term2 isn't defined in your code at all...
$sql .= "ORDER BY startdate ASC";
$result=mysql_query($sql) or die(mysql_error());
}else{
// Do redirection here
}
?>