자바스크립트에서 PHP load시 변수 전달

2021-09-02 (목) 20:54:23 1,971

안녕하세요

자바 스크립트를 활용하여 특정 div 영역에 php를 load하고 있는데요..

예를 들어,

("#div1").load(cfg.board_skin_url+file+".php?bo_table="+g5_bo_table+"&wr_id="+cfg.wr_id

div1에  a.php 파일을 불러 오면서 g5_bo_table명과 wr_id명을 넘기는것 까지는 잘 됩니다.

그런데 해당하는 방법으로 $editor_html 를 넘기려고 하는데,

그누보드에서 $editor_html는 단순 변수가 아니라서 해당 방법으로 넘어가지를 않네요 ㅠㅠ

어케하면 div1에 불러온 a.php에 write.skin.php의 $editor_html 변수를 전달할 수 있을까요?

1. 전역변수 사용 : 안됩니다(전달 자체가 안됨)

2. POST 방법 사용 : 안됩니다 ㅠㅠ(객체라 에디터 자체를 로딩하려고 하면서 에러가 뜸)

조언 부탁드립니다

감사합니다.

|

답변 2개 / 댓글 1개

$editor_html 변수는 서버측에서 가능한 변수입니다.

브라우저에서 돌아가는 javascript변수와는 그 돌아가는 곳이 전혀 다릅니다.

에디터를 삽입할 목적이시라면 a.php 파일 내에서 

bbs / write.php 파일 참조해서 상단에

include_once(G5_EDITOR_LIB); 파일 불러오고

write.skin.php 파일 참조하셔

에디터를 삽입하세요.

답변에 대한 댓글 1개

어이쿠 맞네요.
아무 생각없이 $editor_html 를 $string_data 처럼 단순한 문자열이라고 판단했습니다.ㅋ
2021-09-02 (목) 23:31:27

$editor_html 을 로컬 스토리지나 세션 스토리지에 저장한 후 a.php 를 로드하면 안 되나요?

물론 a.php 에는 로컬 스토리지나 세션 스토리지에 저장된 값을 읽는 장치가 있어야 하겠죠.

예를 들어서 a.php 에서 그 값을 textarea 로 받는다고 한다면... a.php 에 아래와 같은 장치를 만들고...

Copy
<script>

function myData() {
    my.value = sessionStorage.getItem("saveData"); 
    //sessionStorage.clear();
}

</script>

.

.

.

<textarea id=my></textarea>

<script>myData()</script>
 

기본코드에서 a.php 를 로드하기 전에

Copy
<script>
sessionStorage.saveData = <? echo $editor_html; ?> 
</script>

위와 같이 해 주면 되지 않을까요?

textaraea 로 받는 것이 아니라 div 의 innerHTML 등으로 받으려면

my.value = sessionStorage.getItem("saveData"); 를

my.innerHTML = sessionStorage.getItem("saveData"); 로 받으면 됩니다.

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