在我的网店上,我有一个非常大的表单。它包含数百种产品的数据和照片,因此我不想在一个网站上显示所有内容。取而代之的是,产品将被分类。
当用户完成从一个类别中选择产品并切换到另一个类别时,我希望保存所有类别中的所有选择数据做这件事最简单、最有效的方法是什么是否将其保存在$_SESSION
中?通过PHP在数据库中?在数据库中通过Ajax/PHP
?
我找到的所有答案要么是单一表格,要么是带购物车的网店。我的商店介于两者之间。
附带说明:我还不擅长Ajax,所以我宁愿避免它,尽管我知道它可能是最优雅的解决方案。
知道吗?
这取决于你想帮助你的客户或潜在客户的范围。
我认为可以肯定地说,这里有两个大的对立。一方面是来宾,另一方面是用户。根据您的网站允许的功能,您可以采取更具体的方法。
如果您使用的是100%
来宾用户群,我认为最好将所有内容都存储在$_SESSION
中。
另一方面,如果你与大多数用户一起工作,你必须让你的内存比蒸发的$_SESSION更稳定。在这种情况下,我会选择一个数据库,将您的用户链接到他们感兴趣的项目
最后一个选项也适用于jQuery
,以防止页面之间出现大量加载。
编辑:不管你选择什么,还是要研究AJAX。它一开始也把我吓死了,但它真的很直接,而且非常强大。
希望这对你有帮助!
您应该使用Session。会话用于存储会话数据,这确实是会话数据。我认为MySQL数据库过载了!
文件.php
<?php
// file a.php
// ...
// do some form output
echo '<form action="b.php" method="POST"> ... </form>';
?>
b.php文件
<?php
session_start();
// do some session id get / set...
// ...
// fetch data and store
// make sanity checks (e.g. check if there are sql-injections)
$_SESSION['user_choice_cat_xy'] = mysql_real_escape_string($_POST['user_choice_field']);
// Output cat b
echo '<form action="c.php" method="POST">...</form>'
?>