PHP와 함께 해온지 벌써 10년이 다되가는것같다. 내가 처음 사용한 버전은 PHP5 버전대였는데 영원할것같던 5도 이제 역사속으로 사라지고 PHP7로 갈아탄지가 엊그제 같은데 부지런하고 똑똑한 PHP 연구원들덕에 빠르게 사라질 듯 싶다. 솔직히 PHP8은 작년에 개발서버에 설치만 해놓고 언젠간 해야지라는 믿을 수 없는 결심만 하고 지금껏 모른척 했지만 회···
컨텐츠형 페이지를 만들다보면 특정 구간에 불필요한 내용이 길어져 일부 내용을 자르고 더보기 기능을 만들어야할 때가 있다. 더보기 기능은 간단할것 같으면서도 막상 만들려면 귀찮을때가 많이 있다. 특히나 반응형 작업 시에는 고정 크기 화면의 PC화면과는 다르게 크기별로 높이가 달라져 조건처리가 필요할 수도 있다. 이번편에 소개할 더보기 기능은 아래와 같이 두가···
주로 컨텐츠 관련된 작업을 하다보면 글이 길경우 잘라야 하는 경우가 있다. 보통 문장의 뒷부분을 자르고 접두사(...)를 붙이는 경우가 많다. 다만 요즘은 반응형으로 사이트를 많이 제작하다보니 PC기준으로 최대한 글자수를 자르고 CSS로 말줄임 처리를 하는 경우가 많다. 이번편에서는 간단하게나마 PHP를 이용하여 문장의 뒷부분 또는 앞부분 자르는 함수에 대···
QR코드란 문자열로 된 정보가 저장된 코드인데 보통 2차원 데이터 코드라고 한다. 이건 수학에 좀더 관심있는 사람이라면 쉽게 이해할 수 있겠지만 그런걸 깊게 파고 싶다면 역사부터 시작해야하니 본 포스팅에서는 넘어가고 QR코드는 정사각형으로된 정보코드로 이해하고 넘어가자. (솔직히 나도 설명하기 힘듬) QR코드는를 보기전에 이와 비슷한 바코드가 있는데 바코드···
카카오에서 제공하는 Karlo (인공지능 이미지 생성 기능)가 v2 버전으로 상향 되었다. 물론 v1도 아직까지는 사용가능하지만 기능이 한층 더 상향된 v2를 권장하기에 이번에 변경된 API 기능에 대해 소개하려고한다. 카카오 Karlo v2 업그레이드 안내문 본 포스팅은 앞서 작성한 포스팅 v1 포스팅을 이용하여 진행하였으며 v2에서
이번편은 제목 그대로 페이스북 로그인 API를 연동하여 공개 서비스를 생각하고 있다면 꼭 알고 진행해야할 사항에 대해 간단하게나마 알려주려고한다. 페이스북 로그인 API는 오래전부터 카카오, 네이버, 페이스북 3대 SNS 로그인 서비스중 하나로 불릴만큼 많이 사용되었는데 점점 시간이 지날수록 개발자에게는 폐쇄적인 API로 변하면서 점점 인기가 떨어지고 있는···
지금까지 개발하면서 mb_strlen 과 Javascript의 길이가 다를 수 있다는걸 인지하지 못하였다. 아무래도 서버단에서만 체크하다보니 디테일한 부분은 인지를 못했던것같다. 보통 우리가 javascript로 글자수를 판별할 시에는 아래와 같이 `변수.length`와 같이 판별을 할것이다. var a = "한글 입니다."; a···
PHP에서 exec 함수의 경우 쉘 명령어(shell)를 수행할 수 있도록 도와주는 함수이며 그만큼 사용시에 보안에 신경 써야한다. 대부분 가공된 데이터를 기준 한정된 코드로 가공하여 많이 사용하게 되는데 특정 명령어를 사용할때 출력되는 내용이 전체가 아닌 마지막 부분만 노출되는 경우가 있다. 분명 쉘(shell)에서 입력할때는 정상 출력 되지만 PHP e···
치환이란 어떠한 것을 다른 무언가로 교체하는 것을 의미한다. 언뜻 보면 바꾸는 것과 비슷해 보이나 치환은 바꾼다는 뜻보단 대체로서의 의미가 맞는 말이다. 웹 프로그래밍의 경우 HTML 소스와 함께 병행하여 쓰다보니 소스가 상당히 보기 불편해 지는 경우가 많다. 이럴때 사용할 수 있는게 치환자인데 이는 비공개 소스에 대한 유저용 치환자를 제공해 주는 템플릿 ···
사이트 운영시 필요한 부가 서비스는 크게보면 3가지로 웹 호스팅, 도메인, 보안서버(SSL) 정도로 볼 수 있다. 이 3가지 서비스는 운영하는 목적에 따라 다를 수 도 있으나 일반 사이트 운영시에는 반드시 필요한 서비스이기때문에 사이트를 관리하는 입장에서는 알고 있어야 할 중요 정보들이다. 오늘은 이러한 서비스에 대해 간단한 개념정도에 대해 알아 보도록 하···
캡챠는 사용자 입력 검증 관련된 개발하다보면 한번쯤 사용했거나 들어본적이 있을 것이다. 쉽게 설명하면 입력후 제줄된 문서를 진짜 타이핑해서 쓴건지 아니면 별도 프로그램으로 이용하여 제줄한건지 사전에 체크할 수 있는 시스템이다. 이러한 캡챠는 지속적으로 기술이 발전되고 있지만 자동입력 프로그램 또한 지속 발전하여 보안코드 마저 인식 후 뚫어버리는 경우가 있다···
PHP에서 예외처리를 할 수 있는 try ~ catch 라는 제어문은 try 블록 내에 소스코드 내에 작성하고 예외처리가 있을 경우 catch 블록으로 보내서 처리를 할 수 있게 만들어 준다. finally는 가장 마지막에 실행되는 처리문으로 보면되고 실제 복잡하게 사용한다면 내용만 길어지고 어려울 수 있으니 이번편에서는 예외 프로그램 처리 시 간단한 활용···
카카오톡 메시지 API는 실제 카카오톡으로 메시지를 보낼 수 있는 API이며 나에게 메시지 보내기와 등록된 친구에게 최대(5명)까지 메시지를 보낼 수 있다. 이번편에서는 간단하게나마 PHP에서 REST API 를 이용한 나에게 메시지 보내기에 대해 알아보도록 하자. 우선 이번 예제에서 사용된 샘플 파일은 아래와 같이 총 5개의 파일로 구성되어 있다. con···
jQuery 에서 사용되는 on 이벤트는 연결 이벤트중 하나로 click, mousedown,keydown 등의 여러 동작 이벤트를 연결하여 처리가 가능하다. 참고로 같은 용도로 사용되는 연결이벤트 bind, delegate, live 등이 있지만 jQuery API 문서내 권고 사항으로 본다면 on 이벤트로 대체해야 추후 높은 버전을 사용하더라도 변경없이···
싸이트를 운영하다보면 멋진 슬라이드 기능을 구현하고 싶을때가 있다. 무작정 JAVASCRIPT 를 이용하여 만들기엔 너무 어렵기 때문에 시중에 오픈된 라이브러리를 이용하게 되는데 그중 모바일에 가장 친화적인 Swiper API가 있다. Swiper API는 업데이트도 꾸준히 되고 있으며 초기에 발생되었던 많은 버그들이 지속적으로 업데이트되어 현재는 거의 완···
특정 레이아웃 안에서 스크롤이 생길 시 마우스 스크롤을 일일이 클릭 후 이동하여 화면을 봐야하는 불편함이 있는데 마우스 이벤트를 이용하여 클릭 후 스크롤을 자동으로 이동 시킬 수 있는 방법이 있다. 검색을 해보면 마우스 스크롤 이벤트는 상당히 많이 존재하는데 이를 이용하여 직접 만들 수 도 있지만 우리는 항상 시간이 부족하기때문에 시간이 조금 난김에 아래와···
이미지 확대/축소를 할 수 있는 라이브러리는 여러가지가 있다. 다만 보통 찾기가 어려운게 이미지 확대/축소 검색을 단순한 컨트롤을 이용한 확대 축소 라이브러리만 있기때문에 막상 찾기가 어려울때가 있다. 이번에 찾은 라이브러리는 JQUERY 라이브러리 중 하나인 Zoomer 라이브러리로 컨트롤도(+,-) 지원하고 모바일에서는 터치를 통해 확대하고 이동까지 가···
사이트맵은 검색 엔진은 꼭 필요한 사항은 아니지만 그래도 대부분의 검색 엔진 로봇들이 사이트에 담긴 페이지 링크 구조 파악을 위해 사이트맵을 참고하기 때문에 만들어서 넣어두는게 좋다. 사이트맵은 간단하게 보면 사이트에 포함된 링크 연결 관계도를 작성하는건데 유형에 따라 조금 더 복잡할 수 있다. 이번에 소개하는 사이트맵은 기본적인 블로그에서 사용되는 형태이···