2012-12-05 2 views
2

양식에 숨겨진 필드가 있는데 어레이의 가격과 관련된 날짜를 대조하고 게시하여 다른 페이지에서 사용할 수 있습니다. 현재, 아래에 정의 된 다음 입력 필드가 있습니다.입력 필드 내의 다차원 배열

<input name="arrayDatesPrices[]" type="hidden" 
value="<?php echo PrintDateTime($recordsCourseWeeks->getField('Start_date'),"d/m/Y"); ?>"> 

다음 페이지에서 print_r (arrayDatesPrices)을 수행하면 배열의 모든 날짜가 나열됩니다. 이것은 정확히 예상대로 작동합니다. $ Price_per_week이라는 또 다른 필드가 있는데 가격을 날짜와 연결하고 싶습니다. 나는 다음과 같이 노력했다.

<input name="arrayDatesPrices[]" type="hidden" 
value="<?php echo array(PrintDateTime ($recordsCourseWeeks->getField('Start_date'),"d/m/Y"), array($Price_per_week)); ?>"> 

다음 페이지에서 print_r (arrayDatesPrices)을 수행하면 빈 배열이 생깁니다. 포맷이 잘못되었거나 다차원 배열 입력 필드를 사용할 수 있습니까?

+0

대신 세션을 통해이 일을 전송하려고? – hakazvaka

+0

를 코드에 추가하십시오. 그것은 배열을 value = "Array"로 인도하는 문자열로 변환합니다. 전체 배열 내부의 value 속성이 필요하면 print_r ($ array, true)를 사용할 수 있습니다. –

답변

0
Try like this.. 

<input name="arrayDatesPrices[]" type="hidden" 
value="<?php echo PrintDateTime($recordsCourseWeeks->getField('Start_date'), 
"d/m/Y").':'.$Price_per_week ; ?>"> 

After submit... 
$i = 0; 
foreach($arrayDatesPrices as $arr) 
{ 
list($stat,$wk) = explode(':',$arr); 
$new_arr[$i]['start_date'] = $stat; 
$new_arr[$i++]['wek'] = $wk; 
} 
1

어쩌면 두 개의 값을 필드에 넣을 수 있습니다. 구분 기호 및 제출 후 서버 코드와 함께 폭발?

또는 같은 다른 방법으로 필드를 생각 :

<input name="arrayDatesPrices[0][start_date]" type="hidden" value="<?php echo PrintDateTime($recordsCourseWeeks->getField('Start_date'),"d/m/Y"); ?>" /> 
<input name="arrayDatesPrices[0][price_per_week]" type="hidden" value="<?php echo $Price_per_week ?>" /> 

그리고 당신은 저장 구조에 json_* 또는 serialize finctions를 사용할 수있는 값

2

의 각 커플의 첫 번째 매개 변수를 증가. 예를 들어
:

<input name="arrayDatesPrices[]" type="hidden" 
value="<?php echo json_encode(PrintDateTime($recordsCourseWeeks->getField('Start_date'),"d/m/Y")); ?>"> 

와 PHP 코드에서 유 호출해야합니다 :

$val = json_decode($_REQUEST['arrayDatesPrices'][$i]);