자동방지 문자 틀렸을때 내용유지

자동방지 문자 틀렸을때 내용유지

QA

자동방지 문자 틀렸을때 내용유지

답변 2

본문

그누보드5 를 커스터마이징해서 신청폼으로 사용중인데요.

자동등록방지 문자를 잘못 입력하면 리프레시 되면서 입력한 내용이 모두 사라집니다.

 

비회원이 신청폼 작성후 자동등록 방지 문자를 잘못 입력한 경우에 

입력한 내용은 유지되고 자동등록 번호만 새로 입력할 수 있게 하려면 어떻게 해야 할까요?

이 질문에 댓글 쓰기 :

답변 2

다음과 같은 방법으로 가능하지 않을까 합니다.

참고하셔서 실제 구현하고자 하는 형식으로 가공하시면 될것 같네요

 

1. 세션 또는 쿠키사용

자동등록 방지 문자를 확인하기 전에, 사용자가 입력한 내용을 세션에 저장


// 세션 시작
session_start();
// 사용자가 제출한 내용을 세션에 저장
$_SESSION['form_data'] = $_POST; // 이는 예시이며, 실제로는 데이터를 적절히 가공하여 저장해야 합니다.

 

2. 자동등록방지 문자 검증

자동등록 방지 문자를 검증하기 전에, 세션에서 저장한 데이터를 다시 가져옴


// 세션 시작
session_start();
// 사용자가 입력한 내용을 가져옴
$form_data = isset($_SESSION['form_data']) ? $_SESSION['form_data'] : array();

 

3. 폼에 이전데이터 입력


<form action="your_form_action.php" method="post">
    <!-- 이전에 입력한 데이터를 가져와서 폼에 채워 넣기 -->
    <input type="text" name="username" value="<?php echo isset($form_data['username']) ? $form_data['username'] : ''; ?>" />
    <!-- 다른 입력 필드들도 동일하게 처리 -->
    <input type="text" name="email" value="<?php echo isset($form_data['email']) ? $form_data['email'] : ''; ?>" />
    <!-- 자동등록 방지 문자 입력 필드 -->
    <input type="text" name="captcha" />
    <input type="submit" value="Submit" />
</form>

 

4. 세션데이터 초기화

세션에 저장한 데이터는 한 번 사용하면 초기화해야함


// 세션 시작
session_start();
// 사용자가 입력한 데이터를 가져옴
$form_data = isset($_SESSION['form_data']) ? $_SESSION['form_data'] : array();
// 세션 초기화
unset($_SESSION['form_data']);

 

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 169
© SIRSOFT
현재 페이지 제일 처음으로