질문드립니다.(분할필드 가변변수) 채택완료
아래 색상으로 표시된 부분
wr_11을 분할필드로 하려고 하는데
wr_11[0]
wr_11[1] 이런식으로 나오게 [$h]를
'wr_'.$k 다음에 붙여야 하는데 어떻게 해야 하는지요...
아래처럼하니 출력이 안됩니다.
$wra_start= 71; $h=0; for($k=11; $k<=63; $k+=4){ $h++; $hs=sprintf("%02d", $h) ; $wr11 = 'wr_'.$k[$h]; $wr71 = 'wr_'.$wra_start; $wr12 = 'wr_'.($k+1); $wr74 = 'wr_'.($wra_start+3); $wr13 = 'wr_'.($k+2); $wr73 = 'wr_'.($wra_start+2); $wr14 = 'wr_'.($k+3); $wr72 = 'wr_'.($wra_start+1); $wra_start+=7;
답변 3개
반복문안에서 다른 값을 처리하는 것에 대한 질문이라 판단하고 답을 드립니다.
</p>
<p>$wra_start= 71; $h=0;
for($k=11; $k<=63; $k+=4){ $h++; $hs=sprintf("%02d", $h) ;
$wr11 = 'wr_'.$k[$h]; $wr71 = 'wr_'.$wra_start;
$wr12 = 'wr_'.($k+1); $wr74 = 'wr_'.($wra_start+3);
$wr13 = 'wr_'.($k+2); $wr73 = 'wr_'.($wra_start+2);
$wr14 = 'wr_'.($k+3); $wr72 = 'wr_'.($wra_start+1);
$wra_start+=7;</p>
<p> </p>
<p>
와 같은처리가 정상적으로 이루어 지려면
wr_11 에도 여러개의 값이 있는것 같네요
유연한 Key값을 소유한 내용이라면 foreach를 사용하면 좋고
고정적인 숫자가 key값이라면 for 안 중첩 for문을 사용하면 됩니다
</p>
<p>// 구조를 조금 변경해봅니다.</p>
<p>// $wr 이란 변수를 만들어 배열로 구성하고</p>
<p>$wr = array();</p>
<p>for ($wra_start= 71, $h=1, $k=11; $k <= 63; $wra_start += 4) {</p>
<p> </p>
<p> for ($x =0; $x < 4; $x++, $h++, $k++, $wra_start++) {</p>
<p> $hs=sprintf("%02d", $h) ;
$wr[$k] = 'wr_'.$k[$h]; </p>
<p> $wr[$wra_start] = 'wr_'.$wra_start; </p>
<p> }</p>
<p> // <strong><s>$wra_start+=7;</s></strong></p>
<p>} </p>
<p> </p>
<p>//확인을 위한 출력</p>
<p>print_r ($wr);</p>
<p>
이렇게 해서 한번 확인해보세요
답변에 대한 댓글 2개
중간에 중첩루프에서 처리한건
반복되는 동작중에 부분증가만 하는 작업을 반복하지 않게 하려고 한겁니다.
wr11 ~ wr14 까지의 동작에 해당되는 사항이 동일하게 증가하는 값이라서
x = 0 ~ 3 까지 작동시킨겁니다.
댓글을 작성하려면 로그인이 필요합니다.
분할필드라면, 구분자로 여러개의 값이 저장되어 있는건가요?
만약 구분자가 | 라면.. 아래와 같이 하면 됩니다.
$wr_11_arr = explode("|",$write['wr_11']);
" > " > " >
답변에 대한 댓글 1개
인풋에 이렇게 한개로 해서 자동출력되게 해야 해서요,,
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
wr_11
wr_12
wr_13
..
..
이거를 for문으로 출력하는건데요,,,그래서
인풋도 이렇게 되어 있습니다.
<input type="url" name="<?=$wr11?>" value="<?=$write[$wr11]?>" "링크<?=$h?>" >
그런데
wr_11을 분할 필드로 하려고 하는거라
위의 for문에서
'wr_'.$k;
$k뒤에 [$h]가 붙게 만들어야
인풋에서
<input type="url" name="wr_11[]" value="wr_11[0]" "링크<?=$h?>" >
<input type="url" name="wr_11[]" value="wr_11[1]" "링크<?=$h?>" >
<input type="url" name="wr_11[]" value="wr_11[2]" "링크<?=$h?>" >
이런 식으로 출력되어서요..
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
<input type="url" pattern="https?://.+" title="http:// 또는 https://" name="<?=$wr11?>[<?=$h?>]" class='ed urlk' id="<?=$wr11?>" onchange="equalVal(<?=$wr71?>, this.value);" value="<?=$write[$wr11]?>" size="45" itemname="상품링크<?=$h?>" >
11~70까지는 가로 1행에 4개 핃드
71~ 175까지는 가로 1행에 7개 필드 이래서 wra_start이런거 같습니다.
총 15개 행이구요,,,
답변을 참고해서 삽질해보겠습니다. 늘 감사합니다.
만들어주신 코드는 4개 행만 나오고
wr_11[0]아니고 wr_[0] 이렇게만 출력됩니다.
$x =0; $x < 4; $x++, 여기서 x는 왜있는건지 알 수 잇을까요?