자바스크립에서 받은 함수를 php로 넘기는 방법..ㅠㅠ
불당님의 팁 이거 보면서 수정중인데요..마무리해도 값이 비어버리네요..
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=23880
///js소스중///
[code]
// bit.ly api를 이용해서 단축 경로를 생성한다
function get_bitly_g4(tid, bo_table, wr_id) {
// set up default options
wr_url = g4_url + '/bbs/board.php?bo_table=' + bo_table + '&wr_id=' + wr_id;
wr_url_encode = escape(wr_url);
var defaults = {
version: '2.0.1',
login: bitly_id,
apiKey: bitly_key,
history: '0',
longUrl: wr_url_encode
};
// Build the URL to query
var daurl = "http://api.bit.ly/shorten?"
+"version="+defaults.version
+"&longUrl="+defaults.longUrl
+"&login="+defaults.login
+"&apiKey="+defaults.apiKey
+"&history="+defaults.history
+"&format=json&callback=?";
// Utilize the bit.ly API
$.getJSON(daurl, function(data){
var bitly_url = data.results[wr_url].shortUrl;
// Make a good use of short URL - 화면의 url 정보를 업데이트
$(tid).html('<a href='+bitly_url+' target=new>'+bitly_url+'</a>');
url = g4_path +'/' + g4_bbs +'/g4_bitly_update.php';
send = 'bo_table=' + bo_table;
send += '&wr_id=' + wr_id;
send += '&bitly_url=' + bitly_url;
$.ajax({
type: 'POST',
url: url,
data: send,
cache: false,
async: false,
success: function(result) {
result = result.split(',');
msg_num = result[0];
if (msg_num !== '000')
alert('잘못된 접근입니다.\n\n'+result);
}
});
});
};
[/code]
////g4_bitly_update.php의 내용////
[code]
<?
include_once("./_common.php");
sql_query(" update $bo_table set wr_1 = '$bitly_url' where wr_id = '{$wr_id}' ");
?>
[/code]
불당님은 새로 테이블 생성했지만 생성안하고 wr_1에 집어 넣으려고 하거든요..ㅠㅠ
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=23880
///js소스중///
[code]
// bit.ly api를 이용해서 단축 경로를 생성한다
function get_bitly_g4(tid, bo_table, wr_id) {
// set up default options
wr_url = g4_url + '/bbs/board.php?bo_table=' + bo_table + '&wr_id=' + wr_id;
wr_url_encode = escape(wr_url);
var defaults = {
version: '2.0.1',
login: bitly_id,
apiKey: bitly_key,
history: '0',
longUrl: wr_url_encode
};
// Build the URL to query
var daurl = "http://api.bit.ly/shorten?"
+"version="+defaults.version
+"&longUrl="+defaults.longUrl
+"&login="+defaults.login
+"&apiKey="+defaults.apiKey
+"&history="+defaults.history
+"&format=json&callback=?";
// Utilize the bit.ly API
$.getJSON(daurl, function(data){
var bitly_url = data.results[wr_url].shortUrl;
// Make a good use of short URL - 화면의 url 정보를 업데이트
$(tid).html('<a href='+bitly_url+' target=new>'+bitly_url+'</a>');
url = g4_path +'/' + g4_bbs +'/g4_bitly_update.php';
send = 'bo_table=' + bo_table;
send += '&wr_id=' + wr_id;
send += '&bitly_url=' + bitly_url;
$.ajax({
type: 'POST',
url: url,
data: send,
cache: false,
async: false,
success: function(result) {
result = result.split(',');
msg_num = result[0];
if (msg_num !== '000')
alert('잘못된 접근입니다.\n\n'+result);
}
});
});
};
[/code]
////g4_bitly_update.php의 내용////
[code]
<?
include_once("./_common.php");
sql_query(" update $bo_table set wr_1 = '$bitly_url' where wr_id = '{$wr_id}' ");
?>
[/code]
불당님은 새로 테이블 생성했지만 생성안하고 wr_1에 집어 넣으려고 하거든요..ㅠㅠ
|
댓글을 작성하시려면 로그인이 필요합니다.
댓글 6개
서버사이드 스크립트(예>php, asp, jsp .. 등등)
클라이언트사이드 스크립트(예>자바스크립트,VB 스크립트 등등)
클라이언트 사이드 스크립트를 서버사이드 스크립트로 보내기 위해서는
페이지 이동을 이용하는 방법을 사용합니다....
* 자바스크립트를 js 파일로 따로 사용하지 않고 php 나 html 파일 안에서 사용하였다면...
php 변수값을 자바스크립트 변수에 대입이 가능합니다...
그러나 자바스크립트를 js 파일에서 호출하여 사용한다면
아작스를 사용해야 합니다.
g4_bitly_update.php에서 sql_query 주석하시고,
update $bo_table set wr_1 = '$bitly_url' where wr_id = '{$wr_id}' 이걸 echo로 찍어보셨나요;
그래서 안나오면 넘기는 페이지에서 post로 넘겼으니.. 혹시 모르니..
해당부분을 아래처럼 바꾸어보세요
wr_1 = '".$_GET['bitly_url']."' where wr_id = '".$_GET['wr_id']."'
그렇게 해서 안되면 이소스는 원래의 소스대로 다시 복구하신후에,
js소스중에, 아래쪽에 type: 'POST', 라는 부분을 type:'GET', 으로 변경해보세요
그냥 순수하게 텍스트로 화면에 뿌려줍니다;
아.. 저리 설명하면 오해하실수도..ㅎㅎ
//sql_query(" update $bo_table set wr_1 = '$bitly_url' where wr_id = '{$wr_id}' ");
echo "update $bo_table set wr_1 = '$bitly_url' where wr_id = '{$wr_id}'";
일반적으론 텍스트를 출력하는 용도이지만.. 저렇게 DB실행하는 쿼리에 값이 제대로 들어가고있는지 확인할때도 씁니다^^;
bitly_url
만 못잡아오네요..
echo를 view.skin.php 에 인쿨르드 시켜서 wr_1 = '".$_GET['bitly_url']."' where wr_id = '".$_GET['wr_id']."' 로 바꿔서 불렀어요 그런데 ".$_GET['bitly_url']." 이자식이 안불러지네요..
우와...
참고로
js소스에 있는 화면에 뿌려주는 얘는 아주 잘나와요..
$(tid).html('<a href='+bitly_url+' target=new>'+bitly_url+'</a>');