삼성라이온즈 vs. 롯데 2012/5/9 경기 BaseBall

1. 삼점라이온즈 모습 부활 => 반갑다. 
그대들의 본성은 역시 삼점이니라. 

2. 2루에 구멍
작년에 그렇게 욕하던 신멍청이 아쉬울 줄이야....

3. 백업멤버 정형식의 성장
테이블 세터진의 경쟁이 더 치열해질듯(올해는 니가 1번해라 ㅋㅋ)


구글드라이브 - 좋다! 전문자료

맥유저가 아니라서, 아이클라우드를 쓰는게 어떤건지 어렴풋이 감만 잡고 있었는데. 
구글느님이 드디어 '구글드라이브'를 내놓으셨다. 
그동안 구글독을 쓰면서 힘들었던게, 

1. 업로드/다운로드의 귀찮음, 
2. MS 문서들의 호환안됨

등의 불편함이었는데, 구글드라이브로 이런것들을 한방에 해결해 주셨다.
앞으로 논-애플 유저들은 여기여기 붙어라.ㅋ
업무의 효율이 200% 증대될 것 같다.

1. 구글드라이브를 깔고 구글 드라이브 폴더에서 문서작업을 하면 실시간으로 웹상의 구글드라이브에 업로드 된다.
2. 웹상에서 문서를 만들어도 로컬 컴퓨터가 켜져 있으면 마찬가지로 로컬에 파일이 생긴다. 물론 파일은 gdoc, gslides 뭐 이런 확장자명을 가진다.
3. MS 파워포인트로 구글드라이브 안에서 파일을 만들고 편집을 했을 때, 그것을 구글드라이브에서 클릭하여 봤을 때, 파일이 깨진다든지 이런 모습들이 현저히 줄었다.

오늘 처음써봐서 많은 점은 헤아려보지 않았지만, 이것만 봐도
페북과 애플을 따라잡기 위한 구글의 눈물겨운 노력이 돋보인다.
구글 만세!

넥서스 S 의 장점

할부 1년이 다되어가는 지금..

넥서스 S 디자인은 아주 괜찮은 발상이었다고 생각이 든다. 

일단 외양 면에서는 그리 포스가 있진 않지만..

커브드 글래스 ==> 떨어져도 손상이 적다.(왠만하면 폰 화면이 땅에 직접닿지 않는다, 또 폰 몸체의 틀이 글래스의 테두리를 오목하게 감싸고 있는 형태라, 화면의 직접 충격은 훨씬 적다)
플라스틱 몸체 ==> 떨어져도 손상이 적다.(폰자체가 가벼워서 충격이 덜하다)
둥글둥글하고 굴곡진 폰 전체 모양 ==> 떨어져도 손상이 적다( 둥근 모양덕분에 땅바닥에 쩍하고 붙지 않는다)
뒷면의 울퉁불퉁 점 ==> 손에서 떨어질 확률이 적다.

오래쓰는 폰을 만들기 위한 인체공학적 디자인에 찬사를 보낸다. 


SVG

SVG를 배워 보자!

SVG 란, Scalable Vector Graphics

XML 포멧으로 웹상에 뭔가를 그려낼 수 있음.

html 파일 안에 아래와 같은 코드를 직접 넣음으로 그려낼 수 있다.

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <circle cx="100" cy="50" r="40" stroke="black"
  stroke-width="2" fill="red"/>
</svg>

iframe에 집어넣을 수도 링크할수도 있다.


클래스 패스와 톰캣의 재시작..문제 리눅스

JSP 파일에 추가하기 원하는 라이브러리를 집어넣고
클래스패스를 더해준 다음에는,

--> 톰캣을 재시작해야한다. 왜냐하면 JSP 파일들이 새로와진 라이브러리를 import 하기 위해서는 다시 컴파일하는 과정을 거쳐야 하기 때문이다. 

이때, 모든 패스를 업데이트 해줘야하는데, "/etc/profile", "/root/.bash_profile" 도 같이 업데이트 해줘야한다.  "source" 를 통해..

export 등을 사용해 일시적으로 패스를 정해주었던 경우도, 다시 export를 써서 패스를 정해놓고 톰캣을 재시작하든지..

모든 연결된 패스를 확인한 후에 톰캣을 재시작하도록한다.

c --> Java 를 위한 JNI 사용 컴파일 과정 JAVA


1.헬로월드 자바파일을 만들고 컴파일한다.
javac HelloWorld.java

2. 이에 대한 C 라이브러리 파일을 자동생성한다.
javah -jni HelloWorld

3. 생성된 HelloWorld.h 에 대한 진짜 C 파일을 작성하고 아래와 같이 컴파일
gcc -c -fPIC -I/usr/lib/jvm/java-6-openjdk/include -I/usr/lib/jvm/java-6-openjdk/include/linux HelloWorld.c

4. 컴파일된 코드(HelloWorld.o)를 아래와 같이 바꿔준다.
gcc -shared -o libHelloWorld.so HelloWorld.o

5. HelloWorld 를 실행해보자! 패쓰를 설정해줘야한다. /etc/profile 에 저장해두는 것이 편하다.
LD_LIBRARY_PATH=./:${LD_LIBRARY_PATH} java HelloWorld


* 오퍼레이터 C

* 는 *의 다음에 나오는 주소의 내용물

*p = 10;
int a;a = *p;
즉 a 는 10임을 알 수 있다.

XML DOM 파서 사용법 JAVA

우선 간단한 xml 문서 포멧부터 알아야 한다. 

xml문서는 아래와 같은 hierarchical 한 자료들을 저장한다. 


<dog>
<puppy id="1">
<size>small</size>
<origin>china</origin>
<character>reluctant</character>
<name>Shih Tzu</name>
</puppy>
<puppy id="2">....
......
</dog>

dog 라는 문서인데, 이것은 위의 시추처럼 애완용강아지들을 여러 개 가질 수 있다. 
위처럼 attribute를 id 로 설정해 번호를 매길 수도 있다. 
그 안에 있는 태그들은 이것의 갖가지 속성들. 태그 안의 값들은 속성 값이다. 
예를 들면 '1번 퍼피는 이름 속성은 시추이고, 크기 속성은 작다' 이런식이다.

이런 것을 자바로 다룰 수 있는DOM 파서는 아래와 같은 예제로 나타낸다. 


1. xml 파일을 읽는 것부터 만들어보자.

클래스 파일 만들때 

import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;

이것들을 import 하자. 

아래의 코드들을 쳐서 DOM 파서를 불러오고, "dog.xml" 파일을 읽어 들이자. . 

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

DocumentBuilder parser = dbf.newDocumentBuilder();

Document doc = parser.parse("dog.xml");

Element root = doc.getDocumentElement();

이 root는 문서 트리의 가장 상위 태그 'dog'를 뜻한다.

이 element는 element 이자 node 인데, 

Node에 관한 API를 활용함으로 안에 있는 정보들을 끄집어 낼 수 있다. 

노드 첫 자식 노드 가져오기
Node n = root.getFirstChild();

//노드명 가져오기
System.out.println(n.getNodeName());
//노드 타입 가져오기
System.out.println(n.getNodeType());
//노드 값 가져오기
System.out.println(n.getNodeValue());

//노드 다음 자식 가져오기
Node n2 = root.getNextSibling();

for 루프를 써서 전체 데이터 트리를 돌면서 정보를 얻어 낼 수 있다. 













우분투 호스트명 바꾸기 리눅스

>vi /etc/hostname

하여 파일을 원하는 이름으로 수정한 후 저장

>hostname -F /etc/hostname 

치고 터미널 창을 다시 열어보면 
호스트명이 바뀌어 있는 것을 확인할 수 있다. 

우분투에서 개인 계정 홈페이지 만들기 리눅스

1. 우분투에 일단 아파치를 깐다. 
>sudo apt-get install apache2
아파치 설치~*
2. vi 에디터로 아래처럼 아파치 콘피그 파일 수정
>vi /etc/apach2/httpd.conf
분리선 아래부분을 정확히 입력...
----------------------------------------------------
Include /etc/apache2/mods-available/userdir.load
Include /etc/apache2/mods-available/userdir.conf
UserDir public_html
<Directory /home/-/public_html>
        AllowOverride All
        Options ExecCGI
        <Limit GET POST OPTIONS>
                Order allow,deny
                Allow from all
        </Limit>
        <LimitExcept GET POST OPTIONS>
                Order allow,deny
                Allow from all
        </LimitExcept>
</Directory>
ServerName localhost
-------------------------------------------------
3. 아파치 다시 시작
>/usr/bin/apachectl restart
4. 개인 홈에서 public_html  폴더 생성
xx@xxx>mkdir public_html
5. 접근권한 설정
>chmod 755 public_html
6. 웹브라우저로 확인해본다. ~*

CPU 정보확인 리눅스

cat /proc/cpuinfo  - cpu 정보
cat /proc/meminfo  - memory 정보

우분투 프로그램 설치 확인 리눅스

dpkg -l 하면 다 나옴

원하는 걸 보려면, 

dpkg -l | grep mysql

하면 mysql 에 관련 프로그램 만 나옴., 

우분투에 버클리 DB 설치 리눅스

wget으로 


여기서
다운받고 압축을 푼다 --> tar -xzvf db-xxxx
압축푼 폴더에 들어가서

'build_unix'  폴더에 또 들어간다. 

>../dist/configure --enable-cxx

>make

>make install 

을 차례로 입력하면 설치된다. ~^^

리눅스에 워드넷 설치중 문제 해결 리눅스

감사합니다 occams 님. You saved My day.

tcl/tk 가 설치되어 있지 않을 경우, 설치도중

configure: WARNING: Can't find Tcl configuration definitions

라는 메시지가 나올 수 있다. 이럴 경우,1) tcl 및 tk package 를 설치한다.

sudo apt-get install build-essential tcl8.4-dev tk8.4-dev

2) 다음 ./configure 를 실행할 때 아래와 같이 옵션을 준다.

./configure --with-tclconfig=/usr/lib/tcl8.4/ --with-tkconfig=/usr/lib/tk8.4/

그럼 ./configure 도 잘 진행되고, 이후 make 및 make install 을 통해 설치가 가능하다.


AbstractTextEditor 와 AbstractDocumentProvider JAVA

AbstractTextEditor: 이건, 이클립스에 코드가 펼쳐져 있는 텍스트 편집창이다. 이걸 커스터마이징 시켜서 이런저런 기능을 추가하고 그런다. 

AbstactDocumentProvider:  위의 텍스트 에디터에서 텍스트의 출납을 담당하는 중요한 클래스이다. 이것 역시 잘 커스터마이징해서, 사용하자. 위의 에디터를 초기화할 때, setDocumentProvider(new CustomizedDocumentProvider()) 를 꼭 해줘야, 향후 문서에 대한 조작이 가능하다.


주어진 미션은 이클립스에서 문서 편집 창에 있는 텍스트를 긁어와 처리한 후 다시 편집창에 돌려보내는 것이다. 
어떤 식으로든 텍스트를 들고 와야 하는데... 이것을 위해서는 IDocument 라는 클래스가 필요하다. 

일단 텍스트 에디터에서 나타나는 모든 조작된 행동들은 IEditorActionDelegate 라는 클래스에서 행해져야 한다. 
그러면, 이 클래스를 상속하여 "RemoveAllActionDelegate"라는 클래스를 만들었다 치자..
그러면, 그안의 최소한 2개의 메소드를 정의해 줘야한다. 

1. run(IActioon action)  <= 실행될 프로세스를 자세히,...
2. setActiveEditor(IAction action, IEditorPart targetEditor) <= 소속된 텍스트 에디터를 할당.

그럼, run() 이 이를테면, 바로 텍스트 에디터 안의 모든 텍스트를 삭제하는 프로세스이니,  run() 안에서 정의하자. 

그안에 아래의 문장을 추가한다. 

IDocument document =  ((ITextEditor) editor).getDocumentProvider().getDocument(editor.getEditorInput());

IDocument 는 바로 편집기 안의 텍스트를 담은 녀석이다.. 

텍스트를 얻어내려면,  String content = document.get(); 로 텍스트를 스트링으로 바꿔 얻어 낸다. 

다시 에디터에 집어넣으려면, 리더를 하나 만들고 스트링 값을 넣어준다...
StringReader reader = new StringReader("");

그 다음에는 
editor.getDocumentProvider().setDocumentContent(document, reader);
로 집어 넣어주자.

그러면 끝!

나중에 RemoveAllActionDelegate 클래스를 실행하면, 텍스트가 없어지고, 빈 편집기가 남는 기능을 볼 수 있을 것. 

//------------
이클립스 플랫폼을 사용한 편집기가 좋은 거 같긴한데....
뭔가,, 좀, 남의거 쓰는 기분도 들고...어차피 코딩이란게..
남의 거  잘 커스터마이징 해서 쓰는 실력이라지만....
이때까지. 스윙만 겁내 열심히 해서, ,  하드 코딩보다
커스터마이징이 더 어려운거 같다. ㅠ난 아직 하수인가?///




Java UI에서 마우스 포인터 위치 얻어내기 JAVA

간단함. 

자바 awt 클래스에서, 

PointerInfo 를 import  하고
MouseInfo 를 import  한다. 
그다음, 다음의 코드를 삽입.

PointerInfo a = MouseInfo.getPointerInfo();
Point p = a.getPointerInfo();

p는 현재 마우스 포인터의 위치가 된다. 

만약 다이얼로그를 불러올때 마우스 포인터가 있는 곳에 위치시키고 싶다면, 

다이얼로그를 그리는 메소드에서, 

아래의 코드를 추가해주면 된다. 

this.setLocation(p);

contract failure 나의일기

What a failure, 
I wanted to be in the famous team.
The good team that gives me more money.
I didn't break the contract, but If I were, there would be some
suffering to someone.
I should keep the trust.
I don't flee from all the pain to be a granted but stupid person.

Linux::crontab 사용방법과 문제점 리눅스

주기적으로 백업을 수행하여야 할때, crontab을 사용하여 몇날 몇시 몇분에 자동백업을 하게 해줄 수 있다. 
백업을 수행하는 방법으로는 미러링 툴인 rsync를 사용하여 보자. 

다음명령 입력하여  크론탭명령을  편집해본다. 

> crontab -e 

위를 치면 나타나는 편집기 화면에 아래의 순서대로(중간에 스페이스) 원하는 시간대와 명령을 입력하면된다.
이때 매월, 매시, 매년, 매분을 나타내는 기호는 * 이므로 적절히 넣어보자. 
[분] [시] [월] [년] [요일] [명령어] 

10 06 * * * /usr/bin/rsync /root /media/disk1

위 표현을 넣고 저장해서 마치면 된다. 즉 매년, 매월, 매일, 아침 6시 10분에 맨 우측의 명령을 시행하라는 내용인데..
필자는 파일시스템 미러링 프로그램인 rsync로 /root 폴더를 백업디스크인  disk1에 백업하는 명령을 내렸다. 


여기서 중요한게 있다. 터미널에서 어느 위치에서든 "rsync"를 치면 된다고 크론탭에서도 그러한 것은 아니다. 

해당 프로그램"rsync"가 있는 폴더의 절대경로를 꼭 입력해야 명령을 알아듣는다. 

요거때문에, 또 한시간 삽질.....해당 명령이 있는 쉘 스크립트를 만들었다고 해도 예외는 아니다.


그럼 한번 백업에 관한 쉘 스크립트를 만들어서 정리를 하자면,  아래처럼 만들어볼 수 있다. 

파일 이름은 disck_partial_backup.sh 라고 하자. 

#!/bin/sh
  
  /usr/bin/rsync -avpog /root /media/disk1/
  /usr/bin/rsync -avpog /var /media/disk1/
  /usr/bin/rsync -avpog /home /media/disk1/
  /usr/bin/rsync -avpog /usr /media/disk1/

/bin/echo `date` Disk data backup is complete. >> /media/disk1/log/backupHistory.log

위와 같은 쉘스크립트 파일을 만들어서, 주기적으로 실행하게끔한다. 
나름대로 로그를 남기기 위한, echo 명령도 절대경로를 다 입력했고, 로그 파일은 백업 디스크의 backupHistory.log라는 
파일로 저장하도록 했다.  위 파일을 /root 아래에 저장을 하고, 

아래처럼  크론탭 일정을 만들어보았다. 

0 06 * * * /bin/bash /root/disk_partial_backup.sh

bash 명령도 절대 경로, sh 파일 위치도 절대경로이다. 이렇게 하면된다. 매일 아침 6시에 /root, /var, /home, /usr을 백업하라는 명령이다. 명령도 성공적으로 수행하고, 로그파일도 차곡차곡 쌓인다.

--

MySQL:: DB 사용 권한 설정 MySQL

사용자에게 해당 DB를 사용할 수 있는 모든 권한 을 부여. 

> use mysql; 
> grant all privileges on 데이터베이스.* to 사용자@localhost identified by 'admin' with grant option;
>flush privileges;

미국영화와 프랑스영화의 차이 나의일기

미국영화는 끝이 나면 흡족한 미소를 지으며 기지개를 켜며 영화관을 나선다. 

하지만, 프랑스 영화가 끝이나면 한동안 멍하지 않아 있는다.

적은 경험에 의한 일반화이지만, 나머지도 대체로 이러할 것 같다.

JavaScript:: 다이얼로그 박스 JavaScript

자바스크립트 사용에서 가장 핵심적인 요체가 바로 페이지 이동에 대한 인터페이스, 즉 다이얼로그 박스의 사용일 것이다. 
html 의 폼에서 버튼을 클릭하면 다이얼로그박스가 나오는 형식으로 코드를 만들어본다.

1. alert()

<form name="ex1">
<input type="button" name="alertButton" value="Alert Box" onClick='alert("경고!!")'>
</form>


2. confirm()

<form name="ex2">
<input type="button" name="confirmButton" value="Confirm Box" 
onClick='confirmation()'>
</form>

컨펌박스의 경우에 함수의 결과 값중 yes or no에 따라 행동을 따로 지정해주는 코드를 추가해줄 수 있다.
중요한 것은 confirm 메소드가 불리언 값을 가져다 준다는 것이다. 

<script type="text/javascript">
       function confirmation(){
var answer = confirm("메인 페이지로 가시겠습니까?")
if(answer) {
alert("메인으로 갑니다")
window.location="http://egloos.com";
}
else{
alert("메인으로 가지 않습니다.");
}
}
</script>


3. prompt()

<form name="ex3">
<input type="button" name="promptButton" value="Prompt Box" 
onClick='promptex()'>
</form>

프롬프트는 입력한 값을 변수로 전달해준다. 

<script type="text/javascript">
       function promptex(){
var val = prompt("이름을 입력하세요:")
alert("메인으로 갑니다" + val +"씨")
window.location="http://egloos.com";
}
</script>


리눅스 비밀번호 변경 리눅스

일단 계정으로 로그인해서, 

> passwd

새 암호: *****
새 암호 재입력: *****

이렇게 하면 비밀번호 변경 완료.

MySQL:: 필드 추가 및 삭제 MySQL

MySQL에 있어서 기초적인 명령어이다. 

mysql> alter table 테이블명 add 필드명 varchar(10);

이렇게 추가해 줄 수 있다. 
 
반면 삭제는

mysql> alter table 테이블명 drop 필드명;

하고 삭제해준다. 

MySQL:: auto_increment 값 초기화 MySQL

자동으로 생성되는 값을 1로 재설정 해주고 싶을 때,

데이터를 모두 지우고 시작하고 싶다면, 

> delete from 'table';

하고

> truncate table 'table'; 을 입력해주면 새로 들어가는 데이터에 1부터 auto_increment 가 적용된다. 

그렇지 않고 그 다으에 들어가는 것부터 1로 설정해주고 싶다면, 


> alter table 'table'  auto_increment='1'; 로 해주면 됨.

PHP::쿠키와 세션 cookie session PHP

쿠키는 접속자가 가진 일종의 키.
세션은 서버가 가진 일종의 장부.


세션
--------
세션아이디를 서버가 사용자에게 주면 그걸 가지고 
접근 권한을 받는 구조이다. 

1. $_SESSION : 세션 정보를 간직한 배열. 슈퍼글로벌에 오토매틱글로벌(여기저기 모든페이지에 다 돌아다닐수있는...) 변수

  세션 정보 등록 ==>  $_SESSION["foo"] ="foo"; 혹은
                              $session_id = "id"; session_register(session_id); ==>폐기!

2. session_start() :  세션을 생성, 혹은 쿠키나, GET이나, POST로 가져온 세션아이디로 세션 현재 세션 재개.(이해감?)
   예를 들면, 현재 페이지에서 인증된 세션을 들고 있게 만드는 것이라 봄, 세션이 성공적으로 시작되면 true 아니면, false를
   돌려줌..


session_register와  $_SESSION을 사용해 세션 정보를 입력하는데, 보통 세션 정보는  db에 저장해놓고, sessioin_id 만을 사용자로부터 받아, db에 매칭시켜 나머지 정보를 가져오는 것으로 할 수 있다. 입력된 세션 정보는 페이지들간의 글로벌한 passport로 사용된다. 

3. session_unregister("***"): 세션에 있는 정보를 등록해제한다.

4. session_destroy: 세션을 파괴한다. 

------
쿠키는 사용자가 가진 키이다. 
이것은 사용자가 웹페이지에 접속할 때마다 번거로이 사용자 정보를 입력하지 않게 하기 위해 만들어졌다. 


1. 쿠키설정

setcookie:  쿠키설정, 다음과 같이 설정한다.  setcookie("user", "user", time()+3600); user라는 변인에 user값을 세팅하고 한시간후에 소멸하도록 한다.


2. 쿠키값 얻기

$_COOKIE["user"]; : 좌측과 같은 배열에 쿠키값은 들어있다. 

3. 쿠키삭제

setcookie("user", "", time()-3600);

-----

결국 쿠키와 세션을 잘 사용해서 사용자 로그인을 다루어야 한다. 
세시간 삽질 끝에 얻어낸 하나의 사실은....(병신인증)
session_start()는 html 태그가 나오기 전에 나와야 한다는 것이다. 

그리고, 가급적 $_SESSION['xxx'] = $xxx; 방식을 써야한다는 것이다.





방문자 횟수 나의일기

방문자 횟수가 점점 늘고 있다. 
이러다 파워블로거되는거 아냐?
여기는 나를 위한 블로그인데.... 

MySQL:: insert 데이터 집어넣기 MySQL

MySQL 매뉴얼에서는 insert 에 대해서 다음과 같은 syntax 를 준다.

INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]  
[INTO] tbl_name [(col_name,...)]    {VALUES | VALUE} ({expr | DEFAULT},...),(...),...  
[ ON DUPLICATE KEY UPDATE      col_name=expr        [, col_name=expr] ... ]

예를 들어보자면, 아래와 같다. syntax를 그대로 따랐고. 
깐단하게 뒤의 on duplicate... 머시기는 무시했다. 


PHP:: DB(MySQL) 연결 PHP

php 코드로 DB에 연결하고 싶을 때, 구글에 문의하면 가장 친절하게 php 튜토리얼로 데려다준다. 
php.net 에 있는 튜토리얼은 친절하게도 example을 아래에 제시해 주는데 긁어다가 쓰면 바로 작동한다. 
다만, 연결할 DB는 MySQL 이고 다른 DB에도 이러한 것이 있는지는 필자도 안찾아봐서 잘 모른다. 

주요한 method는 mysql_connect 이다. 

<?php
$link 
mysql_connect('localhost''mysql_user''mysql_password');
if (!
$link) {
    die(
'Could not connect: ' mysql_error());
}
echo 
'Connected successfully';
mysql_close($link);
?>

위의 코드를 원하는 php파일에다 붙이고, 호스트명, 유저명, 패스워드를 적절히 넣으면, DB연결이 성사된다. 
튜토리얼의 좌측 리스트에는  mysql로 php안에서 할 수 있는 오만가지 방법들이 다 나온다.  그중에 기본적인 것은 

1. mysql_select_db('mysql_dbname', $link) :  쿼리할 DB를 선택하는 기능 $link 는 mysql_connect로 만들어진 커넥션이다. 
2. mysql_query($sql, $link) :  $sql은 쿼리문, $link 는 커넥션 $sql 에 들어 있는 쿼리를 날려주는 역할을 한다. 
3. mysql_fetch_assoc($result) : 쿼리 결과를 가져다가 하나의 배열로 돌려준다. 
4. mysql_close() : 커넥션 종료.

이제 쿼리를 날릴 수 있으니 뭐든 할 수 있다.  지금까지 소개한 방법들을 종합하면, 아래처럼 펼쳐볼 수 있다. 


<?php

$conn 
mysql_connect("localhost""mysql_user""mysql_password");

if (!
$conn) {
    echo 
"Unable to connect to DB: " mysql_error();
    exit;
}
  
if (!
mysql_select_db("mydbname")) {
    echo 
"Unable to select mydbname: " mysql_error();
    exit;
}

$sql "SELECT id as userid, fullname, userstatus 
        FROM   sometable
        WHERE  userstatus = 1"
;

$result mysql_query($sql);

if (!
$result) {
    echo 
"Could not successfully run query ($sql) from DB: " mysql_error();
    exit;
}

if (
mysql_num_rows($result) == 0) {
    echo 
"No rows found, nothing to print so am exiting";
    exit;
}

// 각 행마다의 userid 필드, fullname 필드 ...차례대로 훑어간다.
while ($row mysql_fetch_assoc($result)) {
    echo 
$row["userid"];
    echo 
$row["fullname"];
    echo 
$row["userstatus"];
}

mysql_free_result($result);

?>

자, 그럼 이제 직접해보자!!


심볼릭링크 걸어주는 법 리눅스



> ln -s '링크'

루트 디렉토리에서 내 홈디렉토리로 링크로 바로가기 해주고 싶을 때..

>ln -s '/home/dhjin'

이렇게 해주면 

dhjin -> /home/dhjin 이라는 심볼릭 링크가 생긴다. 


도메인명으로 IP 주소 알아내기 윈도우즈

윈도우즈 커맨드 명령창에서 도메인명으로 ip 주소를 알아내려면 , 아래와 같은 명령어를 치면 된다. 

> nslookup xxx.co.kr.
















여기서 중요한 점은 항상 도메인명의 마지막에 "." 을 찍어 줘야 한다는 것이다. 

명심할 필요~~!!!




1 2 3