2010. 4. 3. 10:40

DriverManager.getConnection("jdbc:mysql://localhost/DB명?useUnicode=true&characterEncoding=euc-kr","root","암호"); 




-----------------------------
이건 뽀너스

<%@ page language="java" import="java.sql.*" contentType="text/html;charset=euc-kr" %>
<% request.setCharacterEncoding("euc-kr"); %> 
Posted by 굿데이
2009. 12. 28. 01:43

2010년에는 좋은 일이 많은 한해가 되길 기대해 봅니다.

Posted by 굿데이
2009. 8. 8. 10:55

ASP.NET 2.0의 GridView 나 DetailsView는 클릭한번으로 페이징 기능을 구현할 수 있다. 하지만 마음먹은대로 표시하는 모양과 기능들을 조작하기가 상당히 복잡하다.

이에 반해 DataList는 사용의 자유도가 상당히 높은반면 GridView 에서 기본으로 제공하는 페이징, 소팅등의 기능을 직접 구현해 주어야 한다. 그 중에서도 DataList에서 페이징을 구현하기 위해선 PagedDataSource 를 이용하면 간단하게 할 수 있다.

SqlConnection con = new SqlConnection("ConnectionString");
con.Open();
SqlCommand cmd = new SqlCommand("SELECT * FROM BOARD", con);
DataSet ds = new DataSet();
SqlDataAdapter sda = new SqlDataAdapter(cmd);

sda.Fill(ds);

PagedDataSource pds = new PagedDataSource();
pds.DataSource = ds.Tables[0].DefaultView;
pds.AllowPaging = true;
pds.PageSize = 10;
pds.CurrentPageIndex = CurrentPage;

DataList1.DataSource = pds;
DataList1.DataBind();

ASP 내에서는 DataList1 내에 표시하고 싶은 곳에

<%# Eval("NUMBER") %>  컬럼명을 적어주면 표시가 된다.

그리고 현재 페이지를 가져오는 과정은

    public int CurrentPage
    {
        get
        {
            object o = this.ViewState["_CurrentPage"];
            if (o == null)
                return 0;  
            else
                return (int)o;
        }
        set
        {
            this.ViewState["_CurrentPage"] = value;
        }
    }

함수를 넣어주면 된다.

그리고 전페이지와 다음페이지 버튼을 만들고 Click 이벤트를 만든다음

CurrentPage += 1 과 CurrentPage -= 1 을 각각 넣고 다시 빌드하면

페이징을 구현할 수 있다.

btnPrev.Enabled = !pds.IsFirstPage;
btnNext.Enabled = !pds.IsLastPage;

 출처
http://www.prily.net/blog/?p=193

Posted by 굿데이
2009. 8. 5. 17:13
Posted by 굿데이
2009. 5. 8. 16:35

<div style="width:200; text-overflow:clip; overflow:hidden;">
    <nobr>제목이 긴 문자열로 이루어진 글을 테이블의 폭에 알맞게 잘라줍니다.</nobr>
</div>
<div style="width:200; text-overflow:ellipsis; overflow:hidden;">
    <nobr>제목이 긴 문자열로 이루어진 글을 테이블의 폭에 알맞게 잘라줍니다.</nobr>
</div>
<div style="width:200; text-overflow:ellipsis; overflow:visible;">
   <nobr>제목이 긴 문자열로 이루어진 글을 테이블의 폭에 알맞게 잘라줍니다.</nobr>
</div>
<table border=1>
  <tr style="padding-top:3">
    <td height=20 style="padding-left:5"><div style="overflow:hidden; text-overflow:ellipsis; width:220;"><nobr><a href="">제목이 긴 문자열로 이루어진 글을 테이블의 폭에 알맞게 잘라줍니다.</nobr></div></td>
    <td class=s>2006.12.26</td>
  </tr>
</table>

 

 

 

<style type="text/css">
.fixed table { table-layout : fixed; }
.fixed table tr td { text-overflow : ellipsis; overflow : hidden; }
</style>

<div class="fixed">
<table cellpadding="0px" cellspacing="0px" border="1px">
<tr>

<td width="2%">

<nobr>a234234234234234234234234234234qwreqwer</nobr></td>

<td width="3%">234234234</td>

<td width="95%">test</td></tr>
<tr>

<td>b</td>

<td>lekjalefjlaejiflaejflajeflajefljaaa</td>

<td>xxx</td></tr>
</table>
</div>

Posted by 굿데이
2009. 5. 8. 13:37

원문 : O'Reilly의 JavaScript and DHTML Cookbook



window.showModalDialog와 window.showModelessDialog 는 modal window가 보이는 동안
script 프로세싱을 중단시키고, modal window가 닫히면 계속 처리됩니다.



개인적인 생각으로는 Web의 통제권이 완전히 modal창으로 넘어가서 window.open 처럼
다른 화면이 아닌 단일창처럼 보여지는게 아닌가 생각됩니다. 결국 main창과
modal창은 다른 window지만 modal창이 main창의 프로세싱을 넘겨받아서 main창의
작업을 중단시켜 놓는것이 아닌가 생각됩니다.



사용법

   var dialogAnswer = window.showModalDialog(팝업.html, 모달명, 옵션);



modal창과 main창은 서로 다른 창이기 때문에 main창의 값을 읽기 위해서
window.dialogArguments property를 사용합니다.



modal창에서 main창으로 값을 넘기기 위해서는 window.returnValue property를
사용합니다.

[출처] window.showModal/Modeless에 대하여|작성자 헤르메스

/*
 ******************************************************************************************/

【 Show Modal Dialog 】

 - 일반적인 형태는 Window.open 과 동일한 형태를 가지지만, 팝업과는 달리 항상 부모창 위에 존재하며, 자식창

의 프로세스가 종료되지 않으면 부모창으로 되돌아 갈 수 없는 점이 window.open 과 다른 점이다.

 - 다시말해, 모달창은 오픈과 동시에 포커스를 자식창에서 잃지 않지만, 모달리스는 포커스를 부모창으로 이동

시킬 수 있다.

 - Show Modal은 ShowModal 과 ShoModaless로 분류되는데 ShowModaless는 일반 팝업창과 같다.

 * 사용법

 - Window.ShowModalDialog("URL",오브젝트 또는 윈도우,속성);
 - Window.ShowModalDialog("ex.asp",window,"dialogwidth:600px;...");

 - 속성부여방법
   Dialogwidth = '가로길이'
   Dialogheight = '세로길이'
   기타등등..

 - 사용처 : 기업용 홈페이지 또는 개인홈페이지의 ID조회등 정보 조회에 어울린다.

 * 예제 (부모창)

<html>

1  <script>
2  function openwin(){
 
3    var x= "dialogwidth:600px;dialogHeight:600px;status:no;help:no";
 
4    returnValue = window.showModalDialog("child.htm", window,x);
5    alert(returnValue)
6    }
7  </script>

8  <body>

9  <form name="Myform">
10 <input type="button" value="TEST" onclick="openwin();"><br><Br>
11    <input type="text" name="aaa" value="인천유나이티드">
12    <input type="text" name="bbb" value="수원삼성블루윙즈">
13    <input type="text" name="ccc" value="성남일화천마">
14    <input type="text" name="ddd" value="울산현대호랑이">
15    <input type="text" name="eee" value="FC서울">
16 </form>

12 </body>
13 </html>


------------------------ 설명 ---------------------------
2 : 모달창 함수 실행.
3 : 모달창을 띄울때 속성을 변수에 저장하여 사용.
4 : 모달창은 자식창에 데이터를 보낼 수도 있고, 또한 다시 받을 수도 있다.


  * 예제 (자식창)  child.htm

<html>

<script>
function init()
{
 var sData = dialogArguments;
 alert(sData.document.Myform.aaa.value);
 alert(sData.document.Myform.bbb.value);
 alert(sData.document.Myform.ccc.value);
 alert(sData.document.Myform.ddd.value);
 alert(sData.document.Myform.eee.value);
 window.close();
 window.returnValue="끝났지롱";
}
</script>

<body>
<form name="myform">
<input type="button" value="TEST" onclick="init()">
</form>
</body>
</html>

------------------------ 설명 ---------------------------

- 자식창에서 TEST 버튼을 클릭했을 시, 부모창에 있는 각각의 텍스트박스에
있는 내용을 Alert을 이용해서 볼 수 있다. 또한 모든 내용을 보고 난 후에는
다시 ReturnValue="끝났지롱"; 을 부모창에 보내준다.


- 모달은 오브젝트로 값을 저장하여, 부모창과 자식창에 넘겨주고, 받는 기능을 할 수 있다.

[출처] ShowModalDialog|작성자 의천도너
Posted by 굿데이
2009. 3. 12. 13:48
 Visual Studio 2005로 웹 서비스 개발을 할 때 가상 웹 서버를 사용하는 경우가 많습니다. 그런데 이 놈이 가끔 문제가 될 때가 있습니다. 바로 경로 문제!

프로젝트 단위로 개발 하는 개념 때문에 프로젝트 루트와 웹 서버 루트를 같이 사용해야 하는 경우에 개발 따로 테스트 따로 해야 하는 불편함을 없애기 위해 방법을 찾다 가상 웹 서버만 별도로 설정하면 된다는 결론에 도달 했습니다.
가상 웹 서버의 경로는 아래와 같습니다.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\WebDev.WebServer.EXE
기본적으로 VS에서 실행하는 경우 아래와 같이 가상 디렉터리로 잡히기 때문에 경로설정에 문제가 될 경우도 있습니다.

Visual Studio 2005 가상웹서버 마음대로 설정하기

그럼 이 가상경로를 제거해보도록 하죠. 아래 그림은 가상 웹 서버의 사용법 도움말입니다.

Visual Studio 2005 가상웹서버 마음대로 설정하기

위 도움말을 참고해 우리 프로젝트를 실행을 시켜보도록 하겠습니다.

실행창에서

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\WebDev.WebServer.EXE /port:8080 /path:"D:\Web"
요렇게 실행 하면 콘솔 창이 열리면서 아래와 같이 가상 웹 서버가 설정되는 것을 확인 할 수 있습니다.
Visual Studio 2005 가상웹서버 마음대로 설정하기

이제 VS 프로젝트 속성에서 아래와 같이 설정하면 해당 웹 서버에 디버깅 프로세스를 연결합니다.

Visual Studio 2005 가상웹서버 마음대로 설정하기

프로젝트 속성페이지를 열고, 시작옵션을 클릭합니다.
기본적으로 "기본 웹 서버 사용"이라고 되어있지만, 이 부분을 "사용자 지정서버사용"으로 옵션을 변경한 후 위에서 설정한 가상 웹 서버의 경로를 입력 해주면 끝 입니다.
그럼 이제부터 루트에서 시작되는 웹 프로젝트를 마음 것 개발 할 수 있습니다.




출처
http://wiz.pe.kr/142
Posted by 굿데이
2009. 2. 26. 14:57
오랜만에 업그레이드 버전을 내놓습니다.
이 웹하드 이름은 mywebhard 입니다. 
이젠 어느정도 쓸만해 진거 같습니다. 그러나 역시 디자인은 패스~~~ ^^;;


사용방법
1. 원하는 디렉토리안에 해당 소스를 복사한다.
2. fileroot를 쓰기읽기 권한을 준다.
3. config디렉토리 안에 createdb.sql 파일을 실행한다.
4. config디렉토리의 config.php에 자신의 mysql서버에 맞게 DB설정을 수정한다.
5. admin/1111 로그인할수 있다.


이번 v0.6 에서 추가/변경사항
1. 회원관리기능 추가
2. 대용량파일 업로드시 스크립트 오류 수정
3. 디렉토리 트리 ajax로 바꿈
4. 디스크 용량체크


다음버전에 추가사항
1. 업로드 용량제한
2. 회원별 디렉토리 공유기능


Posted by 굿데이
2009. 2. 4. 15:38

기존 원본에서는 한글폴더에 파일을 업로드하거나 다운로드가 불가능 했습니다.

물론 한글파일명의 파일로 업/다운로드 불가능했었는데..

이 파일 압축을 풀어서 기존소스에 덮어쓰기 하시면 대부분의 한글문제는 해결됩니다.

단, 폴더 모든음악듣기는 플래시플레이어의 문제이므로 실행이 안됩니다.


출처는 네이버 나스까페에서 가져왔습니다.
http://cafe.naver.com/networkhard

파일다운받기



Posted by 굿데이
2009. 2. 3. 10:49
개발이 쉽지가 않아서 미완성 소스를 공개합니다.

시간이 부족해서 OTL

버전은 0.5  입니다.

정식버전 1.0이 될때까지는 꾸준히 개발할 생각입니다.

이소스는 완전 무료이며 무한정 배포 가능합니다. ^^;;
(쓰실분이나 있으시려나...)

이웹하드 프로그램은 DNS-323에 사용하려 개발했습니다.

알고 계신분은 아시겠지만 이장비 성능이 좋지 않아서 성능에 촛점을 맞추어 개발하고 있습니다.


사용환경
OS: LINUX, Unix 계열 UTF-8환경

사용방법
1. 원하는 곳에 압축을 풀어놓습니다.
2. fileroot 디렉토리에 쓰기읽기 기능을 줍니다.

이버전은 크게 세가지 기능이 미흡하거나 구현이 안되어 있습니다.
1. 회원관리 기능이 없습니다.
2. 파일 업로드시 일정 시간마다 스크립트 경고창이 뜹니다.
3. 디자인이 전혀 되어 있지 않습니다. 알아서 디자인 입혀 쓰셔야 합니다.
(앞으로도 디자인은 크게 신경 안쓰려고 합니다.)

앞으로 구현할 기능
1. 회원가입 및 회원관리(MySQL 사용)
2. 파일업로드 컴포넌트 수정(또는 새로개발)
3. 파일다운로드 컴포넌트(이어받기 가능)
4. 사용자별 디렉토리 공유
5. 썸네일 기능

Posted by 굿데이