求救:两个不同页面共用一张表问题

#1 liangjianyuxuan

我做了两个页面,共用一张表,运行第一个页面的时候,已经在表中插入部分数据(部分字段),但是我现在想运行第二个页面的时候,把剩余的空白字段插满。怎么解决这个问题啊?怎么将整个表中的数据读出来放在一个数组里面啊?然后将第二个页面表单提交的信息放进数组,最后一期放到整个表里面啊?请详细一点啊?最好给一个实例?多谢了啊

header("content-Type:text/html;charset=utf-8");
class company_info extends spController{

    function edit(){
         $this->static_path=STATIC_PATH;
         $this->display("member/edit.html");
         if($UserAddon=$this->spArgs('UserAddon')){   
             $UserAddon['user_id']=$_SESSION['user_id'];
             $db=spClass("Company");
             //var_dump($db->spVerifier($UserAddon));exit;
                if(false === $db->spVerifier($UserAddon)){
                    $result=$db->find(array('user_id'=>$_SESSION['user_id']));
                    //按条件查询不到任何数据,find将返回FALSE
                    if($result==false){
                        $ret=$db->create($UserAddon);
                        // 取得表单全部内容,然后增加了一条记录,新增成功则返回新增的自增量ID,失败则返回FALSE
                        $this->showmessage("创建成功!", spUrl("company_info","connect"));
                    }else{
                           $ret=$db->update(array('user_id'=>$_SESSION['user_id']),$UserAddon);   
                    }
                }else{
                        $this->showmessage("验证失败!", spUrl("company_info","edit"));
            }
        
      }
}
   
    function connect(){     //我现在就是要解决这个问题
         $this->static_path=STATIC_PATH;
         $this->display("member/connect.html");
        
             if($UserAdd=$this->spArgs('UserAdd')){
               $UserAdd['user_id']=$_SESSION['user_id'];
               $db=spClass("Company");
               //var_dump($db->spVerifier($UserAdd));exit;
            if(false === $db->spVerifier($UserAdd)){
                $result=$db->find(array('user_id'=>$_SESSION['user_id']));
                if($result==false){    //查询不到任何数据
                    $ret=$db->create($UserAddon);
                    $this->showmessage("成功!", spUrl("company_info","connect"));
                }else{
                     $ret=$db->update(array('user_id'=>$_SESSION['user_id']),$UserAdd);
                }
            }else{
                    $this->showmessage("失败!", spUrl("company_info","connect"));
            }
         }
    }

}
?>


2012-03-14 13:35:37

#2 jake

用session吧
实例:

edit里面
$_SESSION['user_addon'] = $UserAddon;
$ret是你的自增ID,所以也要保留
$_SESSION['user_ret_id'] = $ret;

connect里面
$UserAddon = $_SESSION['user_addon'];
$ret_id = $_SESSION['user_ret_id'];
你可以通过$ret_id作为条件来update记录。

2012-03-14 13:42:35

#3 liangjianyuxuan

jake,我怎么将整个表里面内容读出来放在数组里面啊?   
然后将connect里面内容加到表里面啊?

我这个做的是一个商家只对应一条数据,比如之前表里面有数据了,那我现在只能去updata,如果没有我才去create。

但是问题是我edit这个页面内容添加进去之后,也添加到表里面了,但是属于connect这个页面的字段,我添加不进去?怎么办啊?

图片是我数据库部分截图,我想运行到coonnect这个页面的时候,把剩余空白字段填满

2012-03-15 10:58:58

#4 jake

请仔细看我的回帖,SESSION里面还需要记住ID,这样就可以通过ID来update数据了。

2012-03-15 12:06:30