브라우저 콘솔에서 Duplicate form field id in the same form 경고가 발생합니다.
원인 분석
동일 form 내부에 id="user_phone"가 중복으로 존재합니다. 폼 검증/접근성/JS 셀렉터 충돌을 유발하며, 브라우저 콘솔에서 경고가 출력됩니다.
중복 발생 파일
kngil/skin/pop_join.php
kngil/skin/pop_join2.php
kngil/skin/pop_join3.php
kngil/skin/pop_mypage04.php
kngil/skin/pop_mypage05.php
kngil/skin/pop_mypage06.php
공통 패턴: 휴대전화번호 입력을 상태별로 여러 <tr>에 복제하면서 같은 id를 사용함.
연관 코드
JS에서 #user_phone을 사용 중
kngil/js/join.js
kngil/js/mypage.js
조치 제안 (택1)
A) 단일 입력으로 구조 변경 (권장)
user_phone 입력 필드는 하나만 유지
타이머/완료표시/변경버튼은 상태별로 보여주되, 입력은 공유
JS는 #user_phone 하나만 제어
B) 중복 id 제거 + data-attr로 제어
각 입력에 고유 id 부여 (예: user_phone, user_phone_verified, user_phone_change)
라벨 for도 각 id에 맞게 분리
JS는 컨텍스트 기준 form.querySelector('[name="userPhone"]') 또는 data-role로 제어
기대 효과
콘솔 경고 제거
폼 검증/접근성 개선
JS 셀렉터 충돌 방지
검증 체크리스트
회원가입/마이페이지 팝업 열기 시 콘솔 경고 없음
휴대전화번호 입력/인증 흐름 정상 동작
#user_phone 관련 JS 오류 없음
## 증상
브라우저 콘솔에서 `Duplicate form field id in the same form` 경고가 발생합니다.
## 원인 분석
동일 form 내부에 `id="user_phone"`가 **중복**으로 존재합니다. 폼 검증/접근성/JS 셀렉터 충돌을 유발하며, 브라우저 콘솔에서 경고가 출력됩니다.
### 중복 발생 파일
- `kngil/skin/pop_join.php`
- `kngil/skin/pop_join2.php`
- `kngil/skin/pop_join3.php`
- `kngil/skin/pop_mypage04.php`
- `kngil/skin/pop_mypage05.php`
- `kngil/skin/pop_mypage06.php`
공통 패턴: 휴대전화번호 입력을 상태별로 여러 `<tr>`에 복제하면서 **같은 id**를 사용함.
## 연관 코드
- JS에서 `#user_phone`을 사용 중
- `kngil/js/join.js`
- `kngil/js/mypage.js`
## 조치 제안 (택1)
### A) 단일 입력으로 구조 변경 (권장)
- `user_phone` 입력 필드는 **하나만 유지**
- 타이머/완료표시/변경버튼은 상태별로 보여주되, 입력은 공유
- JS는 `#user_phone` 하나만 제어
### B) 중복 id 제거 + data-attr로 제어
- 각 입력에 고유 id 부여 (예: `user_phone`, `user_phone_verified`, `user_phone_change`)
- 라벨 `for`도 각 id에 맞게 분리
- JS는 컨텍스트 기준 `form.querySelector('[name="userPhone"]')` 또는 `data-role`로 제어
## 기대 효과
- 콘솔 경고 제거
- 폼 검증/접근성 개선
- JS 셀렉터 충돌 방지
## 검증 체크리스트
- 회원가입/마이페이지 팝업 열기 시 콘솔 경고 없음
- 휴대전화번호 입력/인증 흐름 정상 동작
- `#user_phone` 관련 JS 오류 없음
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
증상
브라우저 콘솔에서
Duplicate form field id in the same form경고가 발생합니다.원인 분석
동일 form 내부에
id="user_phone"가 중복으로 존재합니다. 폼 검증/접근성/JS 셀렉터 충돌을 유발하며, 브라우저 콘솔에서 경고가 출력됩니다.중복 발생 파일
kngil/skin/pop_join.phpkngil/skin/pop_join2.phpkngil/skin/pop_join3.phpkngil/skin/pop_mypage04.phpkngil/skin/pop_mypage05.phpkngil/skin/pop_mypage06.php공통 패턴: 휴대전화번호 입력을 상태별로 여러
<tr>에 복제하면서 같은 id를 사용함.연관 코드
#user_phone을 사용 중kngil/js/join.jskngil/js/mypage.js조치 제안 (택1)
A) 단일 입력으로 구조 변경 (권장)
user_phone입력 필드는 하나만 유지#user_phone하나만 제어B) 중복 id 제거 + data-attr로 제어
user_phone,user_phone_verified,user_phone_change)for도 각 id에 맞게 분리form.querySelector('[name="userPhone"]')또는data-role로 제어기대 효과
검증 체크리스트
#user_phone관련 JS 오류 없음