| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- 페이지전환효과
- 글자 수 제한
- virsualhost
- 비동기호출
- 날짜변환
- Ajax
- 301 리다이렉트
- iframe
- 자바스크립트
- SSL
- 우분투
- JavaScript
- php
- Vanilla JS
- .htaccess
- 애니메이트
- post_type
- 정규식
- 리사이즈
- selinux
- 글자수제한
- JS
- 날짜비교
- nginx
- 배열
- 보안인증서
- MariaDB
- 우분투 npm 설치
- MySQL
- 보안헤더
- Today
- Total
목록전체 글 (264)
더 나은 프로그래머가 되자
출처 : https://velog.io/@ejayjeon/MYSQL-1.-%EA%B3%84%EC%A0%95-%EC%83%9D%EC%84%B1-%EA%B6%8C%ED%95%9C-%EB%B6%80%EC%97%AC
2022년 5월 31일부로 gmail의 보안 수준이 낮은 앱의 액세스 활성화 기능이 종료되었다. 해당 서비스가 종료되면서 phpmailer 5.2 버전으로 gmail smtp로 이메일을 발송하는 기능들이 다 막혀버렸다. 구글의 보안 정책에 따라 gmail api를 통해서 메일을 발송하려면 OAuth 2.0을 통해서 토큰을 부여받고 XOAUTH2 인증으로 메일을 발송해야한다. XOAUTH2인증은 phpmailer 5.2에서 지원하지 않으므로 phpmailer 6.6을 설치해서 진행했다. 컴포저를 사용해 phpmailer 패키지 최신버전 설치 composer require phpmailer/phpmailer google OAuth2.0을 사용하기 위해서.league/oauth2-google 패키지도 설치한다..
출처 : https://gurtn.tistory.com/86 [JS] 전화번호 자동 하이픈(-) 정규식 첫번째 코드 // ^(\d{2,3})(\d{3,4})(\d{4})$ String.replace(/^(\d{2,3})(\d{3,4})(\d{4})$/, `$1-$2-$3`); 00-000-0000 또는 000-0000-0000 같은 상황에서 (2, 3) - (3, 4) - (4) 자리에 숫자를 그룹 지어 묶습.. gurtn.tistory.com
숫자자 이외의 텍스트는 정규식으로 치환처리
//암호화 INSERT INTO gh_main_table (title) VALUES (HEX(AES_ENCRYPT('문자열', 'key_name'))); INSERT INTO gh_main_table (title) VALUES (HEX(AES_ENCRYPT('문자열123', 'key_name'))); //복호화 SELECT AES_DECRYPT(UNHEX(title), 'key_name') FROM gh_main_table; //한글이 제대로 안나올경우 SELECT CONVERT(AES_DECRYPT(UNHEX(title), 'key_name') USING UTF8) FROM gh_main_table; 결과('key_name' key로 암호화한 모든 데이터가 선택됨) 문자열 문자열123 https://w..
Mac OS의 경우 한글파일명 처리를 NFD 방식으로 처리하기 때문에 해당 파일명을 윈도우나 리눅스 OS에서 보게되면 ㅎㅏㄴㄱㅡㄹ.jpg 와 같이 자음모음이 분리되는 현상을 보게된다. fopen으로 다운로드 처리시 다운로드가 되지 않거나 파일명이 깨지는 상황이 생기게된다. 이를 해결하기 위해서 php 내장클래스인 Normalizer 클래스를 사용해서 NFD 방식을 윈도우 리눅스 방식으로 정규화하는 작업이 필요하다. //Mac NFD 방식-> 윈도우,리눅스 방식으로 정규화 $fileName = '한글파일명.jpg'; if(class_exists('Normalizer')){ if(Normalizer::isNormalized($fileName, Normalizer::FORM_D)){ $fileName = No..
외부 페이지를 불러오기 위해서 ajax를 이용한 비동기 호출을 많이 썼었는데 간단한 페이지 불러오기에는 번거로움이 있어서 .load() 메서드를 사용해서 간단하게 외부 페이지를 호출하게되었다. 기본형태는 .load( url [, data ] [, complete ] ) 로 되어있다. 자세한건 https://api.jquery.com/load/#load-url-data-complete 여기에서 확인 할 수 있다. $("#objectID").load('/url.php',{'paramName' : paramValue}); 간단하게 위 코드처럼 사용해서 페이지를 호출 할 수 있다 보낼 파라미터값이 없으면 url만 입력해도 된다.
https://imyeonn.github.io/blog/%EA%B8%B0%ED%9A%8D/193/ 그동안 IA를 그리는 게 어려웠던 이유 모바일앱 IA를 그리는 게 어려웠던 이유 imyeonn.github.io
ajax 호출이 끝나고 선택된 객체의 데이터를 사용하고싶은데 ajax 안에서 기본적으로 this를 쓰면 response 데이터가 들어간다 ajax 호출전에 발생했던 이벤트의 this 객체를 사용하기 위해서는 context : this를 추가해야한다. $.ajax({ type : "POST" , async : true //true, false , url : "" //Request URL , dataType : "" , timeout : 3000 , cache : false , data : ,context : this //이걸 추가해야한다 , contentType: "application/x-www-form-urlencoded; charset=UTF-8" , error : function(request, s..
공개 비공개 $(document).on('click','input[type="radio"]',function(){ thisRadio = $(this); if(thisRadio.hasClass("checked")){ thisRadio.removeClass("checked"); thisRadio.prop('checked', false); }else{ thisRadio.prop('checked', true); thisRadio.addClass("checked"); }; }); 라디오 버튼은 한번 클릭하면 해제가 되지 않는데 체크된 상태로 클릭시 체크가 해제되어야하는 상황이 생겨서 위와 같은 코드로 해결