【问题标题】:How to solve the sessions in php?如何解决php中的会话?
【发布时间】:2013-02-09 23:01:07
【问题描述】:

好的,这就是我所做的:我创建了网站,我使用的是 xampp 服务器,我在 phpMyAdmin 中创建了数据库,但是出现了问题,我不得不重新安装 xampp,所以我删除了数据库(是的,我没有做备份:(),所以我在安装 xampp 后,创建了相同的数据库。但是现在当我运行 localhost/website 时,我遇到了一些问题:

注意:未定义索引:第 6 行 C:\xampp\htdocs\BookShop\klasici.php 中的命令 这是在第 6 行:

if($_REQUEST['command']=='add' && $_REQUEST['productid']>0){

我认为问题出在会话上,但我没有更改脚本中的任何内容。会话在与数据库连接后开始。谢谢

但是现在当我用这个改变上面的行时:

if(isset($_REQUEST['command']) && $_REQUEST['command']=='add' && $_REQUEST['productid']>0)

{

我还有一个问题,我无法更新或删除购物车中的任何它,下面是我认为有问题的部分代码:

if(isset($_REQUEST['command']) && $_REQUEST['command']=='add' &&$_REQUEST['productid']>0)
    {
    remove_product(isset ($_REQUEST['pid']));
}
else if(isset($_REQUEST['command'])=='clear'){
    unset($_SESSION['cart']);
}
else if(isset($_REQUEST['command'])=='update'){
    $max=count($_SESSION['cart']);
    for($i=0;$i<$max;$i++){
        $pid=$_SESSION['cart'][$i]['productid'];
        $q=intval($_REQUEST['product'.$pid]);
        if($q>0 && $q<=999){
            $_SESSION['cart'][$i]['qty']=$q;
        }
        else{
            $msg='Some proudcts not updated!, quantity must be a number   between 1 and 999';
        }
    }
}

【问题讨论】:

  • $_REQUEST['command'] 来自哪里?
  • 该消息与mysql没有任何关系。

标签: php session xampp


【解决方案1】:

试试改成

if(isset($_REQUEST['command']) && $_REQUEST['command']=='add' && $_REQUEST['productid']>0)

【讨论】:

  • 这有帮助,但我也对仅此行的行有疑问: session_start();我该如何解决这个问题?
  • 注意:会话已经开始 - 忽略第 6 行 C:\xampp\htdocs\BookShop\DButils.php 中的 session_start()
  • 您正在复制 session_start。所以把它从不需要它的地方拿出来。因此,例如,如果当前脚本中包含的文件包含 session_start,您可能不需要在包含的脚本中再次复制它。
  • 所以现在当我更改它时,出现了其他问题我无法更新和删除购物车中的项目我把代码放在上面。谢谢
猜你喜欢
  • 2011-05-28
  • 2012-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多