2009-11-23 4 views
0

사용자가 여러 날짜를 원할 때 동적으로 텍스트 필드를 추가하는 웹 양식을 작성 중입니다. 본질적으로 이것은 일어나는 일입니다 ... 사용자가 폼에 간다. 사용자에게 기본 날짜 텍스트 필드가있다. 사용자가 원하는 경우 "날짜 추가"버튼을 클릭하여 날짜 텍스트 필드를 추가 할 수있다. 다음과 같이 자바 스크립트는 다음과 같습니다Javascript + PHP + 동적 텍스트 필드 + Jquery

function addDate() { 
        current++; 
        var strToAdd = '<p><input type="text" id="date'+current+'" name="classDate'+current+'" class="required" /> <input type="text" id="alt'+current+'" name="classDate'+current+'" class="required" /></p>' 
        //console.log(strToAdd) 
        $('.dynDate').append(strToAdd) 
        $('#date'+current+'').datepicker({altField: '#alt'+current+'', altFormat: 'DD, d MM, yy'}); 
      } 

이 각각의 새로운 날짜 필드의 양식에 JQuery와 날짜 선택을 가하고와 함께 폼에 두 개의 날짜 필드를 추가합니다. 정확히 다음과 같이 : http://jqueryui.com/demos/datepicker/#alt-field ...

어쨌든, 내 질문은 어떻게 동적 텍스트 필드에서 PHP로 MySQL 데이터베이스에 데이터를 넣을 수 있습니까? 나는 그들을 통해 반복합니까? 나는 동적 인 필드를 잘 조작하는 방법을 정말로 모르겠다.

도움 주셔서 감사합니다.

아론

답변

1

이름 그것이 PHP 배열 (안 IDS)를 첨가되어 있다면 각 날짜 란 :

<input type="text" id="date'+current+'" name="classDate[]" class="required" /> 

에서 [] 구문을 사용하여 (AN array_push() 바로 일종의) classDate 자동으로 될 것 $ _POST에 배열. 그런 다음 해당 배열에서 for 루프를 수행하십시오.

+0

훌륭하게 일했습니다 ... – Ratty

1

는 내가 같은 경우 쉽게 구문 분석을 찾는 경향이 x는 카운터입니다 classDate_x을, 그래서 나중에 분할 할 수 있습니다.

그러나 일치하지 않을 때까지 PHP의 이름을 반복 할 수 있습니다.

나는 : isset($_POST['classDate_x'])을 사용합니다. 하나가 설정되지 않은 곳에 도착하면 처리 루프를 종료합니다.

jquery를 사용하고 있으므로 사용자가 하나를 선택하면 날짜를 제출하는 것이 더 쉬울 수 있습니다. 그러면 동적 요소마다 기능을 포함시킬 수 있습니다.

+0

고마워, 내가 좀 봐야 겠어! =) – Ratty