테스트 사이트 - 개발 중인 베타 버전입니다

function 안에 $sql 구문 넣기 되나요? 채택완료

울라프 5년 전 조회 2,138

</strong></p>

<p>function eee(){</p>

<p>   $sql = "SELECT * FROM gml_write_free WHERE wr_5 = '$aatoday';</p>

<p>   return $sql;</p>

<p>}</p>

<p>echo eee();</p>

<p><strong>

 

요러코롬 할려고 하는데 될까요?

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

답변 3개

채택된 답변
+20 포인트

네 상관없습니다.

 

하지만 저렇게 쿼리문장을 가져오기보다는 함수내에서 쿼리문을 실행하고 그 결과값을 가져와서 사용하는게 더 낫지 않을까요??

이유가 있으시다면 저게 더 낫습니다..

 

function eee(){
   $sql = "SELECT * FROM gml_write_free WHERE wr_5 = '$aatoday';
   $result = sql_query($sql);
   $list = array();
   for($i=0; $row=sql_fetch_array($result); $i++){
     $list[$i] = $row;
   }
   return $list;
}

print_r2($list);


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

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

B
5년 전

됩니다.

열고 닫기 잘 맞춰주고,

뜬금없이 등장하는 변수가 없도록 처리하면요.

</p>

<p>// Functions</p>

<p>// - <a href="https://www.php.net/manual/en/language.functions.php" target="_blank" rel="noopener noreferrer">https://www.php.net/manual/en/language.functions.php</a></p>

<p>// - <a href="http://docs.php.net/manual/kr/language.functions.php" target="_blank" rel="noopener noreferrer">http://docs.php.net/manual/kr/language.functions.php</a></p>

<p>function eee($aatoday){

   $sql = "SELECT * FROM gml_write_free WHERE wr_5 = '{$aatoday}'";

   return $sql;

}

echo eee('값');</p>

<p>

</p>

<p>// Variable scope</p>

<p>// - <a href="https://www.php.net/manual/en/language.variables.scope.php" target="_blank" rel="noopener noreferrer">https://www.php.net/manual/en/language.variables.scope.php</a></p>

<p>// - <a href="http://docs.php.net/manual/kr/language.variables.scope.php" target="_blank" rel="noopener noreferrer">http://docs.php.net/manual/kr/language.variables.scope.php</a></p>

<p>function eee(){

   global $aatoday;

   $sql = "SELECT * FROM gml_write_free WHERE wr_5 = '{$aatoday}'";

   return $sql;

}

echo eee();</p>

<p>

</p>

<p>// $GLOBALS</p>

<p>// - <a href="https://www.php.net/manual/en/reserved.variables.globals.php" target="_blank" rel="noopener noreferrer">https://www.php.net/manual/en/reserved.variables.globals.php</a></p>

<p>function eee(){</p>

<p>   $sql = "SELECT * FROM gml_write_free WHERE wr_5 = '{$GLOBALS['aatoday']}'";

   return $sql;

}

echo eee();</p>

<p>

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

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

5년 전

어떤결과를 원하시는지 모르겠지만 해당 구문을 사용하시면 $sql 질의 결과가 아닌 sql 구문 자체가 출력됩니다. 글로벌 변수로 선언되어있지 있거나 값을 전달받지 않는 이상 함수 내부에서 외부의 변수를 가져올 수 없습니다. 그리고 '{$aatoday}' 로 변경하셔야 변수가 제대로 들어갈 것 같구요

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

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

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

로그인