我有一个可以通过url访问的页面-类似于http://websitename/index.php?q=pagename。在这个页面上,我有一个表单,我想提交到同一页面,这样我就可以做一些后期处理。我已经尝试了以下事情,但无法让它工作-
<form name="formname" action="pagename.php" method="post">
<form name="formname" action="" method="post">
<form name="formname" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
换句话说,我想提交表单pagename.php文件(其中的形式驻留)。页面(pagename.php)不能直接访问。我该怎么做呢?我将非常感谢任何帮助在这个问题上。谢谢。
试试这个:
在HTML5中,你可以只做<form>
并将其设置为self。
<form action=<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?> method="post">
或
<form name="formname" id="mainForm" method="post" enctype="multipart/form-data" action="<?php echo $_SERVER['REQUEST_URI'];?>">
或
<form method="POST" action="<?=($_SERVER['PHP_SELF'])?>">
关键是您的$_SERVER
变量包含生成特定页面URL所需的所有信息。如果你决定不走HTML5的道路,那么这些选择之一应该是可行的。否则,你就错过了问题中没有提到的东西。
我想这会解决你的问题。
<form name="formname" action="#" method="post">
Try
<form method="post">/*your stuff here*/</form>
,你应该添加一个提交按钮,属性为"name=submit",这样表单就可以提交,也可以跟踪它是否已经被PHP发布,然后做下面的操作
if(isset($_POST["submit"])){ /* your code */}