yuhezheng 2012-08-24 11:47:32 4425次浏览 12条回复 0 0 0
<div class="row">
    <?php echo $form->labelEx($model,'种类'); ?>
    <?php echo $form->checkBoxList($model,'checkBoxList',Sort::model()->getSortName(),array('separator'=>'&nbsp;','checkAll'=>'全选|反选','checkAllLast'=>true)); ?>
    <?php echo $form->error($model,'checkBoxList'); ?>
</div>

这是_form.php中的代码,能显示,但是不知道怎么将选中的存入数据库。 [attach]863[/attach] 这是显示出来的复选框,是从数据库里取出来的。 查资料有的说返回的是个数组,比如我选中的是1,3,就返回array(1,3);但是不知道怎么接收,求高手解答:'(

  • 回复于 2012-08-24 13:17 举报

    如果你的$model是post的一个实例,那么久应该这样获取值$_POST['Post']['checkBoxList'],它应该是一个数组

  • 回复于 2012-08-25 16:29 举报

    $model->attributes=$_POST['Article'];这样赋值后print_r($model->title)就能打印出来,而
    print_r($model->checkBoxList)却是空的

  • 回复于 2012-08-25 20:23 举报

    $_POST['Article']['checkBoxList']有没有值?

  • 回复于 2012-08-26 09:20 举报

    是啊,不知道怎么办,只会从数据库取数据,显示出来,却不知道用户选了那些,存进数据库:'(

  • 回复于 2012-08-30 18:01 举报

    想问返回的数组,楼主已经可以接收了么?

  • 回复于 2012-08-30 22:42 举报

    理论是一个数组,但得出来的却是array这个字符串,这是什么原因

  • 回复于 2012-08-30 22:44 举报

    如果是一个数组那就没有问题(当然不能是空数组,可用var_dump查看),既然数据传递成功,后面的就是数据处理,关键是要看你要怎样存入数据库

  • 回复于 2012-09-01 07:03 举报

    对了,谢谢大家,我贴出啦,前车之鉴,呵呵

    $arr = $_POST['Article']['checkBoxList'];
    if($model->save())
    {
    	if($arr == null)
    	{
    		$arr = array('1');
    	}
    	//获取新增文章编号
    	$articleid = $model->id;
    	//循环获取文章类别编号并且插入文章类别关联表
    	foreach ($arr as $sid)
    	{
    		$model2 = new ArticleSort();
    		$model2->article_id = $articleid;
    		$model2->sort_id = $sid;
    		if($model2->save())
    		{
    			$ins = true;
    		}
    	}
    	if($ins){
    		$this->redirect(array('view','id'=>$model->id));
    	}
    }
    
  • 回复于 2012-09-03 14:24 举报

    你的题库管理系统(http://www.tiikoo.com)看起来很不错,是用yii开发的嘛?后台也是yii吗?好漂亮!

  • 回复于 2012-09-03 16:45 举报

    这不是我的,是他的哦,呵呵

  • 回复于 2012-09-03 18:19 举报

    嗯嗯,I see...

  • 回复于 2012-09-04 12:57 举报

    是的,还没弄完!

您需要登录后才可以回复。登录 | 立即注册