리자

좀 더 쉬운 방법이 있을것 같은데 잘 안됩니다.

· 2011-10-11 (화) 10:53:31 · 2956 · 19
1.
$_POST['it_id']
$_POST['it_name']
 
또는
 
2.
$_POST['it_id'][0]
$_POST['it_name'][0]
$_POST['it_id'][1]
$_POST['it_name'][1]
 
이 값을 받습니다.
 
여기서 1번의 경우와 2번의 경우를 모두 처리할 수 있는 for 문을 작성해야 하는데
 
for ($i=0; $i<count($_POST['it_id']); $i++) {
    $id = $_POST['it_id'][$i];
}
 
를 얻게 되면 1번의 경우 $id 값은 첨자 0번의 경우 완전한 값이 아니라
 
substr($_POST['it_id'],0,1) 의 값을 얻게 됩니다.
 
 
1번의 경우이거나 2번의 경우이거나 만족할 만한 for 문을 작성하고 싶은데 ... 안되는군요. ㅜㅜ
|

댓글 19개

2011-10-11 (화) 12:13:22
is_array 로 하면 안되나요?
1.
$_POST['it_id']
$_POST['it_name']

또는

2.
$_POST['it_id'][0]
$_POST['it_name'][0]
$_POST['it_id'][1]
$_POST['it_name'][1]

1번 유형이건 2번 유형이건 어떤 유형이 들어와도

for ($i=0; $i<count($_POST['it_id']); $i++) {
$id = $_POST['it_id'][$i];
}

이 코드를 실행해야 합니다.
클래스에서 오버라이딩 같은건가요. ㅎㅎ
저는 $_POST가 2차원배열 되는거 첨 알았어요. ㅋ
헉~
for ($i=0; $i<count($_POST['it_id']); $i++) {
$id = (is_array($_POST['it_id']))?$_POST['it_id'][$i]:$_POST['it_id'];
echo $id."<br>";
}


// is_array 를 안써야 하나요?
넘겨야 되는 변수가 좀 많습니다.
갯수가 정해지지 않았다고 봐도 됩니다.
if(!is_array($_POST['it_id'])) $_POST['it_id'] = array($_POST['it_id']);

for ($i=0; $i<count($_POST['it_id']); $i++) {
$id = $_POST['it_id'][$i];
echo $id."<br>";
}

예전에 foreach문으로 코딩을 해두어
소스 변경시 그냥 변수를 무조건 배열로 만든적이 있습니다만.

질문이 정확하게 이해가 안갑니다!
1.
<form method='post'>
<input type='text' name='it_id'>
</form>

2.
<form method='post'>
<input type='text' name='it_id[]'>
<input type='text' name='it_id[]'>
</form>

이런 경우로 보시면 됩니다.
서누니님 말씀대로 배열이 아닌 경우를 배열로 변경해준 다음 배열 처리 방법으로 진행되어야 할 것 같은데.. 저도 문제를 정확히 이해하지 못한걸까요 ;ㅅ;ㅋ
php단

// POST 전체 체크
foreach($_POST as $key => $value) {
if(!is_array($value)) $_POST[$key] = array($_POST[$key]);
}

필요한 for문

//특정만 체크
$체크용 = array('it_id','it_name');
foreach($체크용 as $value) {
if(!is_array($_POST[$value])) $_POST[$value] = array($_POST[$value]);
}

필요한 for문





1.
<form method='post'>
<input type='text' name='it_id'>
</form>

2.
<form method='post'>
<input type='text' name='it_id[]'>
<input type='text' name='it_id[]'>
</form>

이런 경우로 보시면 됩니다.

여기서
애초에

1.
<form method='post'>
<input type='text' name='it_id[]'>
</form>

으로 보내면 안되나요?
네 그게 안됩니다. ㅠㅠ
결국 is_array 통해 재정의를 해야 되는 문제가 아닌가요.

$_POST['it_id'] = 'aaa';
for ($i=0,$_POST['it_id'] = is_array($_POST['it_id']) ? $_POST['it_id'] : array($_POST['it_id']); $i<count($_POST['it_id']); $i++) {
$id = $_POST['it_id'][$i];
echo $id."<br>";
}
2011-10-12 (수) 09:08:29
배열이 아닌 값은 배열로 만들어주는 루프문을 하나 추가하면 되지 않나요?
for($i=0; $i < count($_POST); $i++) { <- assoc array 인 경우는 foreach로
if(!is_array($_POST[$i])) {
$_POST[$i] = Array($_POST[$i]);
}
}
음 위에분들이 다 답변을 단것 같은데
저런것이 아니라면

문제가 이해안됩니다.....
몇번을 읽어보아도 위에분들 답변이 다 맞는것 같은데요.
제가 이해를 잘못시켜 드려 죄송합니다.

<form>
<input type='text' name='it_id[]'>
</form>

로 수정하는 방향으로 하겠습니다.

답변 주신분들 감사합니다. (__) 꾸벅
개발자 게시판은 아저씨냄새 팍나네요
2011-10-13 (목) 10:13:13
여성 개발자 영입에 힘써야 겠습니다.
자바스크립트 이용해서 단일 다중 처리해서 전송하고 받을때는
gettype 으로 처리하면 되는거 아닌가요
늦은 답변이겠죠???

for ($i=0, $c=count($_POST['it_id']); $i<$c; $i++) {
$id = $c ? $_POST['it_id'][$i] : $_POST['it_id'];
}
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
12-01-22 조회 3,620
12-01-21 조회 2,949
12-01-19 조회 4,838
12-01-18 조회 2,849
12-01-18 조회 2,807
12-01-18 조회 3,010
12-01-17 조회 2,789
12-01-17 조회 3,053
12-01-14 조회 1.1만
12-01-14 조회 3,592
12-01-14 조회 3,903
12-01-11 조회 3,351
12-01-11 조회 3,083
12-01-11 조회 3,091
12-01-11 조회 3,205
12-01-11 조회 3,415
12-01-11 조회 2,725
12-01-10 조회 3,042
12-01-10 조회 2,822
12-01-10 조회 2,845
12-01-09 조회 2,850
12-01-08 조회 2,940
12-01-07 조회 2,867
12-01-06 조회 2,659
12-01-06 조회 2,783
12-01-05 조회 2,784
12-01-02 조회 2,929
11-12-29 조회 2,899
11-12-28 조회 2,887
11-12-28 조회 2,802
11-12-27 조회 3,019
11-12-23 조회 2,750
11-12-23 조회 2,893
11-12-21 조회 3,889
11-12-21 조회 2,928
11-12-19 조회 2,837
11-12-14 조회 4,244
11-12-08 조회 3,393
11-12-08 조회 4,061
11-12-07 조회 4,340
11-12-06 조회 4,242
11-12-06 조회 3,621
11-12-05 조회 3,265
11-12-05 조회 4,858
11-12-04 조회 3,264
11-12-03 조회 3,568
11-12-02 조회 3,475
11-12-02 조회 3,471
11-12-02 조회 2,803
11-12-01 조회 2,785
11-12-01 조회 3,682
11-12-01 조회 2,763
11-11-29 조회 5,642
11-11-23 조회 3,577
11-11-23 조회 3,924
11-11-22 조회 3,899
11-11-22 조회 2,968
11-11-21 조회 3,496
11-11-21 조회 2,799
11-11-18 조회 3,891
11-11-18 조회 3,048
11-11-17 조회 2,941
11-11-17 조회 2,950
11-11-17 조회 4,520
11-11-11 조회 2,815
11-11-11 조회 2,809
11-11-11 조회 3,943
11-11-11 조회 4,646
11-11-08 조회 2,924
11-11-06 조회 3,368
11-11-06 조회 3,670
11-10-21 조회 2,469
11-10-21 조회 2,374
11-10-19 조회 2,436
11-10-19 조회 3,949
11-10-08 조회 2,485
11-10-06 조회 4,168
11-10-01 조회 2,580
11-09-30 조회 2,559
11-09-29 조회 2,558
11-09-26 조회 2,418
11-09-23 조회 2,417
11-09-23 조회 2,178
11-09-22 조회 2,766
11-09-09 조회 3,070
11-08-30 조회 4,039
11-08-23 조회 2,203
11-08-12 조회 2,375
11-08-04 조회 3,960
11-07-01 조회 2,938
11-06-09 조회 2,579
11-05-17 조회 2,694
11-05-07 조회 2,954
11-04-21 조회 2,616
11-04-12 조회 2,487
11-04-11 조회 3,578
11-02-11 조회 2,707
11-02-08 조회 2,171
11-01-11 조회 2,547
10-11-26 조회 3,893