2016년 2월 18일 목요일

[씀: 일상적 글쓰기] 안드로이드 베타 1.1.3 업데이트

Update 1.1.3
- 데이터가 정상적으로 추가 되었는지 확인하기 (PHP, MySQL)
- INSERT 구문에서 에러가 발생하여 데이터 저장에 실패 했을 때, 에러 메세지를 서버 DB 별도 에러 기록 테이블에 저장하기 (PHP, MySQL)

2016년 2월 17일 수요일

INSERT 구문에서 에러가 발생하여 데이터 저장에 실패 했을 때, 에러 메세지를 서버 DB 별도 에러 기록 테이블에 저장하기 (PHP, MySQL)

 서버 DB에 데이터를 저장하려 할 때 INSERT 명령에서 발생한다면, 해당 에러의 내용을 별도의 테이블(에러 넘버와 에러메세지를 저장시키는 테이블) 저장 시킨다.

 그 후 발생하는 에러들이 뭔지 꾸준히 모니터링 하면서 글이 저장되지 않는 오류들을 최대한 해결해 나가고자 한다. 

cf) mysql_error() - 최근 실행된 mysql 작업에서 발생한 에러 메세지를 출력한다. 아무런 에러가 발생하지 않았을 경우 어떠한 메세지도 출력하지 않는다. (mysql_error())

mysql_errno() - 최근 실행된 mysql 작업에서 발생한 에러의 에러 넘버를 출력한다. 아무런 에러가 발생하지 않았을 경우에는 '0'을 반환한다. (mysqli_errno())

tip) PHP에서 발생한 에러의 경우 error number로 구글링하면 해결 방법을 찾기가 쉽다.

2016년 2월 16일 화요일

데이터가 정상적으로 추가 되었는지 확인하기 (PHP, MySQL)

 PHP 스크립트를 이용해 MySQL 서버에 접속하여 데이터를 추가하려 할때,
추가하려는 데이터가 무사히 저장 되었는지 확인하는 절차가 필요하다.

 높은 확률로 어플리케이션에서 작성된 글이 서버에 잘 저장 되지만, 가끔 그 글이 소실 되는 경우에 애써서 작성한 글을 지켜주지 못하였다는 죄송한 마음은 이루 말할 수 없다.

 최대한 공부해서 알아가며 점점 줄여 가고자 고군분투 중이다.

 이번에 참고하게 된 책은 'My First MySQL & PHP programming' 이라는 책이다.

 여기에서 제시하는 방법은 INSERT INTO 구문을 이용해 데이터를 추가한 후 
그 데이터를 SELECT 명령으로 조회해 보는 것이다. 

 책에 소개된 소스 중 일부는 아래와 같은 형태이다.
 
...
mysql_query("INSERT INTO tb1 VALUES('K888','SQL',25)");
$re=mysql_query("SELECT * FROM tb1");
while($result=mysql_fetch_array($re)) {
         print $result[0];
         ...
}
...

 가장 기본적인 방법인 듯 하지만 이제라도 알게 되서 적용해 보았다. 



 

2016년 2월 14일 일요일

[씀: 일상적 글쓰기] 2016.2.15 낮, '대화'


'

[씀: 일상적 글쓰기] 2016.2.14 밤 '20년 뒤'



[씀: 일상적 글쓰기] 2016.2.14 낮 '물음'



PHP MySQL 구문에 insert 할 때 작은 따옴표 (single quotation marks) 입력 처리

'씀: 일상적 글쓰기' 어플리케이션은 때때로 글이 저장되지 않는 오류가 있어왔다. 

여러가지 방법으로 해결해 보려 애썼지만 명확한 오류를 찾지 못했었다. 

오늘에서야 아주 기초적이고 간단한 오류 하나를 해결 함으로써 앞으로 글쓰기 저장 오류에서 큰 개선이 있을 것이라 기대해본다. 

그 기초적이고 간단한 원인은 
'PHP MySQL 구문에 insert 할 때 작은 따옴표 (single quotation marks) 입력 처리' 였다.

MySQL 에서 작은 따옴표는 문자열을 구분하는데 사용 되어 진다. 값에 작은 따옴표가 포함되어 있을 경우 쿼리문 속의 작은 따옴표들과 섞여 에러가 발생한다.

이를 해결하기 위해서는 작은 따옴표를 역슬레쉬와 함께 \' 이러한 형태로 사용해야 한다. 
입력 하려는  문장이 예를 들어 This is 'example'. 이라면 이 문장은 This is \'example\'. 과 같이 사용 되어야 에러가 발생하지 않는다. 

이때 addslashes() 함수를 사용하면 큰따옴표와 작은 따옴표와 같은 특정 특수 문자들에 \(역슬레쉬)를 붙여진 형태로 반환해 준다.

$example = addslashes($example); 

이렇게 변환하여 사용하게 되면 \(역슬래쉬)를 포함하여 쿼리문을 실행시키고 DB에 저장 될 때는 \가 지워진 형태로 저장된다.

(참고, stripslashes() 함수는 '\' 가 표기된 문자를 원래대로 되돌려 준다.)

2016년 2월 12일 금요일

[씀: 일상적 글쓰기] '씀: 일상적 글쓰기' 글 선정 작업



5. '씀: 일상적 글쓰기' 글 선정 작업


[씀: 일상적 글쓰기] '씀: 일상적 글쓰기' 책 출판 프로젝트 텀블벅 등록



4. '씀: 일상적 글쓰기' 책 출판 프로젝트 텀블벅 등록


[씀: 일상적 글쓰기] '씀:일상적 글쓰기' 책의 기획 초안



3. '씀:일상적 글쓰기' 책의 기획 초안


[씀: 일상적 글쓰기] 독립책방과 독립 출판물이란 무엇인가. (북성로 디자이너 합류)



2. 독립책방과 독립 출판물이란 무엇인가. (북성로 디자이너 합류)


[씀: 일상적 글쓰기] 우리도 책을 만들어 볼까? (키획사의 합류)


1. 우리도 책을 만들어 볼까? (키획사의 합류)


'씀: 일상적 글쓰기' 독립 출판 기획에서 출판까지



안드로이드 어플리케이션 '씀: 일상적 글쓰기' 에서 작가님들이 작성해 주신 소중한 글들을 모아 
책으로 엮어 독립출판물의 형태로 발행하는 프로젝트를 시작합니다.

다양한 고민과 경험을 공유하고 싶어 프로젝트가 진행되는 과정을 글로 남겨 볼까 합니다. 

10B 팀과 키획사가 함께 합니다.

키획사: https://www.facebook.com/kiplanners

10B : http://www.ssm10b.com

감사합니다. 

[2016.2.13 물음과 대답] 지금 내가 겪고 있는 일들을 글로 정리해 주고 싶은데, 어떻게 하는 것이 좋을까?

[2016.2.13 물음과 대답]
"지금 내가 겪고 있는 일들을 글로 정리해 주고 싶은데, 어떻게 하는 것이 좋을까?"

 분명한 것은 작년 9월부터의 여섯 달과 앞으로의 기간은
내가 지금까지 겪어온 어떠한 시간보다 밀도 높았고 강렬했던 기간이라는 것이다.

흘러가는 시간 속에 많은 것들이 남고 더 많은 것들이 떠나간다.

조금 더 생동감 있고 정확한 것들을 많이 붙잡아 두고 싶은 욕심이 생겼다.

그때 그때를 돌이켜 보고 주변 사람들, 일어나는 일들
또는 사물에 대한 의미를 글로써 부여하는 일을 해보려 한다.

여러번의 비슷한 시도 끝에 무턱대고 "꾸준히 글을 써보자!" 와 같은
막연한 다짐은 지켜지기 매우 힘들다는 것을 알게 되었다.

하여, 생각해낸 한 가지 방법은 하루 중 그때 그때 떠오른 질문, 물음을
공책 한 페이지 첫 부분에 기록해 두고,
가능한 빨리 그 질문에 대한 그 당시에 떠올린 대답을 적는 것이다.   

순서가 바뀌긴 했지만 이 글을 대답으로 삼고 질문을 붙여 본다면, 
"지금 내가 겪고 있는 일들을 글로 정리해 두고 싶은데, 어떻게 하는 것이 좋을까?"
정도가 된다.