2026, 새로운 도약을 시작합니다.

xml 리턴할때 php변수사용법 채택완료

제가 설정한 사이트에 get방식으로 값을 보내주는데

그걸가지고

xml return을 해야합니다.

Copy


 

$test = $_GET['test']

$sql = "select * from xxx where type = $test";

$row = sql_fetch($sql);

 

echo "

$row['name']";

이런식으로 받아온값으로 db조회를해서 

xml 리턴 name에 넣어주고 싶은데

Copy


$row['name']

가 인식을 못합니다.

저거대신에 123 넣으면 123이 출력되는거봐서 php 변수사용을 저렇게 하는게 아닌것 같은데

어떻게 하면 할수있을까요?

답변 3개

채택된 답변
+20 포인트

해당 쿼리의 결과값이 없어 보입니다

쿼리부분에서 "select * from xxx where type = '{$test}'"

감싸 주세요 type의 컬럼타입이 int가 아닌이상 감싸줘야합니다

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

echo $row['name'] 쳐보면 나오는거봐서 쿼리는 잘 작동하는거 같습니다 ㅠ

말씀해주신 {} 로 해도 안되네요.
echo "<?xml version=1.0 encoding=utf-8?><name>".$row['name']."</name>";
출력부분도 이렇게 해보세요
여러가지로 해봤는데 안되네요

그냥 get넘어오는사이트를 들어가보면(뒤에 get넘겨주고)

제대로 출력되는데 (쿼리도 다 작동하고, 임의로 넣은값도 다 동작하는데..)

echo xml안으로만 들어가면 인식을 못해버리는데

무슨 이유가있을까요?

$row['name'] = '123';
echo $row['name'] => 123 출력 ok

"<?xml version=1.0 encoding=utf-8?><name>123</name>"; => 123출력됨
"<?xml version=1.0 encoding=utf-8?><name>".$row['name']."</name>"; => 빈값출력ㅠㅠ

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

<name>$row['name']</name>"; 을

<name>{$row['name']}</name>"; 로해보세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

다 안됩니다 ㅠㅠ

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

$row['name'] = '123'; 이렇게 지정하시지 마시고

$test = $_GET['test']
$sql = "select * from xxx where type = '{$test}'";
$row = sql_fetch($sql);
echo $row['name'];

만했을때도 값이 찍히시나요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

네 그냥 echo $row['name'] 하면 값이 찍히는데

xml 안에 넣으면 출력이 안되네요.

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

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

로그인
🐛 버그신고