2010-03-15 2 views
0

모범 사례 질문을하고 싶습니다. PHP에서 3 개의 필드에 이름, 전자 메일 및 주석을 포함하는 양식이 있다고 가정합니다. 양식을 POST를 통해 제출합니다. PHP에서는 데이터베이스에 날짜를 삽입하려고합니다. 삽입이 실패했다고 가정하십시오. 이제 사용자에게 오류를 표시하고 이전에 삽입 한 데이터로 채워진 양식을 표시하여 오류를 수정할 수 있습니다. 양식이 초기 상태로 표시되지 않습니다. 그래서 양식을 표시하고 3 필드는 PHP에서 에코 등으로 채워집니다. 이제 새로 고침을 클릭하면 "정보를 다시 보내시겠습니까?"라는 메시지가 나타납니다. 확인. 데이터를 삽입 한 후에도 계속 수행하지 않지만 같은 페이지로 리다하지만 쿼리 문자열에 필요한 매개 변수를 사용하여 리디렉션한다고 가정합니다. 이것은 메시지가 사라지게하지만 쿼리 문자열에 3 개의 매개 변수를 가지고 있어야합니다.php 양식 제출 및 재전송 정보 화면

제 질문은 :

어떻게하는 것이 좋습니까? 나는 쿼리 문자열에 많은 매개 변수를 가지고 다니지 않고 그 오류를 얻지 않기를 원한다. 어떻게 할 수 있습니까? 양식 정보를 저장하기 위해 쿠키를 사용해야합니까?

답변

1

첫 번째 시나리오가 가장 유효 해 보입니다. (

사용자

일부 문제가 제출을 방지 양식을 제출, 그래서 사용자가 "새로 고침는"그들이 다시 보내는 정보에 대한 일반적인 메시지가 나타나면 형태는

을 다시 표시됩니다 그들의 있지만, 가장 가능성이있는 진행 경로는 자신이 친절하게 다시 채우는 양식을 다시 제출하는 것입니다.

"정보를 다시 보내시겠습니까?" 메시지는 양식 제출 후 누군가가 페이지를 새로 고치는 경우에 완벽하게 유효하므로이 동작을 구체적으로 위반하는 코드를 작성하지 마십시오.

0

사람들은 일반적으로 제출 된 데이터를 세션 변수에 임시 저장하고 데이터를 클라이언트에 다시 보냅니다.

어쩌면 당신은 "잘못된 날짜"에 대해 언급 한 것일 수 있습니다. 많은 사람들이 사용자가 실수로을 보낼 수 없도록 정렬해야한다고 생각합니다.

+0

어디에서 "잘못된 날짜"를 사용 했습니까? – Para

+0

좋아, 내가 한 것처럼 따옴표를 사용하는 것은 잘못되지 않았다. 그러나 그것은 내가 말한 것을 암시한다고 생각한 것입니다 : "PHP에서 데이터베이스에 날짜를 삽입하려고합니다. 삽입에 실패했다고 가정하십시오." – Cups