삽질의 현장/- Javascript와 HTML

[삽잡이::javascript] Javascript에서 PHP 변수 사용하기

shovelman 2016. 7. 4. 22:48

애초에 PHP는 Server를 위한 언어이고

Javascript는 Client (Browser)를 위한 언어입니다.


둘의 성격은 다릅니다.

서버와 클라이언트...


특히나 Client에서 Server로

즉, Javascript에서 PHP로 데이터를 보낸다고 하더라고

Server에서 바로 받는다는 보장이 없기에

우리는 Ajax와 같은 녀석들을 통해 

Server에 값을 전하고 응답을 기다려서 처리하곤합니다.


그런데, Server에서 Client로 보내는 것은 그럼 어찌할까요?


그래서 PHP 데이이터를 Javascript에서 

어떻게 사용할 수 있을지 생각해봤습니다.


으아~~ 두뇌 풀가동~ 


우선은 직접적으로 echo문을 활용하여

<script> 문을 개방하는(?) 방법이 있습니다.


이전에도 올린 기억이 있습니다.


(참고_ php에서 javascript를 호출해보자)



1
2
3
4
5
6
//php
<?
    $sName = '삽잡이';
 
    echo ('<script> alert($sName); </script>');
?>
cs



대략 이러한 코드를 통해 설명했던 기억이 있군요...


아무튼...

이렇게 php 코드에서 해결 할 수 도 있습니다.


그리고 다른 방법들도 있습니다.


위에서 언급한 Ajax Call을 통해 

Server로 부터 결과를 받아와 사용할 수 도 있습니다.


(참고_ ajax가 뭐니? 축구팀이니?)


1
2
3
4
5
6
7
8
9
10
11
//javascript
$.ajax({
    타입
    , 보낼 url
    , json 형식의 Data
    , sucess : function(response) {
        if(response == 'success') {
            // Good Good Good
        }
    }
});
cs



이런식으로 Server에 다녀와서 

필요한 일들을 하고 오는 것이지요.


그리고 하나 더 소개드립니다!


오~ 뭐야~~ 뭐야~~


바로 input type의 hidden 속성을 사용하는 것입니다.



1
2
3
4
<!-- html -->
<form>
    <input type="hidden" name="name" id="name" value="<?php $sName?>">
</form>
cs



이렇게 PHP $sName 변수의 값을 

Javascript에서 낼름(?) 할 수 있습니다.


1
2
3
//javascript
var sName = '';
sName = $("#name").val()
cs



이처럼 jQuery Selector를 사용하여

hidden속성의 input 태그에 접근하여 

value 값을 가져오는 것이지요!


이 외에도 방법은 무긍무진하겠지요!?


우리 모두 즐겁게 코딩합시다~


굳~