전체 글 376

[MySql]MySql Pagination, 페이지 리스팅

쿼리 결과를 10개 혹은 특정개수 단위로 페이지 구분해줘야 할 경우가 많다 > 뭐 이런거 . 그럴 경우 row 를 다 불러오기 보다 필요한 단위 만큼 짤라주는게 편하다. 그럴경우 LIMIT 를 쓰자 INSERT INTO `songs` VALUES(1, 'Paradise City'); INSERT INTO `songs` VALUES(2, 'Get in the Ring'); INSERT INTO `songs` VALUES(3, 'Night Train'); INSERT INTO `songs` VALUES(4, 'Sweet Child O'' Mine'); INSERT INTO `songs` VALUES(5, 'Welcome to the Jungle'); INSERT INTO `songs` VALUES(6, 'P..

코드/PHP 2015.08.13

[PHP]Query 결과 재사용, 인덱스 리셋

코딩을 하다보면 $query = "SELECT * FROM table_name " ; $result = mysqli_query($dbc, $query) or die('Invalid Query'); while($row = mysqli_fetch_assoc($result)) { echo '.$row['idx'].''; } 이렇게 쿼리 결과($result)를 while 등의 반복문으로 한 번 사용한 다음에 다른 곳( 다른 함수나 다른 html 영역에 노출 ) 에 다시 사용해야 하는 경우가 종종있다. 그냥 while($row = mysqli_fetch_assoc($result)) 를 돌려봐야 아무것도 나오지 않는다. 한번 mysqli_fetch_assoc($result) 함수를 통해서 row 를 모두 뽑아내고 ..

코드/PHP 2015.08.13

[PHP] 특수한 상수들

echo __FILE__; __FILE__ 상수가 사용된 PHP 파일이 웹서버 컴퓨터 하드 드라이브에 저장된 물리적인 디렉토리 경로를 가져온다. www.naver.com/news/topic.html 이런 웹상의 경로가 아니라 D:\APM_Setup\doc_test\project\news\topic.html 이런 종류의 경로값을 반환한다. 현재 파일이 구동되고 있는 웹서버 컴퓨터 폴더구조다. $_SEVER['PHP_SELF'] 와 비교할때 인클루드시 반환하는 결과가 다르더다. /* init.php */ $file = __FILE__; $self = $_SERVER['PHP_SELF']; /* view.php */ include_once(init.php); echo $file; // init.php 반환 e..

코드/PHP 2015.08.07

[MySql]외래키, Foreign Key 설정

외래키 제한 때문에 삽질하다가 찾아낸 sql 샘플 참조 : http://www.mysqltutorial.org/mysql-on-delete-cascade/ CREATE TABLE buildings ( building_no INT(11) NOT NULL AUTO_INCREMENT, building_name VARCHAR(255) NOT NULL, address VARCHAR(355) NOT NULL, PRIMARY KEY (building_no) ) ENGINE=INNODB; CREATE TABLE rooms ( room_no INT(11) NOT NULL AUTO_INCREMENT, room_name VARCHAR(255) NOT NULL, building_no INT(11) NOT NULL, PRIMA..

코드/PHP 2015.08.03

[정규표현식]IP 주소찾기

IP 주소 예시Pinging hog.forta.com [12.159.46.200] 정규표현식 책에는 이런 식으로 되어있다.(((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5])) 저렇게 하면 우선권 때문인지 뭔지는 모르겠지만 12.159.46.200이렇게만 선택된다. 삽질하다 알게됐는데, 하위 표현식의 순서를 바꾼다. (((1\d{2})|(2[0-4]\d)|(\d{1,2})|(25[0-4]))\.){3}((1\d{2})|(2[0-4]\d)|(\d{1,2})|(25[0-4])) 12.159.46.200이제 잘 선택되는걸 알수 있다.

코드/PHP 2015.07.30

port 번호 모음

참조 : http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml 포트 포워딩을 하려면 인터넷 서비스, 소프트웨어가 쓰는 포트 번호를 알아야 한다. 사람들이 많이 쓰는 네트워크 서비스, 메신저, P2P 프로그램의 포트 번호를 정리한다. ▲ 21번: FTP ▲ 22번: 보안 텔넷(SSH) ▲ 23번: 텔넷 ▲ 25번: SMTP(메일 발송) ▲ 42번: 호스트 네임 서버 ▲ 53번: 도메인 메인 서버 ▲ 70번: 고퍼(Gopher) ▲ 79번: 핑거(Finger) ▲ 80번: 웹(HTTP) ▲ 88번: 커베로스 보안 규격 ▲ 110번: POP3(메일 수신) ▲ 118, 156번: SQL 서비스 ▲ 13..

코드/PHP 2015.07.29

[정규표현식] \b, \B 의 정확한 이해

출처 : http://ohgyun.com/392 \d 나 \w, \s 등과 같은 메타 문자들이 '특정 텍스트의 집합'을 매칭시키는 것과 다르게,\b 는 단어의 `경계` 위치를 가리킨다. (b = boundary 를 의미한다) 여기서 '단어'는 \w 와 일치하며 [a-zA-Z0-9_]와 동일하다.즉, 단어와 단어가 아닌 문자와의 사이를 가리키는 것이다. 위치를 가리키는 것이기 때문에, 패턴이 일치하더라도 매치되는 길이는 0이다.이런 이유 때문에 좀 헷갈리는데, 문장에서 각 단어의 경계를 표시해보면 쉽게 이해할 수 있다. Raindrops on roses, and whiskers on kittens. 위 문장에서 단어의 경계, 즉 메타 문자 \b 는 아래와 같이 | 를 표시한 위치를 가리킨다. |Raindr..

코드/JS 2015.07.29