• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Love满天星
博客园    首页    新随笔    联系   管理    订阅  订阅

考试管理系统(小2月考)

效果图:

控制器:

<?php

namespace frontend\controllers;

use Yii;
use frontend\models\User;
use yii\web\Controller;
use yii\web\session;

class UserController extends Controller
{
    public $enableCsrfValidation = false;
    public function actionCreate()
    {
        $model = new User();
        if ($model->load(Yii::$app->request->post()) ) {
            $res=$model->getpost();
            //判断用户名称是否正确
            if($res['u_name'])
            {
               //判断用户密码是否正确
               if($res['u_pwd']==$_POST['User']['u_pwd']){
                  $session = Yii::$app->session;
                  $session->set('u_id',$res['u_id']);
                  echo "<script>alert('登陆成功');location.href='index.php?r=user/question'</script>";
               }else{
                   echo "<script>alert('密码错误,重新登陆');location.href='index.php?r=user/create'</script>";
               }
               
            }else{
               echo "<script>alert('用户名不存在,重新登陆');location.href='index.php?r=user/create'</script>";
            }
        } else {
            return $this->render('create', [
                'model' => $model,
            ]);
        }
    }
    //显示问题
    public function actionQuestion(){
        $model = new User();
        //查出所有问题
        $row=$model->getList();
        //查询所有答案
        $res=$model->getanswer();
        //取出十条数据里的值
        $key=array_rand($row,10);//键名
        foreach($key as $key1=>$val)
        {
           $que[]=$row[$val];
        }
        //遍历数组
        foreach($que as $key=>$row1){
            foreach($res as $key2=>$res1){
                 if($row1['question_id']==$res1['question_id']){
                     $que[$key]['answer'][]=$res1;
                 }
            }
        }
        return $this->renderPartial('test',['row'=>$que]);
    }
    //得出成绩
    public function actionAdd1(){
       //var_dump($_POST);die;
       $model = new User();
       $rank=$model->getinfo();
       //echo $rank;die;
       return $this->renderPartial('rank',['rank'=>$rank]);
    }
}
模型层:

 //判断用户登陆是否正确
    public function getpost()
    {
        //var_dump($_POST);die;
        //接收数据
        $u_name=$_POST['User']['u_name'];
        $u_pwd=$_POST['User']['u_pwd'];
        //查询语句
        $row=Yii::$app->db->CreateCommand("select * from user where u_name='$u_name'")->queryone();
        //var_dump($row);die;
        return $row;
    }
     //先查出所有问题
    public function getList(){
        //随机查询10条语句
        //$row=Yii::$app->db->CreateCommand("select * from question order by rand() limit 10")->queryall();
        $row=Yii::$app->db->CreateCommand("select * from question")->queryall();
        //var_dump($row);die;
        return $row;
    }
    //查询所有问题
    public function getanswer(){
        //查询语句
        $row=Yii::$app->db->CreateCommand("select * from answer")->queryall();
        //var_dump($row);die;
        return $row;
    }
    //查询答案id下的正确结果
    public function getinfo()
    {

        $answer_id=implode(",",$_POST);
        //var_dump($_POST);die;
        //查询语句
        $row=Yii::$app->db->CreateCommand("select count(*) from answer where answer_id in($answer_id) and answer_state=1")->queryScalar();
        //var_dump($row);die;
        //获取登录的用户id
        $session = Yii::$app->session;
        $u_id = $session->get('u_id');
        //添加成绩入库
        $data=Yii::$app->db->CreateCommand()->insert("rank",['rank'=>$row,'u_id'=>$u_id])->execute();
        return $row;
    }

视图层:

 <center><h3>欢迎来到考试页面</h3></center>
     <form action="index.php?r=user/add1" method="post">
<table>
    
    <?php foreach($row as $key=>$v) {?>


    <tr>
    <td>
        <?php echo $v['question_id'];?>.<?php echo $v['question'];?>()
    </td>
    </tr>
   <tr>
    <?php foreach($v['answer'] as $key=>$v1) {?>
        <td><input type="radio" name="<?php echo $v1['question_id'];?>" value="<?php echo $v1['answer_id'];?>">
        <?php echo $v1['answer']?>
       </td>
    </tr>
    <?php }?>
    <?php }?>
    
    <tr>
    <td><input type="submit" value="提交试卷" /></td>
    </tr>
    
    </form>
</table>

posted @ 2016-05-06 09:33  Love满天星  阅读(275)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3