【发布时间】:2014-04-08 05:50:43
【问题描述】:
我使用 Join 编写了以下查询以从不同的表中获取数据。这个查询在 MySQL 上运行良好,它从数据库中提取所有数据,但是当我用 PHP 编写这个查询时,它会提取除StudentId 之外的所有数据。当我使用print_r 时,它显示studentId 列为空。
请指导我在这里缺少什么?
型号
public function student_profile($id)
{
$this->db->select('*');
$this->db->from('student');
$this->db->join('student_marks', 'student.studentId= student_marks.studentId','left');
$this->db->join('sports', 'student.studentId= sports.studentId','left');
$this->db->join('extra_curricular_activities', 'student.studentId= extra_curricular_activities.studentId','left' );
$this->db->where('student.studentId', $id);
$query= $this->db->get();
return $query->result();
}
控制器
if ($user_type=='Student')
{
if ($LoginData= $this->loginmodel->studentLogin($username,$password))
{
foreach($LoginData as $UserId)
{
$currentId= $UserId->StudentId;
}
$data['students_data']= $this->loginmodel->student_profile($currentId);
$this->load->view('students',$data);
输出
Array
(
[0] => stdClass Object
(
[StudentId] =>
[StudentName] => Ahmed
[UserId] => 57502
[Password] => 28101
[Batch] => 2009
[Email] => ahmed@Hotmail.com
[PhoneNumber] => 02134663028
[DegreeId] => 1
[in_semester] => 1
[StudentMarksId] => 15
[SemisterCourseId] => 1
[AssignmentMarks] => 9
[QuizMarks] => 9
[ClassTestMarks] => 9
[FinalMarks] => 45
[Grades] => F
[FYPMarks] => 9
[Attendence] =>
[GPA] => 0
[OLQ] => 9
[InstructorComments] => Satisfactory !!
[InstructorRatings] => 9
[Result] => Failed
[Active] => No
[SportsId] =>
[Squash] =>
[FootBall] =>
[Cricket] =>
[Hocky] =>
[Swimming] =>
[ExtraActivitiesId] =>
[DebateCompetition] =>
[QuizCompetition] =>
[QiratCompetition] =>
[DrillCompetition] =>
[Others] =>
)
[1] => stdClass Object
(
[StudentId] =>
[StudentName] => Ahmed
[UserId] => 57502
[Password] => 28101
[Batch] => 2009
[Email] => ahmed@Hotmail.com
[PhoneNumber] => 02134663028
[DegreeId] => 1
[in_semester] => 1
[StudentMarksId] => 16
[SemisterCourseId] => 2
[AssignmentMarks] => 2
[QuizMarks] => 2
[ClassTestMarks] => 2
[FinalMarks] => 10
[Grades] => F
[FYPMarks] => 2
[Attendence] =>
[GPA] => 0
[OLQ] => 2
[InstructorComments] =>
[InstructorRatings] => 0
[Result] => Failed
[Active] => No
[SportsId] =>
[Squash] =>
[FootBall] =>
[Cricket] =>
[Hocky] =>
[Swimming] =>
[ExtraActivitiesId] =>
[DebateCompetition] =>
[QuizCompetition] =>
[QiratCompetition] =>
[DrillCompetition] =>
[Others] =>
)
【问题讨论】:
-
使用 $this->db->last_query() 打印您的查询并在数据库中手动执行它,看看您在结果中得到了什么
标签: php html mysql sql codeigniter