중복 된 항목 오류가 발생하면 사용자를 다른 페이지로 리디렉션하려고합니다. 나는 사용하고있다 Codeigniter
중복 항목 오류가 발생하면 사용자를 다른 페이지로 리디렉션하는 방법?
. 다음 코드를 작성했지만 오류 메시지 Duplicate entry '1' for key 'semester_id'
을 표시합니다.
친절하게 코드를 확인하고 안내합니다.
감사
public function insert_sports_sports($student_id, $squash, $football, $cricket, $hockey, $swimming, $semester_id)
{
$data= array (
"squash"=> $squash,
"football"=>$football,
"cricket"=>$cricket,
"hockey"=>$hockey,
"swimming"=>$swimming,
"studentId"=>$student_id,
"semester_id" => $semester_id
);
if ($this->db->insert("sports",$data))
{
return true;
}
else
{
return false;
}
}
CONTROLLER
---
--
--
if($this->loginmodel->insert_sports_sports($student_id, $squash, $football, $cricket,
$hockey, $swimming, $semester_id))
{
redirect('mycontroller/index');
}
else
{
$this->load->view('success');
}
}
편집
if ($this->db->insert("sports",$data))
{
return true;
}
else
{
return false;
}
}
catch (Exception $ex) {
if($ex->message == "Duplicate entry '1' for key 'semester_id'")
{
redirect('success.php');
}
}
}
오류 메시지
A Database Error Occurred
Error Number: 1062
Duplicate entry '1' for key 'semester_id'
INSERT INTO `sports` (`squash`, `football`, `cricket`, `hockey`, `swimming`, `studentId`, `semester_id`) VALUES ('4', '4', '4', '4', '4', '42', '1')
Filename: F:\xampp\htdocs\student_management2\system\database\DB_driver.php
Line Number: 330
즉, semester_id가 고유 한 키임을 의미합니다. 즉, 해당 열의 값이 1 인 항목이 이미 데이터베이스에 있음을 의미합니다. [This (http://stackoverflow.com/questions/487314/primary-key) -or-unique-index/2916464 # 2916464) 페이지에 설명되어 있습니다. – jeremy
네,하지만이 오류 메시지를 표시하고 싶지 않습니다. 사용자를 다른 페이지로 리디렉션하고 사용자 정의 오류 메시지를 표시하고 싶습니다. – user3480644