【发布时间】:2017-11-09 19:07:06
【问题描述】:
我有一个多页表单,我想将所有表单插入保存在一个会话中,我可以在单击数据库中最后一个表单页面中的提交按钮后保存它们。
问题 1: 我是否已将每个表单变量都保存到这样的会话变量中? 我的意思是我是否必须将最后一页的变量存储在当前页面上,如示例中所示?这会起作用还是有可能更容易地存储它们?
第 1 页:
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>form1</title>
</head>
<body>
<form method="post" action="form2.php">
<p><input type="text" name="sname"> Name</p>
<p><input type="text" name="semail_address"> Email</p>
<p><input type="submit" value="form 2"></p>
</form>
</body>
</html>
第2页:
session_start();
$_SESSION['name'] = $_POST['sname'];
$_SESSION['email_address'] = $_POST['semail_address'];
?>
<form method="post" action="form3.php">
<p><input type="radio" value="Free" checked="checked"name="smembership_type">Free</p>
<p><input type="radio" name="smembership_type" value="Normal">Normal</p>
<p><input type="radio" name="smembership_type" value="Deluxe">Deluxe</p>
<p><input type="checkbox" name="sterms_and_conditions">I agreee</p>
<input type="submit" value="Form 3"></p>
</form>
</body>
</html>
第 3 页:
<?php
session_start();
$_SESSION['membership_type'] = $_POST['smembership_type'];
$_SESSION['terms_and_conditions'] = $_POST['sterms_and_conditions'];
?>
....
问题 2: 然后我如何将它们保存到数据库中?语法对吗?
$query = "INSERT into subscriptions(name,email_address,membership_type,terms_and_conditions,name_on_card, credit_card_number, credit_card_expiration_date)".
"VALUES(" . $_SESSION['name'] . ",
" . $_SESSION['email_address'] . ",
" . $_SESSION['membership_type'] . ",
" . $_SESSION['terms_and_conditions'] . ",
" . $_SESSION['name_on_card'] . ",
" . $_SESSION['credit_card_number'] . ",
" . $_SESSION['credit_card_expiration_date'] . ")";
【问题讨论】: