로그기록을 만들었는 데... 같은값이 2개씩 등록됩니다. 채택완료
$user_no = $_GET["user_id"];
$name = $_GET["name"];
$item_name = $_GET["item_name"];</p>
<p>
if( $db->insert("edu_log", "
num='$user_no',
name='$name',
item_name='테스트',
item_num='$logd_name',
regdate= now() "));
아래 이미지를 보시면 동일 데이타 가 한번에 두개씩 등록됩니다.
왜그런지 이유 좀 알려줄래요?

감사드림.
답변 4개
$_GET은 URL에 동일 매개변수가 두 번 이상 포함되어 있으면 배열로 처치될가능성이 많습니다. 이럴땐 변수를 변경 해보면 알수 알수있을것 같네요
답변에 대한 댓글 4개
$name = $_GET["name"][0];
$item_name = $_GET["item_name"][0];
요래 한번해보세요 두번 인서트 되는걸 막아줄꺼에요
댓글을 작성하려면 로그인이 필요합니다.
감사합니다. 뭘 해도 안되눈군요.
GROUP BY regdate
이렇게 해서 중복값중 하나만 가져오는걸로 처리했네요.
주말 잘 보내세요.
답변에 대한 댓글 2개
$result = $db->insert("edu_log", "
num='$user_no',
name='$name',
item_name='테스트',
item_num='$logd_name',
regdate= now() ");
if ($result) {
echo "데이터가 성공적으로 저장되었습니다.";
} else {
echo "데이터 저장에 실패했습니다. 관리자에게 문의해주세요.";
echo "오류 메시지: " . $db->lastErrorMsg();
}
댓글을 작성하려면 로그인이 필요합니다.
현 코드 맨 위에 echo "한번만 실행되나 검사!"; 이코드를 삽입하고 테스트해보세요.
만일 위의 텍스트가 두번 출력되어지면 분명 두번 실행된다는것을 의미합니다.
만일 그렇지 않다면 DB쪽 문제일 가능성이 큽니다. 그런 경우 해당 디비와 테이블의 구조에 대한 구체적인 분석이 필요할거 같습니다.
답변에 대한 댓글 7개
num, name, item_name, item_num 이렇게 4개의 필드로 조합된 unique index를 설정하면 중복삽입문제는 해결되나.... 여전히 왜 중복삽입되는지는 이상하군요,
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 3개
$user_no = $_GET["user_id"][0];
$name = $_GET["name"][0];
$item_name = $_GET["item_name"][0];
요래 한번해보세요 두번 인서트 되는걸 막아줄꺼에요
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
감사합니다.