CI 묻고 답하기

제목 QR코드 PHP 소스 사용하기
글쓴이 보아스 작성시각 2012/10/09 22:36:21
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 30513   RSS
서브 도메인 하루종일 고민 하다가 게시판에 올려 놓고 쉽게 해답을 얻었네요
나이든 개발자라 개념을 철저히 이해하기 보다는 일단 만들면서 알아보는 나쁜 습성 때문에 그런거 같습니다.

이제 서브 도메인  star.test.com/1234 하면 되는 거 같습니다.

다음문제는 위에 것을 QR 코드로 만들어야 하는데

http://sourceforge.net/projects/phpqrcode/files/  에서 PHP용 다운 받았습니다.

<?

include "./phpqrcode.php";

QRcode::png("http://blog.naver.com/pareko",$_SERVER['DOCUMENT_ROOT']."/result/result.png",0,3,2);

?>

 

첫번째 인자 : QR코드로 생성할 문자열

두번째 인자 : 결과가 저장될 파일명

세번째 인자 : 레벨 (오류율을 지정합니다 7% ~ 30%)

네번째 인자 : 셀하나당 몇픽셀 (숫자를 크게하면 이미지가 커집니다. : 결과를 복잡하게 하는 버전과는 다르고 단순히 이미지 크기만 커짐)

다섯번째 인자 : QR코드 이미지 바깥 테두리
--------------------------------------------------------------------

이런식으로 사용 하는 거 같습니다.
CI 에서 위에 include "./phpqrcode.php"; 이용해서 특정 디렉토리에 QR 그림 파일 만드는 방법은 어떻게 되나요

helper를  이용하나는 건가요 ?
아마 이 문제도 기본적인 개념 문제 일 거 같습니다.
다시 한번 죄송하다는 말씁 드립니다.

 다음글 CI cache 사용중 특정 부분만 제외 시킬수는 없나... (2)
 이전글 서브도메인에 대한 질문 (5)

댓글

변종원(웅파) / 2012/10/09 23:32:10 / 추천 0
phpqrcode.php가 클래스이면 라이브러리로... 함수면 헬퍼로 선언하여 사용하시면 됩니다.
클래스인거 같네요.
한대승(불의회상) / 2012/10/10 09:18:17 / 추천 0
좋은 정보 감사 합니다.

그냥 include 하시고 위에 예시한 대로 사용 하셔도 됩니다. ^^


헛발이 / 2012/10/10 10:05:09 / 추천 0
QR코드를 서버에 저장하는것이 아니고 단순히 화면에 보여주는것이라면 복잡하게 클래스를 가져다가 사용안하셔도 되고요.. 구글을 이용해서 QR코드를 만들어 낼수도 있습니다.
저는 현재 이렇게 하고 있습니다...

라이브러리에 이렇게 해 둡니다...
function qrcode($url=null)
{
    if (is_null($url)) return null;
    $url = rawurlencode($url);
    $datas = array(
        "cht" => "qr",
        "chs" => "100x100",
        "choe" => "Shift_JIS",
        "chl" => $url
    );
    $qrcode = $this->createUri($datas);
    return $qrcode;
}

function createUri($datas)
{
    $uri = 'http://chart.apis.google.com/chart?';
    $query = "";
    foreach($datas as $key => $val){
        if( strcmp($query, "") != 0 ){
            $query .= "&";
        }
        $query .= "$key=$val";
    }
    $uri .= $query;
    return $uri;
}

그리고 뷰에서는 단순히 이렇게만 해서 QR코드를 만들어 내고 있습니다.
echo img($this->common_lib->qrcode('http://www.google.com'));

변수명은 제가 만든거여서 좀 창피하게 만들었지만.. ㅋㅋㅋ
변경해서 사용하시면 될듯... ㅋ