php변수를 읽지 못하는 웹페이지

2016-12-24 (토) 18:03:36 3,396

다음의 내용은 그누보드4 게시판 글입니다.

---------------------------------------

아래의 그림은 저희 의원에서 당뇨병으로 치료받고 계시는 환자분의

혈당기록입니다.
{$img1}images_db/220890621244.png{$img2}

<p2>이러한 습관이 사실 당뇨병치료의 가장 기본이라고 할 수 있습니다.</p2>

--------------------------------------

위의 게시판글을 읽어들여서 $img1, $img2 변수를 읽어들여서 그림이 나타나야 하는데요,

그런데 위의 이미지가 출력되지 않고 글자대로만 출력됩니다. 실제 출력화면

----------------------------------

아래의 그림은 저희 의원에서 당뇨병으로 치료받고 계시는 환자분의

혈당기록입니다.
{$img1}images_db/220890621244.png{$img2}

이러한 습관이 사실 당뇨병치료의 가장 기본이라고 할 수 있습니다.
------------------------------------------------

위에서처럼 변수를 전혀 해석하지 않고 글자대로 출력하네요, 동일한 페이지에서

동일한 내용을  echo 명령으로 출력하면 잘 되는데요,,,,

왜 게시판글의 변수만 유독 읽어들이지 못할까요? 게시판글 읽어들이는 php코드는

아래와 같습니다.

------------------------------------

<?

 
  $query = "select wr_id, wr_subject, wr_content from g4_write_hbp_board where wr_link2 = '220890621244'"   ;
  $result = mysql_query($query);
 
  while($data = mysql_fetch_array($result)){
    $assa1 = $data[wr_content];
      
        $assa4 = nl2br($assa1);
    
   echo ($assa4) ;      
    

  }  ?>
     
      <? mysql_close() ;  ?>

--------------------------------------

변수의 내용은 아래와 같고요,,,

 $img1 = "<br><div align='center' style='margin:0 auto;'><img src='"  ;
  $img2 = "'></div>"  ;

고수님 읽어주셔서 감사합니다~^^ 한수 지도 부탁합니다^^

|

답변 2개 / 댓글 1개

2016-12-24 (토) 20:40:33

게시판 글 내용은 php 코드로 처리되는 것이 아니라 html 코드로 처리되기 때문에 변수를 읽어들일 수 없습니다. str_replace 등의 함수를 이용해서 php 코드 자체에서(게시판 스킨 단) 미리 내용을 php 변수 내용으로 바꿔주는 방식으로 이용하셔야 할 것 같습니다.

답변에 대한 댓글 1개

아 예 근데 str_replace 함수가 전혀 먹혀들어가지 않네요,,,,,
심지어 변수값을 new_message.txt 라는 화일에 저장했다가 이거를 다시 변수에 저장해는
편법을 쓰고,,,,,, 이 새로운 변수에 str_replace 함수를 적용해도 전혀 소용이 없네요,,,,,,, 도무지 ,,,,,
화면에 나타나는 내용이 str_replace 적용하기 전과 동일하네요,,,,,,, 일반 문자열은 str_replace 가 적용되는데 php함수에는 적용되지 않으니 답답하네요,,,

신경쓰이게 해서 죄송합니다만 좀 더 조언 부탁합니다. 고수님의 지도에 미리 감사드립니다 꾸벅

-----------------------------------
$query = "select wr_id, wr_subject, wr_content from g4_write_hbp_board where wr_link2 = '220890621244'" ;
$result = mysql_query($query);


while($data = mysql_fetch_array($result)){
$assa1 = $data[wr_content];

$assa4 = nl2br($assa1);

$fp = fopen("images/new_message.txt","w+") ;
fwrite($fp,$assa4) ;
$fp = fopen("images/new_message.txt","r") ;
$contents = fread($fp,10000) ;
echo $contents ;

$assa5 = str_replace("{$img1}","<br><div align='center' style='margin:0 auto;'><img src='",$contents) ;
$assa6 = str_replace("{$img2}","'></div>",$assa5) ;

echo ($assa6) ;
-------------------------------

서버 php 설정값 short_open_tag가 off 되어 있는 경우는 <?php echo ?> 와 같은 형태로 하셔야 하기 때문에 이와 같은 현상이 나타 납니다.

서버 php 설정에서 short_open_tag 값을 on 으로 변경하셔야 <?= ?> 이와 같은 형태로 사용하실 수 있습니다.

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