반응형

Programming 153

[Javascript] input & textarea 커서 위치에 텍스트 입력하기

function objobjInnerText(objId, addText){ var insertObj = document.getElementById(objId); var textVal = insertObj.value; var setPosition = insertObj.selectionStart; var beforeTxt = textVal.substring(0, setPosition); var afterTxt = textVal.substring(insertObj.selectionEnd, textVal.length); insertObj.value = beforeTxt + addText + afterTxt; setPosition = setPosition + addText.length; insertObj.sele..

유튜브(YouTube) 변하지 않는 주소로 라이브 스트림(Live Stream) 사용하기

유튜브 영상이나 라이브스트림을 자신의 홈페이지에 넣고자 할 때 유뷰트에서 제공하는 IFRAME 형태의 공유 소스를 이용한다. 이때 라이브스트림의 경우 계속해서 주소(URL)이 바뀌는 불편함이 있다 주소가 변하지 않는 라이브스트림을 넣으려면 어떻게 해야할까 방법은 간단하다 채널에 제공되는 라이브스트림 주소를 이용하면 변하는 주소에 대응이 가능하다. 일반적인 라이브 스트림의 공유 소스 채널에 제공되는 라이브스트림 공유 소스 https://www.youtube.com/embed/live_stream?channel= 이라는 기본 주소에 자신의 채널 아이디값을 추가하면 간단히 해결된다. 다만 주의할 점이 있다. 라이브스트림 주소의 경우 비공개, 일부공개에서는 동작하지 않는다. 반드시 공개형 라이브스트림만이 이용이..

Programming/API 2023.01.27

[Javascript] split 함수를 이용한 문자열 배열로 자르기

자바스크립트에서 문자열을 특정 구분자를 이용하여 배열을 만들 수 있다. string으로 지정한 문자열을 split을 이용해 콤마(,)의 구분자로 구분하여 array 배열로 반환해보다 const string = 'Javascript,Script,Java'; const array = string.split(','); console.log(array); # 결과 // ['Javascript', 'Script', 'Java'] 위 결과와 같이 array 배열로 문자열을 반환한다 split은 지정 시 두번째 인자에 최대 배열 크기를 지정할 수 있다. const string = 'Javascript,Script,Java'; const array = string.split(',', 2); console.log(arr..

[Javascript] var, let, const 차이점

Javascript 에서 변수를 선언할때 무엇으로 선언해야할까? 변수 선언을 위한 var, let, const 의 차이점을 알아보자 var var 을 이용하여 변수를 선언하는 경우 변수 재선언 및 재할당이 가능하다. var name = 'script'; console.log(name); // script var name = 'javascript'; console.log(name); // javascript name = 'jQuery'; console.log(name); // jQuery 이렇게 같은 변수를 재선언, 재할당이 가능하다. 이는 코딩량이 많아지면 같은 변수를 중복하여 사용할 수 있는 문제가 발생되며, 계산값과 같은 변화가 있는 값을 선언하는데에는 문제가 없으나, 변하지 말아야 할 변수 값에는 ..

[Javascript] 두 배열 비교하기

단순 배열 비교 배열 데이터를 다루다보면 두 배열의 값이 같은지 다른지 비교가 필요할때가 있다 아래와 같이 JSON.stringify 를 통해 간단히 비교가 가능하다 // 배열 선언 const array1 = ['a','b','c','d','e']; const array2 = ['a','b','c']; // 배열 비교 if(JSON.stringify(array1) === JSON.stringify(array2)){ document.write('같다'); } else { document.write('다르다'); } # 출력 다르다 교집합 (Intersection) 두 배열에서 서로 같은 값을 얻고자 할때 사용한다 // 배열 선언 const array1 = ['a','b','c','d','e']; const..

[PHP] CURL을 이용한 API 데이터 전송

대부분 API 데이터 전송이라 함은 API Key 를 이용한 1:1 데이터 전송을 말한다 Api Key 는 누출이 되면 안되는 중요한 값으로 유출에 위험성이 있는 POST 및 GET으로는 전송하지 않는다. CURL의 Header 값을 통해 POST 및 GET 보다는 좀더 안전한 방법으로 Api key 를 체크하여 통신을 진행해보자. https://www.aaa.com 이라는 사이트에서 https://www.bbb.com 이라는 사이트의 데이터를 받아온다고 가정하자 이하 설명을 위해 도메인은 생략 aaa. bbb로 얘기하겠다. aaa 사이트의 result.php 페이지에서 curl 통신을 통해 bbb 사이트에서 미리 발급 받은 api key를 header 로 담아 전송을 시도한다. # 데이터를 받아올 페이..

Programming/PHP 2022.11.25

[Javascript] 하이브리드앱과 브라우저 구분하기

요즘 모바일 페이지를 보면 어플을 통해 접속할것인지 접속한 웹페이지를 통해 계속해서 이용을 할것인지 물어보는 팝업들을 확인해볼 수 있다. 요즘 많은 사람들이 이용하는 쿠팡 모바일 사이트에도 구현되어 있다 이런 안내 팝업은 어떻게 앱이 아닌지 구분을 할 수 있을까? 자바스크립트를 통해 해당 기능을 구현할 수 있다. var ua = navigator.userAgent.toLowerCase(); if(ua.indexOf("app scheme") > -1) { // 코드 } 위와 같이 소스를 작성 후 개발된 앱의 user agent 내의 scheme 값을 확인하여 app scheme 에 값을 대체해 넣으면 해당 앱으로 접속이 되었는지 확인이 가능하다 scheme 값은 앱개발 담당자에게 확인해보시길^^

[PHP] PHP Framework

PHP 프레임워크의 종류를 알아보자 Laravel 라라벨(Laravel)은 자유, 오픈 소스 PHP 웹 프레임워크의 하나로, 테일러 오트웰이 개발하였으며 모델-뷰-컨트롤러(MVC) 아키텍처 패턴을 따라 웹 애플리케이션을 개발하기 위해 고안되었다. 라라벨의 기능들 중 일부는 모듈 방식의 패키징 시스템이며, 전용 의존성 관리자, 관계형 데이터베이스에 접근하는 각기 다른 방법, 소프트웨어 전개와 유지보수의 도움을 주는 유틸리티, 신택틱 슈거 지향이 포함된다. 2015년 3월 기준으로, 라라벨은 심포니, 젠드 프레임워크, 코드이그나이터, Yii2 등과 함께 가장 대중적인 PHP 프레임워크 가운데 하나로 간주된다. 라라벨의 소스 코드는 깃허브에 호스팅되어 있으며 MIT 허가서의 조항에 의거하여 허가된다. 출처 :..

Programming/PHP 2022.11.18

[Bitnami] MariaDB 루트(root) 비밀번호 재설정

MariaDB의 루트(root) 비밀번호를 잊었다면? 당황하지 말고 재설정 해보자! 1. Bitnami 관리자 프로그램을 실행 후 Manage Server 탭으로 이동한 후 MariaDB Database 항목을 선택 후 Stop 으로 서버를 중지 시킨다. 2. 윈도우의 파일탐색기를 이용해 Bitnami 가 설치된 폴더내의 MariaDB 폴더의 bin 폴더로 이동한다 (예: C:\Bitnami\wampstack-8.1.1-0\mariadb\bin) 3. 이동 후 경로 표시줄에 cmd 를 입력한 후 윈도우의 명령 프롬프트를 실행한다. 4. 인증없이 MySQL을 실행할 수 있도록 명령 프롬프트에 mysqld --skip-grant 를 입력한다. 5. 3번과 같이 cmd 입력 후 명령 프롬프트를 하나 더 실행하..

반응형