[PHP] Laravel Database Seeding error


Laravel Framework 5.4.4

Database Seeding시에 다음과 같은 에러가 나면

 [InvalidArgumentException]
  Unable to locate factory with name [default] [App\xxxx].

ModelFactory.php 파일에 App\xxxx가 define 으로 설정돼 있는지 확인한다.

\database\factories\ModelFactory.php

Posted by incree

2017/01/27 22:42 2017/01/27 22:42
,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/376

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

구글 캘린더 목록 가져오기

Google APIs Client Library for PHP download

<?php
require_once 'Google/Client.php';
require_once 'Google/Service/Calendar.php';

$client = new Google_Client(); 
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setRedirectUri($redirect_uri);
$client->setAccessType('offline');
$client->setApprovalPrompt('force');
$client->setScopes(array('https://www.googleapis.com/auth/calendar.readonly', 'https://www.googleapis.com/auth/calendar'));

$cal = new Google_Service_Calendar($client);

$calList = $cal->calendarList->listCalendarList();
    $_SESSION['token'] = $client->getAccessToken();

    $items = $calList->getItems();
    $itemsLen = sizeof($items);

    for($i = 0; $i < $itemsLen; ++$i) {
        echo $items[$i]['id'], ' : ' . $items[$i]['summary'], '<br />';
    }
?>



$client_id = '<YOUR_CLIENT_ID>';
 $client_secret = '<YOUR_CLIENT_SECRET>';
 $redirect_uri = '<YOUR_REDIRECT_URI>';
/*
위 세 변수 값은 Google Developers Console에서 프로젝트 선택후
APIS & AUTH -> Credentials 에서 OAuth 의 Create New Client ID 클릭해서 생성하면 된다.
*/

사용자 삽입 이미지

Posted by incree

2014/07/07 15:02 2014/07/07 15:02
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/338

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

api 문서의 예제가 전부 옛날거라서

직접 라이브러리 분석해서 처리한 방법

정상적인 방법인지는 모르겠지만, 등록은 잘 된다.

구글 캘린더 일정 등록하기

Google APIs Client Library for PHP download

<?php
require_once 'Google/Client.php';
require_once 'Google/Service/Calendar.php';

$client = new Google_Client();
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setRedirectUri($redirect_uri);
$client->setAccessType('offline');
$client->setApprovalPrompt('force');
$client->setScopes(array('https://www.googleapis.com/auth/calendar.readonly', 'https://www.googleapis.com/auth/calendar'));

$cal = new Google_Service_Calendar($client);

$calendarId = ''; //
$targetDate = '2014-07-07';
$tDate = new Google_Service_Calendar_EventDateTime();
$tDate->setDate($targetDate);
   
$body = new Google_Service_Calendar_Event();
$body->setSummary($cTitle);  // 일정 제목
$body->setStart($tDate); // 일정 시작
$body->setEnd($tDate); // 일정 종료
   
$cal->events->insert($calendarId, $body);
?>







$client_id = '<YOUR_CLIENT_ID>';
 $client_secret = '<YOUR_CLIENT_SECRET>';
 $redirect_uri = '<YOUR_REDIRECT_URI>';
/*
위 세 변수 값은 Google Developers Console에서 프로젝트 선택후
APIS & AUTH -> Credentials 에서 OAuth 의 Create New Client ID 클릭해서 생성하면 된다.
*/

사용자 삽입 이미지

Posted by incree

2014/07/07 14:54 2014/07/07 14:54
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/337

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

구글 캘린더가 처음 나왔을때 몇년 사용하다 아이폰 사면서 기본으로 제공되는 캘린더 앱을 사용했었는데,

요즘 다시 구글 캘린더를 사용하게 됐다.

구글 캘린더의 가장 아쉬운 점이 음력 일정을 입력할 수 없다는 건데,

이 부분은 api를 이용해서 구현해 놓은 곳이 있다.

http://googlelunar.cpueblo.com/

하지만 일정의 반복 설정등을 할 수 없어서 여전히 불편하기는 하다.

이 부분은 구글에서 제공해 주지 않으면 처리하기가 힘들지 않을까 싶다.

개인적으로 그 다음 있었으면 하는 기능이 D-day 기능인데,

이건 찾아봐도 구글 캘린더 기본 기능에도 없는 것 같고, 구현해 놓은것도 못 찾았다.

해서 그냥 만들기로 했다.

캘린더 API(https://developers.google.com/google-apps/calendar/?hl=ko)에 있는 라이브러리와 예제 소스가 전부 예전 버젼이라

구현하는데 좀 애를 먹긴 했지만, 완성하고 나니 제법 쓸만하다.

물론 귀찮아서 아주 기본적으로 딱 필요한 것만 구현했다.

피드백이 있다면....시간내서 기능을 보강할 수도....


사용은 여기로~~
구글 캘린더 D-day 등록하기(http://www.incree.com/gCalendar/)

사용자 삽입 이미지
완전 허접한 화면 스샷

Posted by incree

2014/07/07 14:49 2014/07/07 14:49
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/336

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[PHP] source file encode, decode



Posted by incree

2014/05/07 06:44 2014/05/07 06:44
, , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/328

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[PHP] Apache mod_rewrite 사용하기

./configure --enable-rewrite

사용자 삽입 이미지


<Directory "/document_root">
        AllowOverride FileInfo   # or All
    </Directory>

RewriteEngine On
RewriteBase /
RewriteRule ^([a-zA-Z0-9])$ $1.php
# 희안하게 RewriteBase 를 설정안하면 작동을 안한다. 원래 그런가...


# 텍스트규브 .htaccess
#<IfModule mod_url.c>
#CheckURL Off
#</IfModule>
#SetEnv PRELOAD_CONFIG 1
RewriteEngine On
RewriteBase /tc/
RewriteRule ^(thumbnail)/([0-9]+/.+)$ cache/$1/$2 [L]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(cache)+/+(.+[^/]).(cache|xml|txt|log)$ - [NC,F,L]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+[^/])$ $1/ [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ rewrite.php [L,QSA]



Posted by incree

2013/10/30 15:34 2013/10/30 15:34
,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/290

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[PHP] Apache, MySQL, PHP install

1. mysql 설치
http://forums.mysql.com/read.php?11,153632,153632

yum install mysql mysql-server mysql-devel
chgrp -R mysql /var/lib/mysql
chmod -R 770 /var/lib/mysql

2. apache 설치
http://httpd.apache.org/download.cgi
http://apr.apache.org/download.cgi
http://package/forge.net/projects/pcre/files/pcre/
http://www.openssl.org/package/

cd /package/
tar -zxvf httpd-2.4.6.tar.gz
tar -zxvf apr-1.4.8.tar.gz
tar -zxvf apr-util-1.5.2.tar.gz
tar -zxvf pcre-8.33.tar.gz
tar -zxvf openssl-1.0.1e.tar.gz

cd /package/
mv apr-1.4.8 /package/httpd-2.4.6/srclib/apr
mv apr-util-1.5.2 /package/httpd-2.4.6/srclib/apr-util

cd /package/pcre-8.33
./configure
make
make install

cd /package/openssl-1.0.1e
./config
make
make install


cd /package/httpd-2.4.6
./configure --enable-module=all --enable-so --prefix=/usr/local/apache2 --enable-modules=ssl --enable-ssl --with-ssl=/usr/local/ssl   --enable-module=most
make
make install


3. php 설치
http://www.php.net/downloads.php
http://www.xmlsoft.org/downloads.html
http://sourceforge.net/projects/mcrypt/
http://code.google.com/p/quirkysoft/downloads/detail?name=jpegsrc.v6b.tar.gz&can=2&q=
http://curl.haxx.se/download.html

cd /package/
tar -zxvf php-5.5.5.tar.gz
tar -zxvf libmcrypt-2.5.8.tar.gz
tar -zxvf libxml2-2.9.1.tar.gz
tar -zxvf jpegsrc.v6b.tar.gz
tar -zxvf curl-7.33.0.tar.gz

cd /package/
yum install freetype-devel
yum install libjpeg-turbo-devel
yum install libpng-devel

cd /package/libmcrypt-2.5.8
./configure
make
make install

cd /package/libxml2-2.9.1
./configure
make
make install

cd /package/jpeg-6b
mkdir /usr/local/man/man1
./configure
make
make install

cd /package/curl-7.33.0
./configure
make
make install


cd /package/php-5.5.5
./configure --prefix=/usr/local/php5 --with-openssl --with-apxs2=/usr/local/apache2/bin/apxs --enable-ftp --disable-debug --with-zlib --with-jpeg-dir=/usr/local --with-gd --enable-mbstring --enable-sockets --with-mcrypt=/usr/local --with-curl --with-mysql --enable-pdo --with-pdo-mysql --enable-zip --enable-gd-native-ttf --with-freetype-dir=/usr/include/freetype2 --enable-exif
make
make install

4. apache conf
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so 주석제거
LoadModule ssl_module modules/mod_ssl.so 주석제거


5. start
service mysqld start
/usr/local/apache2/bin/apachectl start

Posted by incree

2013/10/26 15:19 2013/10/26 15:19
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/286

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

[PHP] 정규표현식

escape 해줘야 될 문자
\ ^ . $ | ( ) [ ] * + ? { } ,


Special Character Definitions
\ Quote the next metacharacter
^ Match the beginning of the line
. Match any character (except newline)
$ Match the end of the line (or before newline at the end)
| Alternation
() Grouping
[] Character class
* Match 0 or more times
+ Match 1 or more times
? Match 1 or 0 times
{n} Match exactly n times
{n,} Match at least n times
{n,m} Match at least n but not more than m times
More Special Character Stuff
\t tab (HT, TAB)
\n newline (LF, NL)
\r return (CR)
\f form feed (FF)
\a alarm (bell) (BEL)
\e escape (think troff) (ESC)
\033 octal char (think of a PDP-11)
\x1B hex char
\c[ control char
\l lowercase next char (think vi)
\u uppercase next char (think vi)
\L lowercase till \E (think vi)
\U uppercase till \E (think vi)
\E end case modification (think vi)
\Q quote (disable) pattern metacharacters till \E
Even More Special Characters
\w Match a "word" character (alphanumeric plus "_")
\W Match a non-word character
\s Match a whitespace character
\S Match a non-whitespace character
\d Match a digit character
\D Match a non-digit character
\b Match a word boundary
\B Match a non-(word boundary)
\A Match only at beginning of string
\Z Match only at end of string, or before newline at the end
\z Match only at end of string
\G Match only where previous m//g left off (works only with /g)

Posted by incree

2013/04/08 11:23 2013/04/08 11:23
,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/214

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다

아이폰에서 세로로 찍은 사진의 등록정보를 보면

가로와 세로가 바껴있다.

이 사진을 서버에 올리면 가로 이미지로 인식을 하게 되는데,

이건 사진 exif 들어있는 Orientation 정보를 확인해서 바로 잡아주면 된다.

Orientation은 1 ~ 8까지 총 8가지가 있고, 수정해 줘야 되는 경우는

3, 6, 8 세가지다
. 1 빼고는 모두 수정해 줘야 한다

http://www.impulseadventure.com/photo/exif-orientation.html  참조

php 예제
$exifData = exif_read_data($upfile);
        if($exifData['Orientation'] == 6) {
            // 시계방향으로 90도 돌려줘야 정상
            $degree = 90;
        }
        else if($exifData['Orientation'] == 8) {
            // 반시계방향으로 90도 돌려줘야 정상
            $degree = -90;
           
        }
        else if($exifData['Orientation'] == 3) {
            $degree = 180;
        }
       
        if($degree) {
            if($tmp_file[2] == 1) {
                $source = imagecreatefromgif($upfile);
                $source = imagerotate ($source , $degree, 0);
                imagegif($source, $originalPath . '/' . $upfile);
            }
            else if($tmp_file[2] == 2) {
                $source = imagecreatefromjpeg($upfile);
                $source = imagerotate ($source , $degree, 0);
                imagejpeg($source, $originalPath . '/' . $upfile);
            }
            else if($tmp_file[2] == 3) {
                $source = imagecreatefrompng($upfile);
                $source = imagerotate ($source , $degree, 0);
                imagepng($source, $originalPath . '/' . $upfile);
            }

            imagedestroy($source);
        }

추가 :  1 빼고는 모두 수정해야 된다
http://techbirds.in/image-resizing-with-php-exif-orientation/
여기 더 정확한 정보 및 함수가 있다

Image resizing with php exif orientation

I have been working on a project recently that has incorporated an upload mechanic for images uploaded to our website. The images are then resiged and flipped into a different dimension when i used in  ipad. To solve this problem i found EXIF.

EXIF is a way of reading an image and returning the information determining the exact orientation of an image, what device the image was taken on etc..

The below code is the function I used in order to create my images to fit into a particular dimension.

 

The switch statement is used to look at a particular EXIF orientation and perform the required processing before the image is written to its destination. To flip the image we just use the function below.

Now all we need to do is call the function by passing a dimension that we want the image to fit into, the source and destination and also the file type of the source image.

Posted by incree

2012/10/23 16:03 2012/10/23 16:03
, , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://www.incree.com/tc/incree/rss/response/168

Trackback URL : 이 글에는 트랙백을 보낼 수 없습니다


Notices

Archives

Authors

  1. incree

Recent Trackbacks

Calendar

«   2017/02   »
      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        

Site Stats

Total hits:
389700
Today:
35
Yesterday:
144