유메시지 오류부분
본문
아래코드적용시 그림처럼 나옵니다.
고수님 좀 봐주세요 어디를 어떻게 수정해야 할런지요.
또한 회원이 특정게시판에 글이 올라오면 회원에게도 유메시지푸시되게 하면 너무 좋겠습니다.
메일처럼 본인이 글 작성하면 메일로 오고 댓글달면 메일오는것처럼....
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
?>
<!--2013-04-21 그누보드 헌이가-->
<?
$data_path = G5_PATH."/data/file/".$bo_table;
$sql = " select * from g5_board_file where wr_id = '$wr_id' and bo_table = '$bo_table'";
$qr = sql_query($sql);
for ($i=0; $row=sql_fetch_array($qr); $i++) {
$bf_file1 = $row[bf_file];
}
$gps_l = $data_path.'/'.$bf_file1; //첨부파일 출력
?>
<?
$exif = @exif_read_data($gps_l, 0, true);//exif 추출
if ($exif) {
$gps_lat = null;
$gps_lon = null;
$gps_ele = null;
if ($exif["GPS"]) { //GPS 정보가 있다면
if ($exif["GPS"]["GPSLatitude"] && $exif["GPS"]["GPSLongitude"]) { //위경도 좌표가 있다면
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLatitude"][0], "%d/%d"); //문자->숫자로 계산
$gps_lat_d = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLatitude"][1], "%d/%d");
$gps_lat_m = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLatitude"][2], "%d/%d");
$gps_lat_s = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLongitude"][0], "%d/%d"); //문자->숫자로 계산
$gps_lon_d = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLongitude"][1], "%d/%d");
$gps_lon_m = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLongitude"][2], "%d/%d");
$gps_lon_s = $temp_d1/$temp_d2;
$gps_lat = $gps_lat_d+$gps_lat_m/60+$gps_lat_s/3600; //도분초를 도로 변환
$gps_lon = $gps_lon_d+$gps_lon_m/60+$gps_lon_s/3600;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSAltitude"], "%d/%d"); //문자->숫자로 계산
//$gps_ele = $temp_d1/$temp_d2;
}
}
}
?>
<!--2013-04-24 umsg 모듈 그누보드연동함 헌이가-->
<?
$hostname="http://$_SERVER[SERVER_NAME]";
$link1="$hostname/bbs/board.php?bo_table=$bo_table"; //메세지 확인시 어떠한 게시판에서 새글이 등록이 되었는지 확인하기 위함
$mem = get_member($write[mb_id]);
$content = "$get_member[mb_name]님이 글을 남기셨습니다.제목:$wr_subject.내용:$wr_content,링크:$link1";//글과 URL을 메세지에 첨부토록함 스마트폰에서 링크를 클릭시 해당게시판으로 이동함
function send_umessage($userid,$msgpw,$fromno,$msg,$charset="utf8")
{
$data="userid=$userid&msgpw=$msgpw&fromno=$fromno&msg=$msg&charset=$charset";
$fp=fsockopen("u.ukeypad.com",80);
fputs($fp,"POST /api.php HTTP/1.1\r\n");
fputs($fp,"Host: u.ukeypad.com\r\n");
fputs($fp,"Referer: umessage api\r\n");
fputs($fp,"Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp,"Content-length: ".strlen($data)."\r\n");
fputs($fp,"Connection: close\r\n\r\n");
fputs($fp,$data);
while (!feof($fp))
{
$httpresult.=fgets($fp,128);
}
fclose($fp);
$contentresult=explode("\r\n\r\n",$httpresult,2);
$xml=xml_parser_create();
xml_parse_into_struct($xml,$contentresult[1],$xmlresult);
xml_parser_free($xml);
$params = array();
$level = array();
foreach ($xmlresult as $xml_elem) {
if ($xml_elem['type'] == 'open') {
if (array_key_exists('attributes',$xml_elem)) {
list($level[$xml_elem['level']],$extra) = array_values($xml_elem['attributes']);
} else {
$level[$xml_elem['level']] = $xml_elem['tag'];
}
}
if ($xml_elem['type'] == 'complete') {
$start_level = 1;
$php_stmt = '$params';
while($start_level < $xml_elem['level']) {
$php_stmt .= '[$level['.$start_level.']]';
$start_level++;
}
$php_stmt .= '[$xml_elem[\'tag\']] = $xml_elem[\'value\'];';
eval($php_stmt);
}
}
return $params["RESULT"];
}
/*
--------------------------------------------------------
사용방법
send_umessage(사용자아이디,메세지비밀번호,발신번호,메세지,한글타입);
한글타입이 euc-kr 일경우 euckr로 입력
한글타입이 utf-8 일경우 utf8로 입력
리턴결과
ok : 전송성공
noid : 아이디빠짐
nomsgpw : 메시지비밀번호빠짐
nouser : 유메시지에 가입된 사용자 아님
msgpwerr : 메시지비밀번호 틀림
duplicate : 중복메세지 거절
--------------------------------------------------------
*/
$mem = get_member($write[mb_id]);
if(!$mem) $mem[mb_tel] = "00000000000";
$result=send_umessage("아이디","비번","$mem[mb_hp]",$content,"utf-8");//계정에 맞게 등록하세요
if ($result=="ok")
// {
// echo "전송성공\n";
// }
//else
//{
//echo "전송실패\n";
//}
?>
<?
$wr_1 = $gps_lat;
$wr_2 = $gps_lon;
//$wr_3 = "$get_address";
$sqllat = " update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ";
sql_query($sqllat);
$sqllon = " update $write_table set wr_2 = '$wr_2' where wr_id = '$wr_id' ";
sql_query($sqllon);
//$sqladdres = " update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id' ";
//sql_query($sqladdres);
?>
고수님 좀 봐주세요 어디를 어떻게 수정해야 할런지요.
또한 회원이 특정게시판에 글이 올라오면 회원에게도 유메시지푸시되게 하면 너무 좋겠습니다.
메일처럼 본인이 글 작성하면 메일로 오고 댓글달면 메일오는것처럼....
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
?>
<!--2013-04-21 그누보드 헌이가-->
<?
$data_path = G5_PATH."/data/file/".$bo_table;
$sql = " select * from g5_board_file where wr_id = '$wr_id' and bo_table = '$bo_table'";
$qr = sql_query($sql);
for ($i=0; $row=sql_fetch_array($qr); $i++) {
$bf_file1 = $row[bf_file];
}
$gps_l = $data_path.'/'.$bf_file1; //첨부파일 출력
?>
<?
$exif = @exif_read_data($gps_l, 0, true);//exif 추출
if ($exif) {
$gps_lat = null;
$gps_lon = null;
$gps_ele = null;
if ($exif["GPS"]) { //GPS 정보가 있다면
if ($exif["GPS"]["GPSLatitude"] && $exif["GPS"]["GPSLongitude"]) { //위경도 좌표가 있다면
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLatitude"][0], "%d/%d"); //문자->숫자로 계산
$gps_lat_d = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLatitude"][1], "%d/%d");
$gps_lat_m = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLatitude"][2], "%d/%d");
$gps_lat_s = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLongitude"][0], "%d/%d"); //문자->숫자로 계산
$gps_lon_d = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLongitude"][1], "%d/%d");
$gps_lon_m = $temp_d1/$temp_d2;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSLongitude"][2], "%d/%d");
$gps_lon_s = $temp_d1/$temp_d2;
$gps_lat = $gps_lat_d+$gps_lat_m/60+$gps_lat_s/3600; //도분초를 도로 변환
$gps_lon = $gps_lon_d+$gps_lon_m/60+$gps_lon_s/3600;
list($temp_d1, $temp_d2) = sscanf($exif["GPS"]["GPSAltitude"], "%d/%d"); //문자->숫자로 계산
//$gps_ele = $temp_d1/$temp_d2;
}
}
}
?>
<!--2013-04-24 umsg 모듈 그누보드연동함 헌이가-->
<?
$hostname="http://$_SERVER[SERVER_NAME]";
$link1="$hostname/bbs/board.php?bo_table=$bo_table"; //메세지 확인시 어떠한 게시판에서 새글이 등록이 되었는지 확인하기 위함
$mem = get_member($write[mb_id]);
$content = "$get_member[mb_name]님이 글을 남기셨습니다.제목:$wr_subject.내용:$wr_content,링크:$link1";//글과 URL을 메세지에 첨부토록함 스마트폰에서 링크를 클릭시 해당게시판으로 이동함
function send_umessage($userid,$msgpw,$fromno,$msg,$charset="utf8")
{
$data="userid=$userid&msgpw=$msgpw&fromno=$fromno&msg=$msg&charset=$charset";
$fp=fsockopen("u.ukeypad.com",80);
fputs($fp,"POST /api.php HTTP/1.1\r\n");
fputs($fp,"Host: u.ukeypad.com\r\n");
fputs($fp,"Referer: umessage api\r\n");
fputs($fp,"Content-type: application/x-www-form-urlencoded\r\n");
fputs($fp,"Content-length: ".strlen($data)."\r\n");
fputs($fp,"Connection: close\r\n\r\n");
fputs($fp,$data);
while (!feof($fp))
{
$httpresult.=fgets($fp,128);
}
fclose($fp);
$contentresult=explode("\r\n\r\n",$httpresult,2);
$xml=xml_parser_create();
xml_parse_into_struct($xml,$contentresult[1],$xmlresult);
xml_parser_free($xml);
$params = array();
$level = array();
foreach ($xmlresult as $xml_elem) {
if ($xml_elem['type'] == 'open') {
if (array_key_exists('attributes',$xml_elem)) {
list($level[$xml_elem['level']],$extra) = array_values($xml_elem['attributes']);
} else {
$level[$xml_elem['level']] = $xml_elem['tag'];
}
}
if ($xml_elem['type'] == 'complete') {
$start_level = 1;
$php_stmt = '$params';
while($start_level < $xml_elem['level']) {
$php_stmt .= '[$level['.$start_level.']]';
$start_level++;
}
$php_stmt .= '[$xml_elem[\'tag\']] = $xml_elem[\'value\'];';
eval($php_stmt);
}
}
return $params["RESULT"];
}
/*
--------------------------------------------------------
사용방법
send_umessage(사용자아이디,메세지비밀번호,발신번호,메세지,한글타입);
한글타입이 euc-kr 일경우 euckr로 입력
한글타입이 utf-8 일경우 utf8로 입력
리턴결과
ok : 전송성공
noid : 아이디빠짐
nomsgpw : 메시지비밀번호빠짐
nouser : 유메시지에 가입된 사용자 아님
msgpwerr : 메시지비밀번호 틀림
duplicate : 중복메세지 거절
--------------------------------------------------------
*/
$mem = get_member($write[mb_id]);
if(!$mem) $mem[mb_tel] = "00000000000";
$result=send_umessage("아이디","비번","$mem[mb_hp]",$content,"utf-8");//계정에 맞게 등록하세요
if ($result=="ok")
// {
// echo "전송성공\n";
// }
//else
//{
//echo "전송실패\n";
//}
?>
<?
$wr_1 = $gps_lat;
$wr_2 = $gps_lon;
//$wr_3 = "$get_address";
$sqllat = " update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id' ";
sql_query($sqllat);
$sqllon = " update $write_table set wr_2 = '$wr_2' where wr_id = '$wr_id' ";
sql_query($sqllon);
//$sqladdres = " update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id' ";
//sql_query($sqladdres);
?>
답변 6
$link1="$hostname/bbs/board.php?bo_table=$bo_table"; //메세지 확인시 어떠한 게시판에서 새글이 등록이 되었는지 확인하기 위함
이부분을
$link1="$hostname/bbs/board.php?bo_table=$bo_table&wr_id=$wr_id"; //메세지 확인시 어떠한 게시판에서 새글이 등록이 되었는지 확인하기 위함
로 바꿔주세요
link1 에 게시글 주소가 들어가는걸로 보이는데 게시판 경로까지만 있고 작성글 경로가 없네요.
이부분을
$link1="$hostname/bbs/board.php?bo_table=$bo_table&wr_id=$wr_id"; //메세지 확인시 어떠한 게시판에서 새글이 등록이 되었는지 확인하기 위함
로 바꿔주세요
link1 에 게시글 주소가 들어가는걸로 보이는데 게시판 경로까지만 있고 작성글 경로가 없네요.
에고 아직 비정상
위 코드를 write_update.skin.php파일로 만들어서 해당 게시판/board/basic(해당스킨)에 넣으면 됩니다
물론 아이디/비번은 유메시지 아이디 비번 고수님 한번해보시고 되시면 좀...
위 코드를 write_update.skin.php파일로 만들어서 해당 게시판/board/basic(해당스킨)에 넣으면 됩니다
물론 아이디/비번은 유메시지 아이디 비번 고수님 한번해보시고 되시면 좀...
답변감사합니다만 안되는데요...ㅠㅠ
링크는 다른분들 의견 참고하시고
이름은 $get_member[mb_name] 을 $wr_name 로 변경해보세요
이름은 $get_member[mb_name] 을 $wr_name 로 변경해보세요
유메세지로 &a=$a 와 같은 글들이 전송이 안될텐데요
?a=$a 까지만 전송 되더라고요
?a=$a 까지만 전송 되더라고요
헉 그림파일 어디로 갔지 새로바뀌면서 사라졌네...ㅠㅠ
답변을 작성하시기 전에 로그인 해주세요.