是否可以仅使用 php 保存表单中的输入?那么不使用数据库?
我的代码的当前快照:
html
<form method="post" name = "post">
<p><input type="text" name="api_key_send" value="" placeholder="api key sendcloud"></p>
php
if($_SERVER['REQUEST_METHOD'] === 'POST') {
$_SESSION['api_key_send'] = $_POST['api_key_send'];
这是获取用户当前输入并使用它来执行脚本其余部分的方法。我希望用户输入的内容能够被记住,直到新输入覆盖它。当然,我知道您可以为此使用数据库,但这有必要吗?
更新:
它有效,但只有当我一遍又一遍地为用户输入正确的值时。我希望如果您第二次按下按钮,它只会记住之前的输入。
试图澄清:
我的想法是我可以做这样的事情:
$_SESSION['api_key_send'] = $_POST['api_key_send'];
$var = $_POST['api_key_send']; <<<<
最佳答案
$_SESSION
可用于临时存储,大多数情况下会通过清除浏览器数据来清除。 (下面对异常(exception)情况进行详细说明)
如果您使用透明 session ID,则任何在地址栏中输入 SID 的人都可以获取该 session 。 session 实际上是根据 PHP 的垃圾收集设置(php.ini 中的 session.gc_* 参数)销毁的 - 即使您使用基于 cookie 的 session 。如果用户取消设置他们的cookie, session 不一定会被破坏,只是该用户不再接收它。 (此阐述归功于@CD001)
使用变量($var
)是一种更为临时的解决方案,一旦用户关闭窗口,它就会被取消设置。
$var = $_POST['api_key_send']; <<<<
因此,为了永久存储,您需要使用数据库或将输入保存到文件中。
关于php - 保存提交变量而不使用数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35918214/