'WebPage'에 해당되는 글 13건

  1. 2012.10.12 jsp (test)
  2. 2012.10.04 JSP 홈페이지
  3. 2012.06.11 로그인 소스 분석
  4. 2012.04.03 main.php/insert.php
  5. 2012.03.02 Active Server Page
  6. 2012.03.02 액티브 서버 페이지
  7. 2012.02.08 ASP(Active Server Pages)
  8. 2012.02.07 jsp전체적인 환경설정 및 구동방법
프로그램/web page2012. 10. 12. 14:35
index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<%@ include file="frame/info.jsp" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>TEST</title>

</head>

<body>

<table cellpadding="2" cellspacing="2" border="1" width="500">

 <tr>

  <td colspan="2" height="50" align="right" valign="bottom">

  <%@ include file="frame/top.jsp" %>

  </td>

 </tr>

 <tr>

   <td  width="100" valign="top">

   <%@ include file="frame/menu.jsp" %>

  

  </td>

    <td width="450"  height="120" valign="top" align="center">

   <%@ include file="frame/main.jsp" %>


  </td>

 </tr>

 <tr>

  <td colspan="2" height="50" align="center">

   <jsp:include page="frame/bottom.jsp"/>

  </td>

 </tr>

</table>

</body>

</html>


---------------------------------------------------

info.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<%@ page import="java.util.*"%>

<%@ page import="test.test"%>


<%

String[][] menu = {{"A""B","C"},{"D""E"},{"F","G","H""I"},{"J""K","L"}};


String[] top = { "M""N","O""P" };


Random rr = new Random(2);

ArrayList<test> list = new ArrayList<test>();


/* for (int i = 0; i < 15; i++) {

list.add(new attribute_student("" + i, i % (top.length),

(int) (Math.random() * menu.length), (int) (Math

.random() * 100), (int) (Math.random() * 100),

(int) (Math.random() * 100)));

} */

//생성자에 점수를 넣고 어레이리스트에 넣어서 돌린다.

for (int i = 0; i < 15; i++) {

list.add(new test("name" + i, rr.nextInt(top.length),

rr.nextInt(menu.length), (int) (Math

.random() * 100), (int) (Math.random() * 100),

(int) (Math.random() * 100)));

}


String main = request.getParameter("main");

if (main == null || main.equals(""))

main = "0";


String menu_str = request.getParameter("top");

if (menu_str == null || menu_str.equals(""))

menu_str = "0";


int main_num = Integer.parseInt(main);

int menu_num = Integer.parseInt(menu_str);


%>



---------------------------------------

main.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>


<table border="1" cellpadding="2">

<tr>

<td>광고</td>

<td>홍보</td>

<td>이름</td>

<td>메일</td>

<td>회원</td>

<td>가입</td>

<td>검색</td>

<td>로그인</td>

<td>여행</td>

</tr>


<% 

int cnt = 0;

 for(int i = 0 ; i< list.size(); i++){

test st = list.get(i);

if(st.exam==menu_num && st.ban==main_num){

cnt++;

%>

<tr>

<td><%=st.exam %></td>

<td><%=st.ban %></td>

<td><%=st.name %></td>

<td><%=st.kor %></td>

<td><%=st.eng %></td>

<td><%=st.math %></td>

<td><%=st.sum %></td>

<td><%=st.avg %></td>

<td><%=st.grade %></td>

</tr>

<%}

 }

 

  if(cnt == 0 ){

  %>

  <tr>

  <td colspan="9">데어터 없다.</td>

  </tr>

  <%

  }


%>

</table>


------------------------------------

menu.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

    

<table>

<% for(int i=0;i<menu[menu_num].length;i++) {%>

 <tr>

  <td>

   <href="?main=<%=i%>&top=<%=menu_str%>"><%=menu[menu_num][i] %></a>

  </td>

 </tr>

 

 <% } %>

</table>

---------------------------------------




top.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<%



 for(int i=0;i<top.length;i++)

 {

  out.println(

    "<a href='?top="+i+"'>"+top[i]+"</a>"

    

    );

 }


%>

'프로그램 > web page' 카테고리의 다른 글

JSP 홈페이지  (0) 2012.10.04
로그인 소스 분석  (0) 2012.06.11
main.php/insert.php  (0) 2012.04.03
Active Server Page  (0) 2012.03.02
액티브 서버 페이지  (0) 2012.03.02
ASP(Active Server Pages)  (0) 2012.02.08
jsp전체적인 환경설정 및 구동방법  (0) 2012.02.07
PHP 설명  (0) 2011.06.19
Application 객체  (0) 2011.04.17
데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
Posted by wrnly
프로그램/web page2012. 10. 4. 22:26

새로 웹 프로젝트를 만들고

[new] - [project] - [web] - [dynamic web project] 생성
이름을 myHome 이라 주었다.

이어서 [webcontent] - [new] - [JSP file] 생성
메인화면을 보여주기 위해 main.jsp 라 주었다.

기본적으로 웹페이지를 생성하면 

 


의 메뉴를 누르면 안의 내용만 변화하고 기본 프레임은 변하지 않는것을 볼 수 있다.
이 때 

<%@ include file = "파일명" %>  -> 인클루드 지시어

ex) <%@ include file = "b,jsp" %> 라고 사용하면 b.jsp 소스파일이 안에 그대로 들어가 실행된다.

   --> 템플릿 페이지를 생성할때 쓰임



인클루드 지시어를 쓰는데 일단은 main.jsp에 이같이 소스를 집어넣고 실행해보자.

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
    
<html>
<head>
<title>홈페이지</title>
</head>
<body>
<!-- 테이블만들기 -->
<table border=1 width=800 height=600>
<tr height=10%> <!-- 전체를 3등분이아니라 위아래는 좁게 가운대는 넓게 유동적으로 하기위해서 -->
<td colspan=2 align="center">
<a href="main.jsp">main</a>|
로그인|
회원가입|
<a href="company.jsp">회사소개</a>
</td>
</tr>
<tr height=80%>
<td width=15%>tree/view 메세지</td>
<td width=85%>
<h2>저희 홈페이지에 오신것을 환영합니다.</h2>
<ul>
<li><a href="student.jsp">기본관리페이지</a></li>
</ul>
</td>
</tr>
<tr height=10%>
<td colspan=2 align="center">
회사규약
</td>
</tr>
</table>
</body>
</html>

그러면 이처럼 굉장히 마음에 안드는 화면이 나타날 것이다.

더구나 이동할때 페이지 전체가 이동하는 것을 볼 수 있다.




하지만 main.jsp를 인클루드 지시어를 활용해서 다시 작성해보자.

추가로 top.jsp와 bottom.jsp,company 파일을 생성한다.


main.jsp)

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

 <%@ include file="top.jsp"%>

<h2>저희 홈페이지에 오신것을 환영합니다.</h2>

<ul>

<li><a href="student.jsp">기본관리페이지</a></li>

</ul>

<%@ include file="bottom.jsp"%>


top.jsp)

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<html>

<head>

<title>홈페이지</title>

</head>

<body>

<!-- 테이블만들기 -->

<table border=1 width=800 height=600>

<tr height=10%> <!-- 전체를 3등분이아니라 위아래는 좁게 가운대는 넓게 유동적으로 하기위해서 -->

<td colspan=2 align="center">

<a href="main.jsp">main</a>|로그인|회원가입|

<a href="company.jsp">회사소개</a>

</td>

</tr>

<tr height=80%>

<td width=15%>tree/view 메세지</td>

<td width=85%>


bottom.jsp)

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

</td>

</tr>

<tr height=10%>

<td colspan=2 align="center">

회사규약

</td>

</tr>

</table>

</body>

</html>



company.jsp)

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<%@ include file="top.jsp" %>

<h3>안녕하세요 블레이드앤소울 회사입니다. 컨텐츠없어서 죽겠죠? 미치겠죠?</h3>

<%@include file="bottom.jsp" %>



이렇게 작성하고


main.jsp에서 실행을 해보면은 


<그림생략>


* 템플릿페이지 : 링크걸기 <a href=""> </a>를 통해 

  주소가 바뀌지않고 페이지만 이동 


역시 똑같이 이와같은 창이 출력되고, 회사소개를 누르면

페이지가 전체이동하는것이 아니라 top.jsp, bottom,jsp에서 지정해 두었던 기본 프레임을 유지하면서

안의 내용만 변화하는 것을 볼 수 있다.


이제 인클루드 지시자의 쓰임을 확실히 알았을 것이다.



다음으로 main 페이지에서 "기본관리페이지"를 클릭하면 이동하고, 데이터관리를 하게끔 만들어보자.


먼저, mysql에 기본 table를 생성한다.


create table student (id varchar(10), name varchar(10), cname varchar(20));


 


마찬가지로 기본관리를 하기위해 일반.jsp 파일을 생성한다

등록, 삭제, 찾기, 목록보여주기 순으로 간단하게 작성해보자.


student.jsp)

<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<!-- student.jsp -->

<html>

<head>

<title>기본관리</title>

</head>

<body>

<div align="center">

<hr color="green" width=400>

<h2>기본 등 록 페 이 지</h2>

<hr color="green" width=400>

<form name="insert" action="insert.jsp" method="post">

<table border=1>

<tr>

<td align="center">

아이디 : <input type="text" name="id"><br>

기본명 : <input type="text" name="name"><br>

기본명 : <input type="text" name="cname"><br>

<input type="submit" value="입력">

<input type="reset" value="취소">

</td>

</tr>

</table>

</form>

<hr color="green" width=400>

<h2>기본 삭 제 페 이 지</h2>

<hr color="green" width=400>

<form name="f" action="delete.jsp" method="post">

<table border=1>

<tr>

<td align="center">

아이디 : <input type="text" name="id"> 

<input type="submit" value="삭제">

<input type="reset" value="취소">

  </td>

</tr>

</table>

</form>


<hr color="green" width=400>

<h2>기본 찾 기 페 이 지</h2>

<hr color="green" width=400>

<form name="f" action="find.jsp" method="post">

<table border=1>

<tr>

<td align="center">

기본명 : <input type="text" name="name"> 

<input type="submit" value="찾기">

<input type="reset" value="취소">

  </td>

</tr>

</table>

</form>

<hr color="green" width=400>

<h2>기본 목록보기</h2>

<hr color="green" width=400>

<form name="f" action="list.jsp" method="post">

<table border=1>

<tr>

<td align="center">

<input type="submit" value="목록보기">

  </td>

</tr>

</table>

</form>

</div>

</body>

</html>



<그림생략>

 

 

이와같은 페이지가 뜰 것이다.



기본 데이터를 등록/삽입해보자.

insert.jsp 파일생성 -> jdbc 연결부분을 잘 고찰했다면 이해도가 빠르다


작성순서


1. 사용자가 입력한 id, name, cname을 받아온다.

2. 유효성 검사를 한다.

3. DB에 연결하여 쿼리문을 전송한다.

4. 그 결과값을 받아와서 성공하면 list.jsp(목록보기)로 보내고 실패하면 student.jsp(관리입력부분)으로 보낸다.

5. DB와 연결한 객체를 닫아준다.


insert.jsp) 


<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>

<%@ page import="java.sql.*" %>

<!-- insert.jsp -->

<% //1번

request.setCharacterEncoding("EUC-KR");  //한글이 안깨지게

String id = request.getParameter("id");

String name = request.getParameter("name");

String cname = request.getParameter("cname");

//2번

if (id==null || name==null || cname==null || id.trim().equals("") ||

name.trim().equals("") || cname.trim().equals(""))

{

%>

<script type="text/javascript">

alert("데이타는 모두 입력해 주셔야 합니다.!!");

history.back(); //뒤로가기

</script>

<% return;

}

%>


<% //3번

Class.forName("org.gjt.mm.mysql.Driver");

String url = "jdbc:mysql://127.0.0.1:3306/jsp0119";

String user = "root";

String pass = "0575";

Connection con = DriverManager.getConnection(url, user, pass);

String sql = "insert into student value(?,?,?)";

PreparedStatement ps = con.prepareStatement(sql);

ps.setString(1, id);

ps.setString(2, name);

ps.setString(3, cname);

int result = ps.executeUpdate();

//4번

if (result>0) 

{

%>

<script type="text/javascript">

alert("기본추가에 성공!! 기본 전체보기 페이지로 이동합니다.");

location.href="list.jsp";

</script>

<% }

else

{

%>

<script type="text/javascript">

alert("기본 등록 실패. 기본관리페이지로 이동!!");

location.href="student.jsp";

</script>

<% }

%>


<%//5번

ps.close();

con.close();

%>

 


소스설명)

   

하나하나 보면은 

sql 쿼리문을 쓸 것이기 때문에 <%@ page import="java.sql.*" %> -> 페이지지시어

으로 써준다.


한글받아오는데 깨지지 않게 하기위해서

request.setCharacterEncoding("EUC-KR");

구문을 넣어준다.


student 테이블에 입력한 필드명을 문자열 객체로 가져온다.


String id = request.getParameter("id");

String name = request.getParameter("name");

String cname = request.getParameter("cname");


여기까지가 1. 사용자가 입력한 id, name, cname을 받아온다. 에 해당한다.


2번. 유효성 검사를 시행하는데, 각각의 필드값이 공백이거나 널값이면 데이터를 넘겨주지않고

다시 입력하게끔 한다.


if (id==null || name==null || cname==null || id.trim().equals("") ||

name.trim().equals("") || cname.trim().equals(""))

{

%>

<script type="text/javascript">

alert("데이타는 모두 입력해 주셔야 합니다.!!");

history.back(); //뒤로가기

</script>

<%

return;

}



** 뒤로가기 **

1번. 자바스트립트에서는

<script type="text/javascript">

history.back(); //뒤로가기

</script>

2번. 자바스크립트에서는

<script type="text/javascript">

location.href="이동경로페이지.jsp";

</script>


3번. 자바코드에서는

 if(name==null|| name.trim().equals("")) 

 { 

 response.sendRedirect("이동경로페이지.jsp"); 

 return; 

 }


요런식으로 써주면된다.


다시 돌아와서

3번. DB에 연결하여 쿼리문을 전송한다. -> 이 부분은 지난 jdbc에서 했던 작업과 동일하다.


//3번

Class.forName("org.gjt.mm.mysql.Driver");

String url = "jdbc:mysql://127.0.0.1:3306/jsp0119";

String user = "root";

String pass = "0575";

Connection con = DriverManager.getConnection(url, user, pass);

String sql = "insert into student value(?,?,?)";

PreparedStatement ps = con.prepareStatement(sql);

ps.setString(1, id);

ps.setString(2, name);

ps.setString(3, cname);

int result = ps.executeUpdate();


4번. 그 결과값을 받아와서 성공하면 list.jsp로 보내고 실패하면 student.jsp로 보낸다.


//4번

if (result>0) 

{

%>

<script type="text/javascript">

alert("기본 등록 성공. 기본목록페이지로 이동!!");

location.href="list.jsp";

</script>

<%

}

else 

{

%>

<script type="text/javascript">

alert("기본 등록 실패. 기본관리페이지로 이동!!");

location.href="student.jsp";

</script>

<%

}

%>


<% %> 안은 자바소스, 밖은 html소스 이유는 -> 

<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>



5번. DB와 연결한 객체를 닫아준다.


<% //5번

ps.close();

con.close();

%>


요렇게 ResultSet, Connection 객체를 닫아주면 되겠다.

아직은 모두 입력후 [입력]버튼을 눌러도 오류가 난다. 목록을 보여주는 list.jsp 를 만들지 않았기 때문이다.


list.jsp)


<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR" import="java.sql.*"%>

<%@ page import="java.sql.*" %>  

<html>

<head>

<title>기본목록</title>

</head>

<body>

<div align="center">

<hr color="green" width=400>

<h2>기본 목 록 보 기</h2>

<hr color="green" width=400>

<table border=1 width=400>

<tr>

<th>아이디</th>

<th>기본명</th>

<th>기본명</th>

</tr>

<%

Class.forName("org.gjt.mm.mysql.Driver");

String url = "jdbc:mysql://127.0.0.1:3306/jsp0119";

String user = "root";

String pass = "0575";

Connection con = DriverManager.getConnection(url, user, pass);

String sql = "select * from 기본";

PreparedStatement ps = con.prepareStatement(sql);

ResultSet rs = ps.executeQuery();

while(rs.next()){

String id = rs.getString(1);

String name = rs.getString(2);

String cname = rs.getString(3);

%>

<tr>

<td><%=id%></td>

<td><%=name%></td>

<td><%=cname%></td>

</tr>

<% } %>

</table>

</div>

</body>

</html>

<%

rs.close();

ps.close();

con.close();

%>



여기까지 파일을 만들고 기본.jsp에서 실행하여 데이터를 입력하면

목록페이지(list.jsp)로 이동되어 이렇게 나타내어 지게된다.



 <그림생략>


만일 데이터를 다 입력하지 않고 [입력]버튼을 누르면?


오류메세지출력 후 다시 처음 입력페이지(student.jsp)로 돌아가게끔


 


또한 목록보기도 list.jsp와 연결되어 현재 등록된 db상태를 볼 수 있게 했다.



삭제하기를 구현해보자.

"기본명" 기준으로 삭제를 진행해 보겠다.



delete.jsp)  __ <1차>

<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>

<%@ page import="java.sql.*" %>  

<!-- delete.jsp -->

<%

request.setCharacterEncoding("EUC-KR");

String name = request.getParameter("name");

if (name == null || name.trim().equals("")){

response.sendRedirect("student.jsp");

return;

}

Class.forName("org.gjt.mm.mysql.Driver");

String url = "jdbc:mysql://127.0.0.1:3306/jsp0119";

String user = "root";

String pass = "0575";

Connection con = DriverManager.getConnection(url, user, pass);

String sql = "delete from student where name=?";

PreparedStatement ps = con.prepareStatement(sql);

ps.setString(1, name);

int result = ps.executeUpdate();

if (result>0)

{

%>

<script type="text/javascript">

alert("기본삭제 성공!!");

location.href="list.jsp";

</script>

<%

}

else

{

%>

<script type="text/javascript">

alert("삭제 실패");

location.href="student.jsp";

</script>

<%

}

%>


<%

ps.close();

con.close();

%>




 

삭제에 성공하면 성공 메세지가 출력이 되고, 만약에 잘못된 값을 입력하거나 데이터가 일치하지 않으면

위와같은 alter 메세지를 출력한다.


또한 아래와 같이 데이터가 삭제되어 그 결과를 보여준다 (list.jsp) 


<그림생략>

 


찾기를 구현해보자.

역시 "기본명(name)" 기준으로 찾기를 진행해보겠다.


find.jsp)


<%@ page language="java" contentType="text/html; charset=EUC-KR"

    pageEncoding="EUC-KR"%>

<%@ page import="java.sql.*"%>

<!--  find  -->

<%

  request.setCharacterEncoding("EUC-KR");

String name = request.getParameter("name");


if(name==null || name.trim().equals(""))

{

response.sendRedirect("student.jsp");

return;

}//if-------------


Class.forName("org.gjt.mm.mysql.Driver");

String url="jdbc:mysql://127.0.0.1:3306/jsp0119";

String user="root";

String pass="0575";

Connection con=DriverManager.getConnection(url,user,pass);

String sql="SELECT count(*) FROM student WHERE name=?";

PreparedStatement ps=con.prepareStatement(sql);

ps.setString(1,name);

ResultSet rs = ps.executeQuery();

rs.next();

int count= rs.getInt(1);

rs.close();

ps.close();

%>


<body>

<div align=center>

<hr color=navy width=400>

<h2>기본 찾 아 보 기</h2>

<hr color=navy width=400>

<table width=400 border=1>

<tr bgcolor=#CCFF00>

<th width=100>아이디</th>

<th width=100>기본명</th>

<th width=200>기본명</th>

</tr>

<!-- ----------------------------- -->

<% 

if(count>0)

{

String sql2="SELECT * FROM student WHERE name=?";

ps = con.prepareStatement(sql2);

ps.setString(1, name);

rs = ps.executeQuery();

while(rs.next())

{

String id = rs.getString(1);

String name2 = rs.getString(2);

String cname = rs.getString(3);

%>

<tr>

<td align="center"><%=id%></td>

<td align="center"><%=name2%></td>

<td align="center"><%=cname%></td>

</tr>

<%

}//while------

}

else

{

out.println("<tr><td colspan=3>");

out.println("<b>"+name+"정보는 없습니다.</b>");

out.println("</td></tr>");

}

%>

<!-- ----------------------------- -->


</table>

</div>

</body>


<% //5. 연결된 자원 반납.

rs.close();

ps.close();

con.close();

%>




 



검색을 하면 이와같은 화면이 출력된다.



<그림생략>

 


검색하는 값이 일치하지 않으면 요렇게~!


나머지는 insert,delete와 비슷하고 


String sql="SELECT count(*) FROM student WHERE name=?";

PreparedStatement ps=con.prepareStatement(sql);

ps.setString(1,name);

ResultSet rs = ps.executeQuery();

rs.next();

int count= rs.getInt(1);

rs.close();

ps.close();



왜 sql구문을 count(*)를 썻느냐?

String sql="SELECT count(*) FROM student WHERE name=?";

식으로 작성을 하면 name에 따라 조건에 부합한 레코드갯수가 몇개인지를 리턴해준다.


 

예를들면) 이런식으로 select 구문을 시행하면 rows(행)의 갯수가 출력되는 것을 볼 수 있다.


sql구문을 db에보내고 그 db에 대한 값을 받아와 


if문을 통해 count값 비교한다. count가 1 이상이면 데이터값이 있는거고

count가 0이면 데이터값이 없는것.



while문안에 들어간 구문은

<tr>

<td align="center"><%=id%></td>

<td align="center"><%=name2%></td>

<td align="center"><%=cname%></td>

</tr>


반복할때마다 한 행이 생성되면서 해당값이 출력되도록 하였다.


만약 데이터값이 없으면 colspan으로 열을 합치고 해당하는 검색어를 없다표시.

else

{

out.println("<tr><td colspan=3>");

out.println("<b>"+name+"책정보는 없습니다.</b>");

out.println("</td></tr>");

}


'프로그램 > web page' 카테고리의 다른 글

jsp (test)  (0) 2012.10.12
로그인 소스 분석  (0) 2012.06.11
main.php/insert.php  (0) 2012.04.03
Active Server Page  (0) 2012.03.02
액티브 서버 페이지  (0) 2012.03.02
ASP(Active Server Pages)  (0) 2012.02.08
jsp전체적인 환경설정 및 구동방법  (0) 2012.02.07
PHP 설명  (0) 2011.06.19
Application 객체  (0) 2011.04.17
데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
Posted by wrnly
프로그램/web page2012. 6. 11. 18:12

로그인 소스 분석

 

Login.asp

<table width="200" border="1" cellpadding="3" cellspacing="0" align="center" bordercolorlight="#3366FF" bordercolordark="#FFFFFF">
 <tr valign="bottom">

   <td colspan="2" height="20" bgcolor="#3366FF">
       <div align="center"><b><font color="#FFFFFF">로그인</font></b></div> 
   </td>

 </tr> 
<form method="post" name="login" action="login_end.asp"> ---(3)
 <tr> 
   <td width="51"> <div align="right"><font size="2">아이디</font></div> </td> 
   <td width="88"> 
       <input type="text" name="r_id" size="10" maxlength="10"> ---(1)
   </td>

 </tr>
 <tr>
   <td width="51"> <div align="right"><font size="2">암호</font></div> </td> 
   <td width="88">
       <input type="password" name="r_passwd" size="10" maxlength="10"> ---(2)
   </td>

 </tr> 
 <tr>
 <td colspan="2"> 
    <div align="center">
       <input type="submit" name="Submit" value="로그인"> ---(5)

       <input type="button" name="Butt" value="회원가입" onclick="location='member.asp'"> 
---(6)
    </div> 
 </td>

 </tr> 
</form> ---(4)
</table>

(1)(2) 아이디를 입력받는 필드명 r_id , 패스워드를 입력받는 필드 r_passwd
(3)(4) Submit 시에 입력 받을 값과 함께 이동할 페이지(login_end.asp) 설정
(5) Type 이 Submit 인 버튼 
(6) 일반 버튼 , onclick 이벤트 사용 , 클릭시 회원가입(member.asp)으로 이동

Login_end.asp
<!--#include file=dns.txt --> ---(1)

<% 
response.expires=0 ---(2)

response.buffer=true
 

t_id=request.form("r_id") ---(3)

t_passwd=request.form("r_passwd") 


Set Conn = Server.CreateObject("ADODB.Connection") ---(4)
Conn.Open dns,uid,pwd 


sql = "select m_id, m_name from member where m_id = '" & t_id & "' and m_passwd = '" & t_passwd & "'" 

set rs=Conn.Execute(sql) ---(5)

if rs.eof then ---(6)

rs.close 
Conn.close 
set rs=nothing 
set Conn=nothing 

response.redirect "login.asp" ---(7) 

else
 

session("m_id")=rs("m_id") 
---(8) 
session("m_name")=rs("m_name")
session("ip")=request.ServerVariables("REMOTE_ADDR") 


rs.close
Conn.close 
set rs=nothing 
set Conn=nothing 


response.redirect "main.asp" ---(9) 

end if 
%>

(1) dns정보 있는 파일 인클루드 (4)에서 사용 .. dns="mem_db" , uid="" , pwd=""
(2) 바로 새로운 캐쉬 작성(새로고침) , 버퍼링 설정 
(3) login.asp 에서 입력한 값을 넘겨 받음
(4) 데이터베이스 컨넥션 연결
(5) 질의 실행 (앞에서 입력한 아이디/패스 와 일치하는 값이 디비에 존재 하는지 질의함)
(6) 질의 결과가 하나도 없다면 (7)을 실행, 있으면 (8)(9)를 실행
(7) 로그인 화면으로 되돌아 감
(8) 나중에 회원 판별시 사용할 세션 값 할당
(9) 메인 화면으로 이동함


'프로그램 > web page' 카테고리의 다른 글

jsp (test)  (0) 2012.10.12
JSP 홈페이지  (0) 2012.10.04
main.php/insert.php  (0) 2012.04.03
Active Server Page  (0) 2012.03.02
액티브 서버 페이지  (0) 2012.03.02
ASP(Active Server Pages)  (0) 2012.02.08
jsp전체적인 환경설정 및 구동방법  (0) 2012.02.07
PHP 설명  (0) 2011.06.19
Application 객체  (0) 2011.04.17
데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
Posted by wrnly
프로그램/web page2012. 4. 3. 19:29

main.php



<?php
// DB연결 1 : 기본설정
$conn = mysql_connect("localhost","root","apmsetup") or die("접속할 수 없습니다 : " . mysql_error());
echo "[CONNECTION SUCCESS]<br><br>";

// DB연결 2 : SPACE 설정
mysql_select_db("kimminjoo") or die("데이터베이스를 선택할 수 없습니다.");

// SQL SELECT 쿼리 실행
$query = "SELECT * FROM URL_INFO";
$result = mysql_query($query) or die("쿼리 실패 : " . mysql_error());

?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
 <head>
  <title>FLYMATE</title>
  <script type="text/javascript">
   function insert_url() {

    document.frm.action = "./insert.php";
    document.frm.target = "insert_frame";
    document.frm.submit();
   }
  </script>
 </head>
 <body>
  <form method="post" name="frm">
   http://blog.naver.com/system3?Redirect=Log&logNo=10004178439<br><br>
   URL : <input type="text" name="url" /><br />
   URL_NAME : <input type="text" name="url_name" /><input type="button" value="submit" onclick="insert_url();" /><br /><br />
  
   <?php
    /* HTML로 결과 출력하기 1 [START] */
    echo "<table BORDER='1'>\n";
       echo "\t<tr>\n";
       echo "\t\t<td>[IDX]</td>\n";
       echo "\t\t<td>[URL]</td>\n";
       echo "\t\t<td>[URL_NAME]</td>\n";
       echo "\t</tr>\n";
    while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
       echo "\t<tr>\n";
       echo "\t\t<td>$line[IDX]</td>\n";
       echo "\t\t<td>$line[URL]</td>\n";
       echo "\t\t<td>$line[URL_NAME]</td>\n";
       echo "\t</tr>\n";
    }
    echo "</table>\n";
    /* HTML로 결과 출력하기 1 [END] */

    /* HTML로 결과 출력하기 2 [START] */
    echo "<table>\n";
    while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
       echo "\t<tr>\n";
       foreach ($line as $col_value) {
           echo "\t\t<td>$col_value</td>\n";
       }
       echo "\t</tr>\n";
    }
    echo "</table>\n";
    /* HTML로 결과 출력하기 [END] */

    /* 결과셋 해제하기 */
    mysql_free_result($result);

    /* 접속 종료 */
    mysql_close($conn);
   ?>
   <iframe name="insert_frame" /> <!-- style="width:0px; height:0px; display: none;" -->
  </form>
 </body>
</html>






<?php
echo "[START]<br/>";

$URL = $_REQUEST['url'];
$URL_NAME = $_REQUEST['url_name'];
echo "URL $URL";
echo "URL_NAME $URL_NAME";

// DB연결
$conn = mysql_connect("localhost","root","apmsetup");

if (!$conn) {
 die('Could not connect: ' . mysql_error());
} else {
 mysql_select_db("kimminjoo", $conn);
 mysql_query("INSERT INTO URL_INFO (URL, URL_NAME) VALUES ('$URL', '$URL_NAME') ");
}

// DB해제
mysql_close($conn);

echo "[END]";
?>

 

'프로그램 > web page' 카테고리의 다른 글

jsp (test)  (0) 2012.10.12
JSP 홈페이지  (0) 2012.10.04
로그인 소스 분석  (0) 2012.06.11
Active Server Page  (0) 2012.03.02
액티브 서버 페이지  (0) 2012.03.02
ASP(Active Server Pages)  (0) 2012.02.08
jsp전체적인 환경설정 및 구동방법  (0) 2012.02.07
PHP 설명  (0) 2011.06.19
Application 객체  (0) 2011.04.17
데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
Posted by wrnly
프로그램/web page2012. 3. 2. 14:15

ASP는 Active Server Page 의 약자로 웹에서 돌아가는 프로그램(스크립트)를 말합니다. 즉 사용자가 웹서버에 요구한 사항을 웹서버가 처리하여 사용자에게 결과를 보내어 주는데 이 처리하는 과정의 프로그램이라 보시면 됩니다.

ASP는 하나 이상의 스크립트 (작은 내장 프로그램)를 담은 HTML 페이지로 사용자에게 보내지기 전에 마이크로소프트 웹 서버에서 처리된다. ASP는 사용자에게 웹페이지를 만들어 제공하기 위해 서버에서 관련 프로그램이 모두 수행되는 SSI나 CGI 애플리케이션과 꽤 유사하다. 대개, 서버의 웹페이지 스크립트는 사용자의 요구에 따라 데이터베이스에 접속한 다음, 그 결과를 토대로 하여 요구자에게 보내기 전에 순간적으로 웹 페이지를 만들거나 특화하게 된다.

ASP는 마이크로소프트 IIS 만의 특징이지만, 서버측 스크립트가 평범한 HTML 페이지를 만들어 주기 때문에 거의 모든 브라우저에서 무리없이 사용될 수 있다. ASP 파일은 HTML 파일 내에 VBScript나 JScript가 포함되도록 작성한 다음 파일 확장자를 ".asp"로 개명하면 된다. 마이크로소프트에서는 - 선택의 여지가 있다면 -, 클라이언트쪽 스크립트보다는 서버쪽 ASP를 사용할 것을 추천한다. 왜냐하면 서버쪽 스크립트가 HTML 페이지를 쉽게 잘 보이게 하기 때문인데, 클라이언트쪽 스크립트 (예를 들어 자바 스크립트)는 오래된 브라우저의 경우 의도한 대로 동작하지 않을 수도 있다.

ASP는 하나 이상의 스크립트를 담은 일종의 HTML 페이지로서 사용자에게 보내지기 전에 일단 웹 서버에서 처리 과정을 거치게 됩니다. ASP파일은 일반 text파일로서 메모장 등에서 생성되는 파일과 같은 성질을 가지며 확장자는 asp입니다. 따라서 메모장에서 작성한 다음 확장자 .asp로 저장을 하면 됩니다.

asp파일에는 HTML 태그와 JavaScript나 VBScript!등의 스크립트 코드, 그리고 ASP 코드 등을 섞어 사용할 수 있습니다. JavaScript나 VBScript! 등의 스크립트 코드는 <SCRIPT>,</SCRIPT>태그 사이에 놓입니다.
ASP 코드는 <% ~ %>사이에 놓입니다.


'프로그램 > web page' 카테고리의 다른 글

jsp (test)  (0) 2012.10.12
JSP 홈페이지  (0) 2012.10.04
로그인 소스 분석  (0) 2012.06.11
main.php/insert.php  (0) 2012.04.03
액티브 서버 페이지  (0) 2012.03.02
ASP(Active Server Pages)  (0) 2012.02.08
jsp전체적인 환경설정 및 구동방법  (0) 2012.02.07
PHP 설명  (0) 2011.06.19
Application 객체  (0) 2011.04.17
데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
Posted by wrnly
프로그램/web page2012. 3. 2. 13:53

액티브 서버 페이지

액티브 서버 페이지(Active Server Page, 줄여서 ASP)는 마이크로소프트사에서 동적으로 웹페이지들을 생성하기 위해 개발한 서버 측 스크립트 엔진이다. 최초 버전은 Windows NT 4.0 옵션 팩(1998 상반기)에 포함하여 인터넷 정보 서비스(IIS)에 추가되는 식으로 릴리즈 하였고, 나중에 윈도우즈 서버(윈도우즈 2000 서버의 최초 릴리즈 이후로)의 무료 컴포넌트로 포함되었다. ASP.NET이 ASP를 대체하고 있다.

ASP 2.0은 6개의 내장 객체들을 제공한다: Application, ASPError, Request, Response, Server, Session. 예를 들어, Session은 페이지 간의 변수의 상태를 유지하는 쿠키 기반의 세션을 나타낸다. 동적 스크립팅 엔진의 컴포넌트 객체 모델(COM) 지원은 ASP 웹사이트들이 DLL들 같은 컴파일 된 라이브러리들을 함수처럼 접근 가능하게 해 준다.

목차

 [숨기기

[편집] 요약

.asp 파일 확장자를 가진 웹페이지는 ASP를 사용하지만, 몇개의 웹 사이트들은 보안 목적으로 스크립팅 언어를 숨기는 경우도 있다 (예를들면 더 일반적인 .htm 또는 .html 확장자를 사용하기). .aspx 확장자를 가진 페이지들은, ASP에서 서버측 스크립팅 보다 더 빠르고 강력하게 해주는, ( 마이크로소프트의 .NET 프레임웍에 기반한) ASP.NET으로 컴파일 되었고, 구동시에 해석 되지만; ASP.NET 페이지들은 여전히 일부 ASP 스크립팅을 포함하고 있을 것이다. ASP.NET의 도입은 원천 기술에 대해서는 오랜 ASP용어를 사용하였다.

프로그래머들은 대부분의 ASP페이지를 VBScript를 사용하여 작성하였지만, 그 외에도 동적 스크립팅 엔진은 @Language 지시문이나 <script language="language" runat="server"> 구문으로 선택하여 사용 할 수 있다. JScript(마이크로소프트가 구현한 ECMAScript)가 보통 사용가능한 다른 언어이다. PerlScript(Perl의 파생언어)와 다른 것들도 타사 제공 형태로 동적 스크립팅 엔진에 설치해서 사용 가능하다.

[편집] 이용 예

마이크로소프트의 액티브 스크립팅 표준과 호환되는 어떠한 스크립팅 언어라도 ASP에서 사용할 수 있다. 기본 스크립팅 언어(고전 ASP에서)는 VB스크립트이다.: 브라우저가 웹 서버에서 ASP 파일을 요청하면 서버는 프로세서를 호출하고, 프로세서는 요청된 파일을 읽고 스크립트 명령을 실행하여 결과를 웹페이지 형태로 브라우저에 전송한다.

  1. <html>
    
  2. <body>
    
  1. <% Response.Write "Hello World!" %>
    
  1. </body>
    
  2. </html>
    

더 단순한 형태로는 다음과 같다.

  1. <html>
    
  2. <body>
    
  1. <%= "Hello World!" %>
    
  1. </body>
    
  2. </html>
    

이 예는 "Hello World!"를 HTML 문서의 body로 출력한다.

여기에는 액세스 데이터베이스로 연결하는 방법에 대한 한 예가 있다.

  1. <%
    
  2.    Set oConn = Server.CreateObject("ADODB.Connection")
    
  3.         oConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("DB.mdb")
    
  4.       Set rsUsers = Server.CreateObject("ADODB.Recordset")
    
  5.        rsUsers.Open "SELECT UserID FROM Users", oConn,1,3
    
  6. %>
    

[편집] 같이 보기

[편집] 바깥 고리

'프로그램 > web page' 카테고리의 다른 글

jsp (test)  (0) 2012.10.12
JSP 홈페이지  (0) 2012.10.04
로그인 소스 분석  (0) 2012.06.11
main.php/insert.php  (0) 2012.04.03
Active Server Page  (0) 2012.03.02
ASP(Active Server Pages)  (0) 2012.02.08
jsp전체적인 환경설정 및 구동방법  (0) 2012.02.07
PHP 설명  (0) 2011.06.19
Application 객체  (0) 2011.04.17
데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
Posted by wrnly
프로그램/web page2012. 2. 8. 17:09

* ASP(Active Server Pages)

 

1. 액티브 서버에서 기본단위는 액티브 서버 페이지 파일입니다. 파일 확장자는 *.asp 입니다.

2. 액티브 서버 페이지는 크게 서버스크립트 영역과 HTML영역으로 나눕니다.

3. 서버스크립트 영역은 <% 로 열고 %>로 닫습니다.

4. 클라이언트로 전송되는 것은 서버스크립트를 실행한 결과인 HTML page 뿐입니다.

 

클라이언트가 HTML페이지를 요구했을때 서버는 요구한 HTML파일을 읽어서 클라이언트로 보내줍니다. 클라이언트에서는 이것을 전송받아서 브라우져로 보여줍니다.

 

만약 클라이언트가 요구한 것이 ASP파일이라면 파일을 읽어서 바로 보여주는것이 아니라 서버스크립트를 실행한 후에 결과물(HTML)만을 클라이언트에게 전송합니다.

 

ASP 서버 스크립트
클라이언트에서 보여지는 HTML

<html>

 

<% for i=3 to 5 %>

<font size=<%=i%>>

안녕하세요. <br>

</font>

<% next %>

 

</html>

<html>

 

<font size=3>

안녕하세요.<br>

</font>

<font size=4>

안녕하세요.<br>

</font>

<font size=5>

안녕하세요.<br>

</font>

 

</html>

 

* 주석처리

주석 처리된 부분은 스크립트나 코드로 인식하지 않고 단순히 참고 설명을 위한 용도입니다. ASP에서의 주석 처리는 ' 표시를 이용함.

 

ASP 주석 사용 예

<%

' 폰트 사이즈 변경하여 출력

%>

 

<html>

<% for i=3 to 5 %>

<font size=<%=i%>>

안녕하세요. <br>

</font>

<% next %>

 

</html>


'프로그램 > web page' 카테고리의 다른 글

JSP 홈페이지  (0) 2012.10.04
로그인 소스 분석  (0) 2012.06.11
main.php/insert.php  (0) 2012.04.03
Active Server Page  (0) 2012.03.02
액티브 서버 페이지  (0) 2012.03.02
jsp전체적인 환경설정 및 구동방법  (0) 2012.02.07
PHP 설명  (0) 2011.06.19
Application 객체  (0) 2011.04.17
데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
Session 객체  (0) 2011.03.04
Posted by wrnly
프로그램/web page2012. 2. 7. 14:49

 

자바 환경설정 다음 링크를 참고 하세요

http://blog.naver.com/enternow/120016885464   ---> 참고

 

이클립스 및 tomcat환경설정은 다음링크를 참고하세요

1. 자바 기본설정을 참고하여 java환경설정을 먼저 하세요 ^^;;

2. 스트럿츠2 프레임 워크 설치 (필요시)   ---> 우리는 사용해야 할것 같음
  - http://struts.apache.org/에서 Struts2.1.6 다운로드
  - 적당한 위치에 압축을 풉니다.

3. 웹 컨테이너 설치 (apache tomcat 6)
  - httP://tocat.apache.org ->다운로드 ->tomcat 6.x -> core: window server installer 다운로드
   (apache-tocat-6.0.20.exe)
  - 설치시 옵션은 변경하셔도 무방 설명을 쉽게 하기위해 기본옵션으로 설치하는것을로 가정합니다.
  - port : "8080" ----> 주소란에 포트명시하기 귀찮으면 그냥 80으로 해도 됨
  - username/pass 적당히
  - 내컴퓨터 -> 오른쪽 마우스 클릭 -> 속성-> 고급탭 환경변수 버튼 클릭
    . 시스템 변수 "CATALINA_HOME" 만들고
    . 톰켓 설치 폴더 경로를 입력  "C:\webserver\Tomcat 6.0"설정 
  - 웹브라우저에서
    . http://localhost:8080으로 확인 --> 고양이화면 뜨면 성공
    . http://localhost               --> 80번 포트로 설정할 경우 window iis서비스가 시작중에 있다면 중지해야함
  - j2ee환경설정
    . "C:\webserver\Tomcat 6.0\lib\servlet-api.jar" 파일을 "C:\Program Files\Java\jdk1.6.0_17\lib"  폴더에 복사
    . 내컴퓨터 -> 속성 -> 고급 -> 환경변수에 CLASSPATH에 ";%JAVA_HOME%\lib\servlet-api.jar" 추가
    . 재부팅  ---> 안정성을 위해

4. Eclipse
   - 적당한 폴더에 압축을 푸세요
   - 실행이 안될시에는 Eclipse 환경설정 파일(eclipse.ini)에 다음항목을 추가합니다.
   - 만약 다음항목이 추가되었는데도 실행이 안된다면 자바 설정을 다시 하고
     cmd창에서 java -version실행시켜 구동되는지 확인
     -vm
     C:\Program Files\Java\jdk1.6.0_17\bin

   - Window - Preferences - java - compiler compliance level -> 1.6 인지 확인
   - Window - Preferences - java -> Installed JREs 자바 런타임 환경 설정 경로 확인
     (기본설치를 했다면  "C:\Program Files\java\jre6" 면 정상)
   - Window - Preferences - General - appearance - colors and fonts - java - java Editor TextFont에서 폰트 설정
   - Window - Preferences - java - cose style - Formmatter - [New...] - eclipse[.....] -identation 탭 - Space only선택
   - Window - Preferences - General - Editors - Text Editors에서 Show line number 체크  

   eclipse 서버 환경설정
   - Window-> Open Perspective -> Other...    - java EE( default)로 바꾼다
   - Window-> Preferences - Server - Runtime Environmenet - add에서 Tomcat추가한다
     . Apache - Apache Tomcat v6.0선택
     . Tomcat  installation directory에 "C:\webserver\Tomcat 6.0" 설정
   - Windows - Show View - other... - Server 선택 Sever창이 보이게 한후
     Server창에서 오른쪽 마우스 버튼이용 New - server - tomcat v6.0 Server추가

 

5. 구동확인

    1. Eclipse 에서 새프로젝트 생성
    2. File > New > Project 메뉴를 선택한다.
    • Web → Dynamic Web Project 를 선택한다.
    • Project name 을 입력하고, 
      Target runtime 에서 New… 버튼을 클릭하여 
      Apache Tomcat v6.0 을 선택하고 Next 버튼을 눌러서 넘어가서 
      Tomcat installation directory 에서 C:\Program Files\Apache Software Foundation\Tomcat 6.0 를 입력하고 JRE 에서 jre6 를 선택하고, 
      Finish 버튼을 누른다.
    • Next 버튼을 누르고, Default output folder 에 WebContent\WEB-INF\classes 를 입력하고, Next 버튼을 누른다.
    • 마지막으로 Finish 버튼을 누르면 프로젝트가 생성된다.
    1. 테스트를 위한 도메인을 test.com 으로 합니다.
    2. C:\WINDOWS\system32\drivers\etc\hosts 에 아래 내용을 추가한다.
      127.0.0.1       test.com
    3. server.xml 에 다음과 같이 추가한다.
            <!-- test.com -->
      <Host name="test.com" debug="0" appBase="" unpackWARs="true" autoDeploy="true">
      <Logger className="org.apache.catalina.logger.FileLogger" directory="logs" prefix="test.com_" suffix=".log" timestamp="true"/>
      <Context path="" docBase="C:\아이디\Project\프로젝트이름\web\프로젝트이름\WebContent" debug="0">
      <Resources className="org.apache.naming.resources.FileDirContext" allowLinking="true" />
      </Context>
      </Host>
    4. C:\아이디\Project\프로젝트이름\web\프로젝트이름\WebContent 에 아래와 같은 index.jsp 를 작성하고, 웹브라우저에서 http://test.com:8080 을 입력해본다.
      <?xml version="1.0" encoding="UTF-8" ?>
      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <title>테스트닷컴</title>
      </head>
      <body>테스트닷컴</body>
      </html>

     


  • '프로그램 > web page' 카테고리의 다른 글

    로그인 소스 분석  (0) 2012.06.11
    main.php/insert.php  (0) 2012.04.03
    Active Server Page  (0) 2012.03.02
    액티브 서버 페이지  (0) 2012.03.02
    ASP(Active Server Pages)  (0) 2012.02.08
    PHP 설명  (0) 2011.06.19
    Application 객체  (0) 2011.04.17
    데이터전송에 대한 기초적인 흐름 (PHP,JSP,ASP)  (0) 2011.03.04
    Session 객체  (0) 2011.03.04
    Server 객체  (0) 2011.02.14
    Posted by wrnly