2011-07-28 8 views
2

저는 PHP로 Zend Framework 응용 프로그램을 만들고 있습니다. 가입 양식이 있습니다.두 명의 사용자가 동일한 사용자 이름을 등록하지 못하게하려면 어떻게해야합니까?

사용자가 가입하고 사용 가능한 사용자 이름을 얻었으며 가입 프로세스가 아직 완료되지 않았습니다. 선택한 사용자 이름이 데이터베이스에 저장되지 않습니다. 그래서 동시에 다른 사용자 이름이 같은 사용자 이름을 얻지 못합니다.

다른 사용자가 같은 사용자 이름을 동시에 지정할 수 없도록 방지하는 방법을 알려주십시오.

예를 들어 사용자는 등록 무료로해야한다는 즉 mannecheema27

그래서 데이터베이스에 존재하지 않습니다. 그러나 등록 과정에는 어느 정도 시간이 걸립니다. 아마도 사용자가 전화를 받거나 다른 이유가있을 수 있습니다. 그런 다음 사용자가 등록을 저장하거나 등록 취소 버튼을 클릭 할 때까지 선택한 기간 동안 그 동안 선택한 사용자 이름을 분리하여 보관해야합니다. 다른 사용자가 사용자 이름을 사용할 수 있는지 확인하십시오. 예 : mannecheema27 데이터베이스에 존재하지 않지만 다른 사용자가 같은 이름을 갖지 않도록 저장해야합니다.

+1

질문은 불충분하게 말로 표현되고 간신히 이해할 수 있으며 지나치게 광범위하고 코드가 표시되지 않습니다. –

+0

그것을 저장하는 세션 인덱스 나 임시 MySQL 테이블을 사용하십시오 –

+0

@ surinder '틱'으로 질문에 대한 이전 답변을 '표시'해야합니다 : http://stackoverflow.com/questions/14398773/website -translation-onload 그리고 또한 ...이 질문에 대한 대답을 'correct'라고 표시하십시오 !! :) – Jimbo

답변

5

다른 사용자가이 이름을 선택했기 때문에 최종 등록이 실패하거나 사용자 이름이 등록되지 않았 음을 확인하면 나중에 사용하게 될 사용자 데이터베이스에 '예약 항목'을 적용합니다 (또는 어느 시점에서 시간에 예약되지 않음).

두 번째 코드는 더 많은 코드이지만 실제로는 유일한 방법입니다. 많은 사용자 생성이 예상되는 응용 프로그램 인 경우 최종 등록이 실패 할 수 있음을 수락하십시오.

+0

감사합니다 Damien sir – Surinderpal

관련 문제