다른 테이블 필드의 특정 데이터 추출

다른 테이블 필드의 특정 데이터 추출

QA

다른 테이블 필드의 특정 데이터 추출

답변 9

본문

게시판 item1 (g5_write_item1) 테이블의

wr_id = '1'을 참조해서

wr_1에 배열로 쪼개져 들어 있는 데이터들 '서울|경기|강원|.......'들 가운데, 첫번째 것('서울')을

 

게시판 item2의 view 페이지에 표시하는 방법을 알고 싶습니다.

 

 

 

이 질문에 댓글 쓰기 :

답변 9

<?php

$value = array();
$wr4 = sql_query(" SELECT  wr_4  FROM g5_write_item2 where wr_id = 1;");
for ($i=0; $row=sql_fetch_array($wr4); $i++) {
    $value[$i] = explode("|", $row['wr_4']); 

    echo $value[$i][0];
}
//print_r($value);
echo $value[0];
?>

아래 소스를 참고해보세요.


$value = array();
$wr1 = sql_query(" SELECT * FROM g5_write_item1 ");
for ($i=0; $row=sql_fetch_array($wr1); $i++) {
    $value[$i] = explode("|", $row);
}
print_r($value);

 

g5_write_item1의 값을 불러오고

불러온 값을 $value의 배열에 담아내는 소스입니다.

 

 

 

답변 감사합니다. 한데 조언대로 해보니 이렇게 경고가 뿌려지네요.
Warning: explode() expects parameter 2 to be string, array given in F:\www\broadportn\skin\board\item2\view.skin.php on line 212
Array ( [0] => )

item1에서 wr_id = '1'인 곳의 wr_4의 배열값들 가운데서 첫번째 배열값만 추출해서 표시해줄수 있도록 좀 도와주세요.

참고하세요
value = array();
$wr1 = sql_query(" SELECT 'wr_4' FROM g5_write_item1 where wr_id = 1");
for ($i=0; $row=sql_fetch_array($wr1); $i++) {
    $value[$i] = explode("|", $row['wr_4']);  //item1에서 wr_id = '1'인 곳의 wr_4의 배열값들
}
//print_r($value);

echo $value[0];

echo $value[0][0];

for ($i=0; $row=sql_fetch_array($wr4); $i++) {

    echo $row['wr_4'];  // 확인해 보세요
    $value[$i] = explode("|", $row['wr_4']);  //item1에서 wr_id = '1'인 곳의 wr_4의 배열값들
}

<?php
$value = array();
$wr4 = sql_query(" SELECT 'wr_4' FROM g5_write_item2 where wr_id = 1");
for ($i=0; $row=sql_fetch_array($wr4); $i++) {
    echo $row['wr_4'];  // 확인해 보세요
    $value[$i] = explode("|", $row['wr_4']);  //item1에서 wr_id = '1'인 곳의 wr_4의 배열값들
}
?>



<?php
$value = array();
$wr4 = sql_query(" SELECT 'wr_4' FROM g5_write_item2 where wr_id = 1");
for ($i=0; $row=sql_fetch_array($wr4); $i++) {
    $value[$i] = explode("|", $row['wr_4']);  //item1에서 wr_id = '1'인 곳의 wr_4의 배열값들
    echo $row['wr_4'];  // 확인해 보세요
}
?>

이 두 가지 다 wr_4 가 뿌려집니다.ㅜㅜ

wr_1에 배열로 쪼개져 들어 있는 데이터들 '서울|경기|강원|.......'들 가운데, 첫번째 것('서울')을

 

자료가 wr_1 인가요..   wr_4 인가요

SELECT 'wr_4' FROM g5_write_item2 where wr_id = 1;

결과 좀 보여주세요...

SELECT  wr_4  FROM g5_write_item2 where wr_id = 1;

이렇게 해보시겠어요...

그런데 아래와 같이 php/sql 문을 실행해보니
<?php

$value = array();
$wr4 = sql_query(" SELECT  wr_4  FROM g5_write_item2 where wr_id = 1;");
for ($i=0; $row=sql_fetch_array($wr4); $i++) {
    $value[$i] = explode("|", $row4);  //item1에서 wr_id = '1'인 곳의 wr_4의 배열값들
}
//print_r($value);
echo $value[0];
?>

view에서는 Array 로 뿌려집니다.
echo $value[0];를 echo $value[0][0]; 으로 해보니 아무것도 뿌려주지 않고요.

보내주신 조언들 감사합니다.

현재 item2 테이블 wr_id = 1 줄의  wr_4에 담겨있는 데이터는 '서울|경기|강원|......'입니다.

조언들에 따라 아래와 같이 스크립트를 주고,

<?php

$value = array();
$wr4 = sql_query(" SELECT 'wr_4' FROM g5_write_item2 where wr_id = 1");
for ($i=0; $row=sql_fetch_array($wr4); $i++) {
    $value[$i] = explode("|", $row['wr_4']);  //item1에서 wr_id = '1'인 곳의 wr_4의 배열값들
}
echo "\$value -> ";
print_r($value);
echo "<br>\$value[0] -> ";
echo $value[0];
?>

로 해본 결과,

아래와 같이 뿌려지네요.

 

$value -> Array ( [0] => Array ( [0] => wr_4 ) )
$value[0] -> Array

 

'서울' 값이 표시되야 하는데 어디에 문제가 있는지요?

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 253
© SIRSOFT
현재 페이지 제일 처음으로