Q&A

  • jsp 소스 좀 도와주세요.

<%@ page contentType="text/html; charset=euc-kr" import="java.sql.*" %>


<html>
<script>
function test(){

return true;
}

</script>
<head>
  <title> 추가  </title>
</head>

<%

String time=request.getParameter("aname");
String tel =request.getParameter("tel");

if(time!=null)
{
     time=new String(time.getBytes("8859_1"),"KSC5601");
    Class.forName("org.gjt.mm.mysql.Driver");
    String url         = "jdbc:mysql://localhost/db";
  Connection db =  DriverManager.getConnection(url, "root", "1234");
    Statement stmt= db.createStatement();
    String sql      =    "select count(*) from test where name ='"+time+"'";


(이 부분을 좀 봐주세요. 목적은 db테이블에 입력한 이름이 있을때 에러창이 뜨고
아니면 그냥 입력 되게 하는 건데 실행이 되도록 도와주세요.
현재 db에 테이블 이름과 중복 되지 않을때는 그냥 입력이 잘 됩니다.
문제는 db 테이블에 있는 이름과 중복 될때는 실행오류가 나옵니다.       )
    if (count!=null){
                %>
                <script>
                alert ("동일한 이름이 있습니다. 다른 이름을 입력해 주세요.");
            </script>              
            <%
             }
     else if(count =null){                      
              String sql     = "insert into test values('" + time + "','" + tel + "')";
                int r                    = stmt.executeUpdate(sql);
            }
        







    stmt.close();
    db.close();
    
    if ( r>0)
    {
        %>
            <script>
                opener.refresh();
                window.close();
            </script>
        <%
    }
}
%>
    <body>
        <p align="center">
            <form name="frm" method="post" action="add.jsp">
                이름:  <input type="text" name="aname" ><br>
                전화번호: <input type="text" name="tel"><br>
                <input type="submit" value="확인" onclick="test()">
        </form>
    </body>

</html>  
2  COMMENTS
  • Profile
    박성준 2007.01.31 03:38
    이곳이
    델파이 개발자 모임이긴 하지만
    제 생각엔

    if (count!=null){

    부분에서 count라는 객체(변수)의 할당이 안되보이는데요?
    자세한 사항은 http://www.okjsp.pe.kr 검색 혹은 질문해보세요...

    /사/천/팔/백/만/국/민/모/두/가/성/공/하/는/그/날/까/지

  • Profile
    정송만 2007.02.01 09:36
    <%@ page contentType="text/html; charset=euc-kr" import="java.sql.*" %>


    <html>
    <script>
    function test(){

    return true;
    }

    </script>
    <head>
      <title> 추가  </title>
    </head>

    <%

    String time=request.getParameter("aname");
    String tel =request.getParameter("tel");

    if(time!=null)
    {
        time=new String(time.getBytes("8859_1"),"KSC5601");
        Class.forName("org.gjt.mm.mysql.Driver");
        String url         = "jdbc:mysql://localhost/db";
      
            Connection db =  DriverManager.getConnection(url, "root", "1234");
        Statement stmt= db.createStatement();
            ResultSet = null;
        String sql      =    "select count(*) from test where name ='"+time+"'";
            int count = 0;
            int r = 0;


            try
            {
                    rs = stmt.executeQuery(sql);

                    if(rs != null)
                    {
                            rs.next();
                            count = rs.getInt(0);
                    }
                    else
                    {
                            count = 0;
                    }

                if (count > 0)
                    {
                    %>
                    <script>
                    alert ("동일한 이름이 있습니다. 다른 이름을 입력해 주세요.");
                </script>              
                <%
                    }
                    else if(count == 0)
                    {                      
                 String sql     = "insert into test values('" + time + "','" + tel + "')";
                 r              = stmt.executeUpdate(sql);
                    }
            }
            catch(SQLException e)
            {
                    // 에러 헨들 처리하세요.
                    out.println(e.getMessage());
            }
            finally
            {
                    if(rs != null)
                            rs.close();

                    if(stmt != null)
                            stmt.close();

                    if(db != null)
                            db.close();
            }
            
        if(r > 0)
        {
            %>
                <script>
                    opener.refresh();
                    window.close();
                </script>
            <%
        }
    }
    %>
        <body>
            <p align="center">
                <form name="frm" method="post" action="add.jsp">
                    이름:  <input type="text" name="aname" ><br>
                    전화번호: <input type="text" name="tel"><br>
                    <input type="submit" value="확인" onclick="test()">
            </form>
        </body>

    </html>