将讲师 ID 添加到课程

问题描述

我目前正在为一个电子学习平台开发 Laravel 项目。我有两种类型的用户,首先是讲师,他们可以创建、删除和更新课程以及将其分配给学生。

在创建课程时,结果没有插入到我的数据库中。我为登录正确定义了一个会话变量,但我无法从会话中获取讲师 ID,它说变量已定义。会话在名为 LecturerLoginController 的控制器中定义。 createCourse() 的函数是另一个名为 Dashboard Controller 的控制器。我不知道是我漏掉了一个参数还是别的什么..

这是我的代码

class LecturerLoginController extends Controller{
 function store(Request $request){
        //the login back-end
        $request->validate([
            'email' => 'required|email','password' => 'required|min:7'
        ]);

        //query used to search for corresponding email in lecturer table
        $lecturerInfo = Lecturer::where('lecturerEmail','=',$request->email)->first();

        if(!$lecturerInfo){
            //if the email is not found,throws error message
            return back()->with('fail','We do not recognise this email address ');
        }
        else{
            //check password by HASH algorithm
            if(Hash::check($request->password,$lecturerInfo->password)){
                $request->session()->put('LoggedUser',$lecturerInfo);
                return redirect('/lecturer/dashboard');
                // return back()->with('success','You are logged in');
            }else{
                return back()->with('fail','Incorrect password');
            }
        }
   }
   
function dashboard(){
        //passing the session data from the login to the dashboard
        $data = ['LoggedUserInfo'=>Lecturer::where('lecturerID',session('LoggedUser'))->first()];
        return view('Dashboard.lecturerDashboard',$data);
    }
function logout(){
        if(session()->has('LoggedUser')){
            session()->pull('LoggedUser');
            return redirect('/lecturer/login');
        }
    }
  }

class DashboardController extends controller{
 function createCourse(Request $request){
        //create a course for the current lecturer
        return view('Dashboard.createCourse');
        $lecturerID = Session::get('LoggedUser')['lecturerID'];
        $course = new Course;
        $course->lecturerID=$lecturerID ;
        $course->courseName=$request->courseName;
        $course->save();
    }  
   }

//My data is not being displayed at the front-end for my lecturerID 
//field which causes the $loggedUser session variable to be undefined
//front-end data 
<div class="form-group">
                <label for="lecturerID">LecturerID</label>
                <input
                    type="text"
                    name="lecturerID"
                    id="lecturerID"
                    class="form-control"
                    value="{{ $LoggedUser['lecturerID'] }}"
                    disabled
                />
</div>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)