채택완료

답없는 초보가 질문드려요~

디비 sending_number 필드에 아래처럼 분할로 저장되어 있습니다.

ABC|DEF|GHI|JKL

그래서 팝업에 불러올때

<?php
@include_once('../../../../common.php');            // 일반 스킨일 때 common.php 의 위치

include_once(G5_LIB_PATH.'/common.lib.php');

$result = sql_fetch("SELECT `wr_subject`, `sending_date` , `sending_number` FROM g5_re_sending WHERE `wr_id` = $write[wr_id] ");

?>

상단에 이렇게 하구요,

중간에 

<?php
$sending_number = explode("|", $write['sending_number']);  
for($k=0; $k<4; $k++){
?>


<input type="text" name="sending_number[]" value="<?php echo $result['sending_number'][$k];?>" id="sending_number_<?php echo $write['wr_id'] ?>_<?=$k?>" class="date"  size="13" >

<? } ?>

이렇게 하니 

인풋에

ABC

DEF

GHI

JKL

이렇게 나오지 않고

A

B

C

|  (구분자)

이렇게 철자 하나씩만 출력되고 끝나버리는데 어떻게 해야 할까요?

|

답변 3개 / 댓글 3개

채택된 답변
+20 포인트

첫번째 의문은

위쪽에서 $result 에 fetch를 했는데 explode하는 것은 왜 $write 인가입니다

<?php
$sending_number = explode("|", $write['sending_number']);  

//$result['sending_number'] 가 되어야하지않을까요?
for($k=0; $k<4; $k++){
?>
<input type="text" name="sending_number[]" value="<?php echo $result['sending_number'][$k];?>" id="sending_number_<?php echo $write['wr_id'] ?>_<?=$k?>" class="date"  size="13" >

<? } ?>

드번째는 또 출력할때는 $sending_number에 explode를 해놓으셨는데 input에는 $result['sending_number'][$k]라 적어 놓으셨습니다 $sending_number[$k]가 되어야 하지않을까요?

해당부분 체크해보시고 반영해보세요

답변에 대한 댓글 1개

아우,,감사합니다~ !! 어린이의 빛이십니다~
상세하게 알려주셔서 될거 같으면서 알려주신대로 고치면서 안되면 어떻하지 하고 조마조마하면서 새로고침했습니다. ㅋㅋㅋ 좋은 하루되세요
2020-05-08 (금) 08:50:54

만약에 $write['sending_number'] 값이 ABC|DEF|GHI|JKL 라면

$sending_number = explode("|", $write['sending_number']);

$sending_number가 배열이 됩니다.
그래서

$sending_number[0] = ABC;
$sending_number[1] = DEF;
$sending_number[2] = GHI;
$sending_number[3] = JKL;

이렇게 값이 들어가겠죠.

반복문은

for($k=0; $k < count($sending_number); $k++){
    echo $sending_number[$k];
}

답변에 대한 댓글 1개

<?php

$sending_number = explode("|", $write['sending_number']);

for($k=0; $k < count($sending_number); $k++){
echo $sending_number[$k];

?>


<input type="text" name="sending_number[]" value="<?php echo $sending_number[$k];?>" id="sending_number_<?php echo $write['wr_id'] ?>_<?=$k?>" class="date" size="13" >

<? } ?>

이렇게 햇더니 안됩니다.

반복문 밖에서 <?php echo $result['sending_number'][0] ?> 이렇게 해봤더니 마찬가지로 A만 나오구요,

<input type="text" name="sending_number[]" value="<?php echo $sending_number[$k];?>" id="sending_number_<?php echo $write['wr_id'] ?>_<?=$k?>" class="date"  size="13" >

이렇게 한번 해보세요

답변에 대한 댓글 1개

원래 그렇게 했었는데 아무것도 안나오더라구요

답변을 작성하려면 로그인이 필요합니다.