我正在尝试运行一个非常简单的脚本来测试HTML表单中的"action=echo$_SERVER['HP_SELF']"(上面有PHP的开始和结束,但这个网站不允许我介绍这些字符)。这是脚本:
<?php if(isset($_POST['submit'])) { echo "it works"; } ?>
<form name="test" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="submit" name="submit" value="Submit Form">
问题是,每当我点击提交按钮时,我都会收到一个"Safari找不到文件"错误,指出"在我运行脚本的地址上不存在文件"。
我在这里做错了什么?
非常感谢您的帮助!
Eduardo
尝试使用$_SERVER['REQUEST_URI']
而不是$_SERVER['PHP_SELF']
。我认为您使用的是mod_rewrite
,这就是它找不到该文件的原因。
如果要将数据发布到同一页面,则不需要设置表单的action属性。
<form name="test" method="post">
...
<input type="submit" name="submit" value="Submit Form" />
</form>
应该这样做。
干杯!