我希望在提交表单后加载相同的页面。所以我有这样的事情:
if (isset($_POST['delete_video'])) {//go to db to delete}
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="POST">
<input type="submit" name="delete_video" value="Delete" onClick="javascript:return confirm('Delete this video?');"/>
这对我不起作用。但如果我删除回声它确实有效:
<form action="<?php htmlentities($_SERVER['PHP_SELF']); ?>" method="POST">
这有什么意义?
答案 0 :(得分:3)
如果action
属性为空,则form
会自动发布到调用页面/脚本。
因此,由于您已删除echo
并且没有输出,因此该操作为空白是导致表单仍然有效的原因。
答案 1 :(得分:3)
请改用$_SERVER['REQUEST_URI']
。这将为您提供当前网址,但PHP_SELF
会提供文件路径,在这种情况下您不需要。