IT 200

[PHP] php spreadsheet + mysql db 연동 #composer #컴포저 #phpspreadsheet엑셀다운 #php엑셀파일다운

기존에 자주 사용하였던 php excel 다운로드는 header 에만 엑셀 껍데기를 뒤집어 씌우는 방식이었는데 이 방법에는 사소한(?) 문제가 있다 아래와 같은 """ xls 의 파일 형식 및 확장명이 일치하지 않습니다. 파일이 손상되었거나 안전하지 않을 수 있습니다. 데이터 원본을 신뢰하지 않는다면 파일을 열지 마세요. 그래도 파일을 여시겠습니까? """ 라는 경고창이 뜬다는것, 물론 (예) 를 누르면 열리긴한다 그리고 실제 엑셀파일이 아니므로 모바일에서도 열리지 않는다 이걸 해결해준 방법이 바로 PHP Spreadsheet 였는데 우선 spreadsheet 를 사용하려면 php composer 가 필요한데 node 의 npm 과 같은 존재라고 보면된다 쉽게말하면 그냥 필요한 라이브러리들 가져와다 쓸수..

IT/PHP 2020.06.24

[Composer] composer 설치시 오류 Your requirements could not be resolved to an installable set of packages.

composer 를 이용한 phpspreadsheet 를 설치하려고하는데 계속 아래와 같은 오류가 떴습니다. 하지만 친절하게도 Problem 1 이라고 하면서 어떤 내역이 문제인지 명시를 해주어서 오류해결에 아주 많은 도움이 되었습니다. Problem 1 - Installation request for phpoffice/phpspreadsheet ^1.13 -> satisfiable by phpoffice/phpspreadsheet[1.13.0]. - phpoffice/phpspreadsheet 1.13.0 requires ext-zip * -> the requested PHP extension zip is missing from your system. 첫줄 에러보다는 두번째줄 에러가 뭔가 더 심플해보여..

IT/PHP 2020.06.24

[Mysql] SHA512 암호화, 복호화

SHA512 방식을 사용해보겠습니다 우선 간단한 테이블을 만들어봅시다 CREATE TABLE `test` ( `name` VARCHAR(21) NULL DEFAULT NULL COLLATE 'utf8_general_ci', `passwd` BLOB NULL DEFAULT NULL ) COLLATE='utf8_general_ci' ; ​ 암호화해서 insert 도 해주고요 해당 'key' 부분은 해당 홈페이지에 맞게 본인이 원하는대로 아무거나 넣으셔도 됩니다만 , 복호화할때 그 값이 필요하니 꼭 기억은 해둬야합니다 저는 그냥 key 로 할게요 insert into test values( '이태웅', AES_ENCRYPT('4129',SHA2('key',512)) ); 아래처럼 데이터가 들어갔을건데 이걸 복..

IT/SQL 2020.06.23

[Linux] My-sql Incorrect string value 한글 깨짐 문제 해결방법

테이블 옵션을 utf8 한글입력을 하려고할때마다 InclIncorrect string value 어쩌고 저쩌고가 나오는데 찾아보니 mysql 설치를 하고난뒤에 my.cnf 에서 utf8 로 설정을 추가해줘야 된다고 합니다 리눅스 my.cnf 에서 utf8 설정이 되어있다면 그냥 아래 쿼리문 실행시켜주면 해결이 될텐데 ALTER TABLE [테이블] convert to charset utf8; my.cnf 파일 설정이 안되어잇다면 아래와 같이 수정을 해줘야합니다 리눅스 /etc 폴더 안에 my.cnf 파일 수정 [client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] collation-server = utf8_unicod..

IT/잡다구리 2020.06.23

Linux Mysql(HeidiSQL) IP 접근 권한 설정

하이디 sql 에서 mysql 로 리눅스 서버에 접속하려하면 가끔 니 아이피에는 권한이 없다 어쩌고 저쩌고 나올때가 있는데 그럴땐 푸티로 접속해서 use mysql; //권한 부여할 계정 확인 select host, user, password from user; //권한 부여 grant all privileges on *.* to '접근 허용할 계정ID'@'접근 허용할 IP' identified by '계정 비밀번호'; 이러면 잘 들어와진다 ~ 근데 이렇게 해버리면 모든 테이블을 다 노출시켜버리기 때문에 사실상 root 권한으로 들어오는거랑 별 다를바가 없어서 계정별로 데이터베이스 액세스 권한을 다르게 주는게 맞다 //계정 생성 create user '접근 허용할 계정ID'@localhost identi..

IT/잡다구리 2020.06.22

<?php ?> 에서 php 없이 쓰기 short open tag

php.ini 파일에서 short open tag 를 On 으로 조정해주면된다 putty 로 해당 PHP 의 리눅스 서버에 접속해서 php.ini 를 열어서 수정하면되는데 보통 etc 폴더 안에 있으니 vi /etc/php.ini 눌러서 아래 부분을 찾고 On 으로 조정해주면 되겠다 참고로 입력모드는 "i" 를 누르고 조정한 후에는 ESC 누르고 :wq 입력해서 저장해주기 잊지말자 이렇게 하고나서 처음에는 하도 오래되갖고 서버 재시작만 해주면 되는줄알고 systemctl restart httpd.service 위 구문만 열심히 쳐댔는데 아무리 해도 만을 인식 못한다 참고로 인식 하는지 안하는지 여부는 요렇게 파일 작성 하나 해놓고 웹에서 접속했을때 아래와 같은 화면이 나오면 된다 하도 안되서 혹시나 싶어..

IT/PHP 2020.06.22

[LINUX] Centos8 MariaDB 설치 (The log file /var/log/mariadb/mariadb.log cannot be written 에러)

Centos8 미니멀 설치 이후에 .. 이것저것 다 설정하고 이제 MariaDB 를 설치해야하는데 열심히 찾아서 설치를 해줬건만 .. 이유모를 에러가 자꾸 발생한다 May 22 09:44:48 localhost.localdomain mysql-prepare-db-dir[4165]: The log file /var/log/mariadb/mariadb.log cannot be written, please, fix its permissions. May 22 09:44:48 localhost.localdomain mysql-prepare-db-dir[4165]: The daemon will be run under mysql:mysql May 22 09:44:48 localhost.localdomain syste..

IT/잡다구리 2020.05.22

열뻗치는 PHP mail() 이용해서 메일보내기 mail header 부분

PHP 에서 메일보내주는 mail 함수는 다들 아실텐데.. 난 이놈 때문에 오늘 하루 다날렸다 Naver, Nate, Gmail , 사내메일까지 다 포함 싸그리 잘만 들어가는데 유독 Daum (Hanmail) 에만 메일이 안들어가기도했고, 스팸으로 무조건 빠지는 문제도 있었다 Linux 푸티로 접속하여 아래 명령어로 로그 확인을 해보자 cat /var/log/maillog 아래 처럼 나온다 자세한건 모르겠는데 여튼 아래와 비스무리하게 나와야 정상적으로 메일이 발송되는거고 stat=Sent (04E7oJCu024020 Message accepted for delivery) 아래 처럼 나오면 발송실패한거다 stat=Service unavailable 구글링 암만해봐도 나한테 도움된건 없었다.. 여튼 한메일만..

IT/PHP 2020.05.14

Linux 에 Vue.js 설치

Linux Centos6.1 에 Vue.js 를 설치하려고 한다 우선 Vue.js 를 설치하려면 그전에 노드를 먼저 깔아야한다 https://bug41.tistory.com/8 Linux Node.js 설치 Linux 에서 node 설치 yum install nodejs //노드 버전 확인 node --version //npm 버전 확인 (노드 설치시 딸려옴) npm --version bug41.tistory.com 여튼 노드 설치를 마치고 vue 설치를 하려고하는데 npm install -g @vue/cli 아래와 같은 에러가 계속 뜬다 찾아보니 ssl 관련 문제인거같은데 .. 정확히 무슨 문제인지 까지는 파악을 못햇다 여튼 아래 명령을 써서 ssl 를 무시하고 설치하면 된다고해서 해봤는데 npm co..

IT/Vue.js 2020.05.11
300x250