전체 글 54

.env 에 추가 DB설정을 만들땐 Database.php 에도 동일하게 만들어야합니다.

ci4 의 app/config/Database.php 파일에는 db설정이 들어있습니다. 개인적으로 DB암호등 설정이 여기저기 돌아다니는걸 좋아하지 않아 .env 파일에 다 몰아넣는 편입니다.그래서 처음엔 아래와 같이 만들었는데요. database.old.hostname = "localhost"database.old.database = "DB명"database.old.username = "아이디"database.old.password = "암호"database.old.DBDriver = "MySQLi" 문제는 이렇게 설정하고 DB불러오려고 해도 에러가 났어요. 그러니까 old라고 설정했음에도 그거 못찾겠다고 하는겁니다. 생각해보니 .env 파일에 설정하기 전엔 Database.php 파일에 설정해줬으니까...

PHP/CodeIgniter4 2024.08.09

PHP에서 PNG이미지 업로드시 메모리 초과 메시지가 나오는 경우

Fatal error: Allowed memory size of 134217728 bytes exhausted  위와 같은 메모리 초과 문구는 생각보다 자주 봤을겁니다. ( 134217728 bytes 는 128MB입니다.)간단하게   ini_set("memory_limit", "256M");  위와 같이 설정만 해줘도 큰 문제 없이 잘 작동합니다.그런데 제가 작업한건 위와 같은 좀 큰 PNG이미지인데, 용량자체는 5.9MB정도 밖에 안한다는 겁니다.여기에 무제한을 태운다고? 좀 그런데? 아니 많이 그런데...  아무래도 이상했습니다.예전 같으면 그냥 저 페이지만 제한 해제해주고 끝냈을텐데 말이죠.역시 잉여 같은 시간이 좀 남아야 생각을 잘 하나 봅니다. https://stackoverflow.com/q..

PHP 2024.05.21

Codeigniter4 에서 네이버 서버를 사용한 이메일 보내기

https://gaebalgaebal.tistory.com/33 위 내용이 안되어서 네이버에서 비밀번호를 만들고 뭐하고 하여간 복잡하였습니다. https://help.naver.com/service/5640/contents/8584?lang=ko 애플리케이션 비밀번호 사용 방법 (아웃룩 등 2단계 인증 미지원 환경에서 로그인) : 회원정보 고아웃룩, 휴대전화 기본 메일앱, 캘린더앱 등 일부 애플리케이션은 2단계 인증을 지원하지 않습니다.​미지원 환경에서는 먼저 비밀번호를 생성한 후 애플리케이션 화면에서 생성된 비밀번호를help.naver.com일단 네이버에서 위에 처럼 애플리케이션 비밀번호를 만듭니다.만들어야 아래와 같이 코드를 통해 메일을 보낼수 있습니다.  public function send(..

PHP/CodeIgniter4 2024.05.17

.env에 session을 database로 설정할 경우 이전 환경값 사용하지 마세요

ci4에선 환경설정을 .env파일에 몰아서 할 수 있습니다. 여기에는 세션관련값도 설정할수 있습니다. 4.2.x 버전정도까지는 아래처럼 .env에 설정해야 했습니다. #session app.sessionDriver = "CodeIgniter\Session\Handlers\DatabaseHandler" 그런데 4.4x 버전부터는 아래와 같이 변경되었습니다. #session sessionDriver = "CodeIgniter\Session\Handlers\DatabaseHandler" app.sessionDriver 이게 앞에 app. 이 없어지고 sessionDriver 로 변경이 된겁니다. 그래서 ci4로 오래 개발하신 경우 이전 환경값 가져와서 설정하실 경우 세션을 DB로 사용한다고 해놔도 파일로 세션..

PHP/CodeIgniter4 2024.02.29