반응형

자바스크립트 메모

ajax로 구해온 정보를 다시 페이지에 삽입하려고할때

위치를 정해서 집어넣으면 편한데

이게 갯수가 변동할수있다거나

줄이 바뀌는,

이번경우에는 품목을 추가 삭제할수있는 변동성이 있는 구조여서

거기다 맨 하단에는 합계를 넣어줘야했기에

맨하단 윗칸에 넣어야했다

뭐 테이블구조로 작업을 해둬서 약간 애매하긴했는데

그래도 원래 명령어가 다 있어서

수월하게 풀렸다

 - after()

 지정한 요소 뒤에 새로운 요소를 삽입 

 A.after(B) - A 뒤에 B를 추가

 - insertAfter()

 지정한 요소 뒤에 새로운 요소를 삽입

 A.insertAfter(B - B 뒤에 A 를 추가

 - before()

 지정한 요소 시작 부분에 내용을 삽입 

 A.berfore(B) - A 앞에 B를 추가

 - insertBefore()

 지정한 요소 시작 부분에 내용을 삽입

 A.insertBefore(B) - B 앞에 A 를 추가

728x90
반응형
반응형

이번에 mysql 쿼리에 now() 로 시간을 넣는데

한참 작업하다 보니 뭔가 이상해서 보니까

시간이 다르게 들어가고잇었다

무슨일인고하니

서버시간이 달라져서 그런거였다

가끔 그런다고는하는데 후

일단 putty 접속후

date 로 확인한다음

rdate -s time.bora.net 이 명령어로 자동으로 할려했는데 안돼더라

그래서 수동으로 시간만 변경

date +%T 로 시간확인

date +%T -s "12:00:00" 으로 시간변경!

 

728x90
반응형
반응형

요즘 바빠죽겠다

연말이라 그런가 전화가 쏟아지고 수정사항에 추가사항에

다들 보고서 요청도있고

머리가아프네

일단 시청시간을 초로 db에 받아놨는데

시분초로 계산해서 출력해달라는 요청이있었다

이게 그냥 처리할랫더니 여간 귀찮은게 아니어서

뒤적거리다 함수하나 괜찮아서

적어놔본다

 

 

//시간구하기
if ( ! function_exists('get_time_array')) {
function get_time_array($time)
{
global $g5, $pk;
$return = '';

    //시분초로변환
    $full_sec = floor($time);
    $hour = floor($full_sec / 60 / 60) % 24;
    $min = floor($full_sec / 60) % 60;
    $sec = floor($full_sec % 60);

    //array_push($time_arr,$hour);
    //array_push($time_arr,$min);
    //array_push($time_arr,$sec);
    //$return = $time_arr;

    $return = $hour.'시'.$min.'분'.$sec.'초';
    return $return;
}

}

728x90
반응형
반응형

후 그누보드기반으로 관리자페이지를 만드는데

참 난감? 신선? 한 구간이 있었다

db 테이블별로 날짜칼럼명도 데이터칼럼명도 전부 다른 테이블을

싹 모아서 날짜순 정렬을 해달라는....

그중에 userid는 같아서 그나마 다행이긴했는데

참;

이렇게 저렇게 해보다가

union 해야겟다 결정하고 나서보니

테이블마다 필요한 칼럼갯수가 다 틀린거;

게다가 테이블마다 표출해야할것도달라서 테이블명도 넣어야햇다

아무튼

" SELECT * FROM
(
SELECT id, receiptdate, Complete_id, User_id, reward_ap, 'reward' AS table_name FROM reward
UNION ALL
SELECT id, completedate, Course_id, User_id, '' AS ap, 'complete' AS table_name FROM complete
UNION ALL
SELECT id, visit, Local_id, User_id, '' AS ap, 'stemp' AS table_name FROM stemp
UNION ALL
SELECT id, startDate, Arcontents_id, User_id, '' AS ap, 'arplaylog' AS table_name FROM arplaylog
UNION ALL
SELECT id, date, Local_id, User_id, '' AS ap, 'arphotoplaylog' AS table_name FROM arphotoplaylog
)
AS U where U.User_id = '{$row['id']}' order by U.receiptdate desc "

일단 나온 코드가 이건데

칼럼을 억지로 맞췄다.

아직까지 union은 완벽히 이해는 못한거같다

나중에 한번더 봐봐야지

728x90
반응형
반응형

작업중에 유튜브게시판을쓰고 

기타 유튜브 영상을 끌어오는 작업을할때

동영상링크를 그대로 가져와서 썸네일을 쓰면 무난하지만

영상이 많으면 속도문제가 생긴다

그래서 썸네일만 따로 빼야하는경우, 리스트페이지일경우

추출함수가있길래 써봤다

일단 기본적인 난이도는 쉬움!

함수는 가져와놓고 링크 넣어주면 끝난다

필요한건

유튜브 동영상 ID 와

썸네일 품질형식? 해상도? <- 이게 정해져있더라

일단 함수는

저기 동영상링크부분 youtu.be/ 이후에 나열되는 이상한 문자가 필요하다

그 문자가 바로 동영상 ID

썸네일 주소는 두가지

http://img.youtube.com/vi/동영상ID/이미지형식.jpg

http://i.ytimg.com/vi/동영상ID/이미지형식.jpg

이미지형식이 해상도와 품질쪽인데

- 고품질 (480 x 360) : hqdefault.jpg

- 중간품질 (320 x 180) : mqdefault.jpg

- 보통품질 (120 x 90) : default.jpg

동영상 배경이미지 (480 x 360) : 0.jpg

구간별은 1.jpg , 2.jpg 등으로 설정할수도있다

 

가장 중요한 함수는

그누보드기준 lib.service.php 에 붙여넣어서 사용했다


//유튜브썸네일
if ( ! function_exists('get_youtube_code')) {
    function get_youtube_code($url) { 

        if (empty($url) || !$url) { 
            return;
        } 

        preg_match('@https?://(?:www\.)?youtube\.com/(?:watch\?|\?)[^>]*v[/=]([a-zA-Z0-9-_]+)@', $url, $matches);
        $code = $matches[1];

        if (!$code) { 
            preg_match('@https?://(?:www\.)?youtu\.be/([a-zA-Z0-9-_]+)@', $url, $matches);
            $code = $matches[1];
        }

        return $code;

    } 
}

아래는 적용모습!

728x90
반응형
반응형


요즘 인스타그램 아이디 연동은 거의 당연시되는 분위기라
종종 이미지 가져오기를 하고있는데

오랜만에 들어가보니 인스타 api가 많이 바뀌었더라
기존에 쓰던 코드가 작동은하는데
뭔가 안되는 경우가 생긴듯?

그래서 이것저것 찾아보다가
조금 바꿔서 사용했다

이 방식도 php 7 버전 이상에서
오류가 잠깐 나는것같긴하던데...

더 확인해봥야겠다

            $tagetedInstaUrl = 'https://www.instagram.com/s_zone___/';
            $data = file_get_contents($tagetedInstaUrl);

            if (preg_match('#_sharedData = (.*);</script#', $data, $m)) {
              $json = json_decode($m[1], 1);


              if(!$json) {die ("Can't decode json.");}
              $ppage = $json['entry_data']['ProfilePage'];
              $edges = $ppage[0]['graphql']['user']['edge_owner_to_timeline_media']['edges'];
                $cnt_ins = 0;
                foreach ($edges as $edge) {


                    $node = $edge['node'];
                    $image = $node['thumbnail_src'];
                    $shortcodeForEachPictureUrl = $node['shortcode'];
                    echo '<div class="insta_con col-12 col-sm-12 col-md-4 col-lg-4">';
                    echo '<a href="'.$tagetedInstaUrl.'p/'.$shortcodeForEachPictureUrl.'" target="_blank">';
                    echo '<img id="instagramFeed" src="'.$image.'">';
                    echo '</a>';
                    echo '</div>';

                    $cnt_ins++;
                    if($cnt_ins == 3) //3장만가져오자
                    {
                        break;
                    }

                  }
            }
728x90
반응형
반응형

후 그누보드기초로 홈페이지 제작중에

게시판이아닌 신규페이지에서 검색을 활용하는경우가 많다

보통 일반적인 db구조와 검색에서는 그냥 form 안에 넣고 submit 해서 검색을 만드는편인데

두테이블을 join 하고있는 상황에서

다른테이블까지 검색을 해야하는 경우가 생겼다

참... 귀찮

아예 세 테이블을 join 해버릴까하다가 db에 칼럼이 얼추 겹치게 만들어놔서

그냥 따로 추가하기로햇다 귀찬키도하고

일반적인 경우 form 안에 넣어버리면 따로 주소를 건드리거나 그럴필요는 크게없는데

이번경우에는 복수검색이 있고 배열로 넘기는 상황이라

$_SERVER['REQUEST_URI'] 을 사용하게되었다

$_SERVER['REQUEST_URI'] 은 현재 내 주소창을 그대로 가져오는데

여기서 만약 내가 검색할 input name이 ss_url 이라면

$ss_url = $_SERVER['REQUEST_URI'];
$ss_url = explode('&s_sc_id',$ss_url);
$result_url = $ss_url[0];

이런식으로 주소를가져왔다

검색값을 제외시킨이유는

리셋을 시키지않으면 계속 누적해서 주소창에 붙길래 할때마다 뜯고 새로붙이는식으로했다

얼추 잘돌아간다 일단은

다음난관이 기다리긴하지만;

728x90
반응형
반응형

일반적인 리스트 , 뷰  페이지를 작업하게됬다

학교관련 페이지여서 지역과 계열등등의 검색옵션이 필요했다

하나씩하나씩 검색했으면 참 좋았겠지만 역시나 추가요청이 나왔다

여러지역을 눌러서 검색하고싶다고한다

어찌보면 당연한 기능이기도한데 훔

어쨋든 전에는 쿼리문에서 in array 같은 내용으로 작업을했던것 같은데

속도문제도있고 등등 패스하고 

find_in_set 을 써보기로했다

일단 find_in_set 은 특정칼럼에서 내가 원하는 값이 있는지 체크하는? 그정도로 이해했다

근데 이게 검색하는값이 배열이여버렸다 

그래서 다른방법을 찾을까하다가

find_in_set 자체가 쿼리문이 크게 무겁지않다는 내용이 있어서

그냥 배열수로 for문 돌려서 쿼리를 날려버렸다

일단 쿼리문은 

if($_GET['wr_1'])
{
    $wr_1_cnt = count($_GET['wr_1']);
    
    $sql_search.= " and ( ";
    
    for($t=0; $t<$wr_1_cnt; $t++)
    {
        if($t == 0)
        {
            $or = '';    
        }
        else
        {
            $or = 'or';
        }
        
        $sql_search.= " {$or} find_in_set('{$_GET['wr_1'][$t]}', local) ";
    }
    
    $sql_search.= " ) ";
}

 

이런식으로 local 칼럼에 wr_1값이 있으면~~~ 식으로 작성했다

왠만큼 잘나오니 일단 만족~!

728x90
반응형

+ Recent posts