如何制作一个提交给自己的PHP表单?
我如何制作一个自我发布/自我提交的表格,即一个将结果提交给自己的表格,而不是提交到另一个表格?
我如何制作一个自我发布/自我提交的表格,即一个将结果提交给自己的表格,而不是提交到另一个表格?
正确的方法是使用(与避免可能的漏洞利用结合使用)。您也可以跳过空部分,该部分不是W3C有效的,但目前适用于大多数(所有?)浏览器 - 如果它是空的,则默认为提交到self。$_SERVER["PHP_SELF"]
htmlspecialchars
action=
下面是一个示例表单,它采用名称和电子邮件,然后显示您在提交时输入的值:
<?php if (!empty($_POST)): ?>
Welcome, <?php echo htmlspecialchars($_POST["name"]); ?>!<br>
Your email is <?php echo htmlspecialchars($_POST["email"]); ?>.<br>
<?php else: ?>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
Name: <input type="text" name="name"><br>
Email: <input type="text" name="email"><br>
<input type="submit">
</form>
<?php endif; ?>
我猜,你的意思是.如果是这样,你真的不应该在没有先消毒它的情况下使用它。这使您容易受到XSS攻击。$_SERVER['PHP_SELF']
条件应该高于所有HTML输出,并且应该包含一个函数,再次重定向到当前页面(只是现在,有一些很好的通知,“电子邮件已发送”......或其他东西)。为此,您将不得不使用 或 .if(isset($_POST['submit']))
header()
$_SESSION
$_COOKIE
请。停止使用 。它也构成安全威胁。$_REQUEST