我最近升级了PHP5.4,在添加了一些调整之后,具有大量自定义的客户的旧osCommerce安装再次运行,但仍然存在一个问题:
如果您在购物车中放置了一个项目,那么购物车将保持空,
我怎么才能解决这个问题?
我是否可以在php.ini中设置某个php值,以便会话正常工作?
到目前为止我所做的调整是:
问题:所有价格为0且没有货币
解决方案:在`/段中添加!isset($currency) ||
的
(见PHP 5.4下的顶部 )
问题: register_globals在PHP5.4.0中被删除
解决方案:I用以下代码模拟register_globals
:https://serverfault.com/a/547285/128892
我和在中添加了这个
// Bugfix PHP 5.4:
$HTTP_USER_AGENT=$_SERVER["HTTP_USER_AGENT"];
$HTTP_ACCEPT_LANGUAGE=$_SERVER["HTTP_ACCEPT_LANGUAGE"];
$HTTP_HOST=$_SERVER["HTTP_HOST"];
$SERVER_NAME=$_SERVER["SERVER_NAME"];
$PHP_SELF=$_SERVER['PHP_SELF'];
$HTTP_GET_VARS=$_GET;
$HTTP_POST_VARS=$_POST;
register_globals();
注释掉这一行:
#ini_get('register_globals') or exit('FATAL ERROR: register_globals is disabled in php.ini, please enable it!');
此外,我还必须更正includes/functions/sessions.php
:session_unregister()
和session_is_registered()
中删除的一些函数。
剩余问题:填充到购物车中的项目不会被添加到购物车中。似乎会话在add_cart页面中不为人所知。
发布于 2021-08-26 15:52:04
我不想修复最后一个问题,所以在尝试了不同的尝试之后,我决定采取措施,将商店中的所有定制内容转换为oscommerce 2.3,后者仍然运行在PHP5.4上(直到PHP5.6)。
请注意,为了让oscommerce在php7上运行,您需要对mysql函数进行另一个修复,以修复像https://stackoverflow.com/a/37877644/1069083这样的问题
发布于 2014-09-13 12:54:50
我也遇到过同样的问题。通过将我的2.2ms2代码与rc2a版本进行比较发现。
在application_top变化中
$cart->add_cart($_POST['products_id'], $cart->get_quantity(tep_get_uprid($_POST['products_id'], $_POST['id']))+$quantity, $_POST['id']);
至
$cart->add_cart($_POST['products_id'], $cart->get_quantity(tep_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['quantity'], $_POST['id']);
https://stackoverflow.com/questions/19472823
复制相似问题