如何保存 php 表单数据以供以后使用



我在index.php文件中有一个简单的html表单和一些php代码, 我的问题是:如何保存表单数据并在不同的页面中使用它们? PHP 代码看起来像这样:

if(isset($_POST['submit'])){
//collect form data
$name = $_POST['name'];
$email = $_POST['email'];
}

HTML 代码如下所示:

<form action='' method='post'>
<p><label>Name</label><br><input type='text' name='name' value=''></p> 
<p><label>Email</label><br><input type='text' name='email' value=''></p> 
<p><input type='submit' name='submit' value='Submit'></p> 
</form>

最简单的解决方案是将此数据保存在会话中,但这对浏览器关闭时间有限制,并且仅分配给当前浏览器会话:

<?php
session_start();
if(isset($_POST['submit'])){
//collect form data
$_SESSION['name'] = $_POST['name'];
$_SESSION['email'] = $_POST['email'];
}
echo $_SESSION['name'];
echo $_SESSION['email'];
?>

有关更好的解决方案,请阅读此解决方案及其限制:

会话 - http://php.net/manual/en/reserved.variables.session.php

文件 - http://php.net/manual/en/ref.filesystem.php

数据库 - https://www.w3schools.com/php/php_mysql_intro.asp

您可以像下面的代码一样保存在会话中

<?php
session start();
$_SESSION['postdata'] = $_POST;
?>

我不知道这是否是你想要的,因为你没有指定,但你可以用javascript通过cookie保存它,然后用php捕获它。

JAVASCRIPT

//Call this in the html
function Example(element){
var name = $(elemt).find('name').text();
document.cookie = escape('variable') + '=' + escape(name) + '' +  '; path=/';

.PHP

$name= $_COOKIE['variable']))

最新更新