누가 asp관련 에러나는것 물어보는데...잘 안되네요..어디부분이 잘못되었는지 살펴주시면 감사하겠습니다.
http://daejungfood.co.kr/reserv/reserv.asp
예약 신청하는 부분입니다.
소스는 아래와 같습니다.
-----------------------------------------------------------
<table width="613" height="739" border="0" cellpadding="0" cellspacing="0">
<script language="javascript">
function onlyNumber(){
if(event.keyCode<48||event.keyCode>57)
event.returnValue=false;
}
function check(){
if(document.dj_reserve.dj_date1.value == "" || document.dj_reserve.dj_date2.value == ""
|| document.dj_reserve.dj_date3.value == ""){
alert("행사일자를 작성해 주세요")
document.dj_reserve.dj_date1.focus();
return false;
}else if(document.dj_reserve.dj_date1.value.length<2 ||
document.dj_reserve.dj_date2.value.length<1 || document.dj_reserve.dj_date3.value.length<1){
alert("행사일자를 정확히 작성해 주세요")
document.dj_reserve.dj_date1.focus()
return false
}
if(document.dj_reserve.dj_pe.value==""){
alert("예상인원을 작성해 주세요")
document.dj_reserve.dj_pe.focus()
return false
}
if(document.dj_reserve.dj_name.value.length<2){
alert("작성자 이름을 작성해 주세요")
document.dj_reserve.dj_name.focus()
return false;
}
if(document.dj_reserve.dj_phone1.value=="" ||
document.dj_reserve.dj_phone2.value=="" || document.dj_reserve.dj_phone3.value==""){
alert("휴대폰 번호를 입력하십시요")
document.dj_reserve.dj_phone1.focus()
return false;
}else if(document.dj_reserve.dj_phone1.value.length<3 ||
document.dj_reserve.dj_phone2.value.length<3 || document.dj_reserve.dj_phone3.value.length <4){
alert("휴대폰 번호를 정확히 입력해 주세요")
document.dj_reserve.dj_phone1.focus()
return false;
}
if(document.dj_reserve.dj_tel1.value>0 || document.dj_reserve.dj_tel2.value>0 ||
document.dj_reserve.dj_tel3.value>0){
if(document.dj_reserve.dj_tel1.value<2 ||
document.dj_reserve.dj_tel2.value<3 || document.dj_reserve.dj_tel3.value<4){
alert("전화번호를 정확히 입력해 주세요")
document.dj_reserve.dj_tel1.focus()
return false;
}
}
if(document.dj_reserve.dj_title.value==""){
alert("제목을 작성해 주세요")
document.dj_reserve.dj_title.focus()
return false
}
if(document.dj_reserve.dj_email.value.length>0){
if((document.dj_reserve.dj_email.value.indexOf("@")<0)||
(document.dj_reserve.dj_email.value.indexOf(".")<0)){
alert("이메일 주소의 형식이 틀립니다.(예)
ooo@xxxx.co.kr 등의 형식으로 입력")
document.dj_reserve.dj_email.focus()
return false
}
if(document.dj_reserve.dj_email.value.indexOf("http")>=0 ||
(document.dj_reserve.dj_email.value.indexOf("/www.")>=0)){
alert("http:// 나 http://www.은 이메일 주소가 아닙니
다.(예)ooo@xxxx.co.kr 등의 형식으로 입력 ")
document.dj_reserve.dj_email.focus()
return false
}
if((document.dj_reserve.dj_email.value.indexOf("hanmail.net")>=0)
||(document.dj_reserve.dj_email.value.indexOf("daum.net")>=0)){
alert("한메일이나 다움메일은 사용하실 수 없습니
다.\n다른 메일주소를 등록하세요")
document.dj_reserve.dj_email.focus()
return false;
}
if(document.dj_reserve.dj_email.value.indexOf("/")>=0){
alert("이메일 주소에 (/)를 사용할수 없습니다")
document.dj_reserve.dj_email.focus()
return false;
}
var
comp="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*().-_+=<,>?':;[]
{}";
var string=document.dj_reserve.dj_email.value;
var len=string.length;
for(i=0;i<len;i++)
{
if(comp.indexOf(string.substring(i,i+1))<0)
{
alert("이메일 아이디에 한글 문자가 들어
가면 안됩니다. 다시 입력해 주십시오");
document.dj_reserve.dj_email.focus();
return false;
}
}
}
}
</script>
<form name="dj_reserve" method="post" action="reserv_right_ok.asp" onsubmit="return check()">
<tr>
<td valign="top" bgcolor="#FFFFFF"><table width="613" border="0" cellspacing="0"
cellpadding="0">
<tr>
<td height="613" valign="top"> <table width="610" border="0" cellspacing="0"
cellpadding="0">
<tr>
<td height="94"><img src="images/reserv_01.gif" width="610" height="94"></td>
</tr>
<tr>
<td height="77" background="images/reserv_02.gif"> </td>
</tr>
<tr>
<td height="307" align="center"> <table width="530" height="413" border="0"
cellpadding="0" cellspacing="0">
<tr>
<td height="12"> </td>
</tr>
<tr>
<td height="401" valign="top" background="images/reserv_03.gif">
<table width="530" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="images/reserv_04.gif" width="530" height="13"></td>
</tr>
</table>
<table width="489" height="368" border="0" cellpadding="0" cellspacing="0">
<tr>
<td> </td>
<td height="27"> </td>
<td> </td>
</tr>
<tr>
<td width="38"> </td>
<td width="84" height="25">행사선택</td>
<td width="367"><select name="dj_select" style="border-width:1px; border-
color:#999999; border-style:solid;">
<option value="출장파티">출장파티</option>
<option value="결혼피로연">결혼피로연</option>
<option value="바베큐파티">바베큐파티</option>
<option value="상차림주문">상차림주문</option>
<option value="장례음식">장례음식</option>
<option value="얼음조각">얼음조각</option>
<option value="생맥주파티">생맥주파티</option>
<option value="도시락주문">도시락주문</option>
<option value="집들이파티">집들이파티</option>
</select></td>
</tr>
<tr>
<td> </td>
<td>행사일자</td>
<td><input name="dj_date1" type="text" size="4" maxlength="4" class="box"
onKeyPress="onlyNumber();">
년
<input name="dj_date2" type="text" size="2" maxlength="2" class="box"
onKeyPress="onlyNumber();">
월
<input name="dj_date3" type="text" size="2" maxlength="2" class="box"
onKeyPress="onlyNumber();">
일</td>
</tr>
<tr>
<td> </td>
<td>예상인원</td>
<td><input name="dj_pe" type="text" size="4" maxlength="4" class="box"
onKeyPress="onlyNumber();">
명</td>
</tr>
<tr>
<td> </td>
<td>신청자성명</td>
<td><input name="dj_name" type="text" size="12" maxlength="12"
class="box"></td>
</tr>
<tr>
<td> </td>
<td>전화번호</td>
<td><input name="dj_tel1" type="text" size="3" maxlength="3" class="box"
onKeyPress="onlyNumber();">
-
<input name="dj_tel2" type="text" size="4" maxlength="4" class="box"
onKeyPress="onlyNumber();">
-
<input name="dj_tel3" type="text" size="4" maxlength="4" class="box"
onKeyPress="onlyNumber();"></td>
</tr>
<tr>
<td> </td>
<td height="18">휴대전화</td>
<td><input name="dj_phone1" type="text" size="3" maxlength="3" class="box"
onKeyPress="onlyNumber();">
-
<input name="dj_phone2" type="text" size="4" maxlength="4" class="box"
onKeyPress="onlyNumber();">
-
<input name="dj_phone3" type="text" size="4" maxlength="4" class="box"
onKeyPress="onlyNumber();"></td>
</tr>
<tr>
<td> </td>
<td>이메일</td>
<td><input name="dj_email" type="text" size="40" maxlength="40" class="box">
</td>
</tr>
<tr>
<td> </td>
<td>제 목</td>
<td><input name="dj_name" type="text" size="40" maxlength="40" class="box">
</td>
</tr>
<tr>
<td valign="top"> </td>
<td height="135" valign="top"><br>
요청사항</td>
<td><textarea name="dj_content" cols="50" rows="8" style="border-width:1px;
border-color:#999999; border-style:solid;"></textarea></td>
</tr>
<tr>
<td height="25" colspan="3" valign="top"><table width="480" border="0"
align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="243" height="36" align="right" valign="bottom"><input
type="image" src="images/reserv_btn.gif" width="53" height="23" border="0"></td>
<td width="27"> </td>
<td width="210" valign="bottom"><a href="reserv_list.asp"><img
src="images/reserv_btn4.gif" width="53" height="23" border="0"></a></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td height="42" background="../images/index_74.gif"> </td>
</tr>
</form>
</table>
-------------------------------------------------------------------------------
실행파일
---------------------------------------------------------------------------------
<%option explicit%>
<!--#include virtual="/include/dbopen.asp"-->
<%
Dim idx,dj_select,dj_date,dj_pe,dj_name,dj_tel,dj_phone,dj_email,dj_content,dj_title,join_date
idx=request("idx")
dj_select=request("dj_select")
dj_date=request("dj_date1")&"-"&request("dj_date2")&"-"&request("dj_date3")
dj_pe=request("dj_pe")
dj_name=request("dj_name")
dj_tel=request("dj_tel1")&"-"&request("dj_tel2")&"-"&request("dj_tel3")
dj_phone=request("dj_phone1")&"-"&request("dj_phone2")&"-"&request("dj_phone3")
dj_email=request("dj_email")
dj_content=request("dj_content")
join_date=request("join_date")
dj_title=request("dj_title")
dj_title = replace(dj_title,"'","''")
dj_content = replace(dj_content,"'","''")
Dim rs,sql,re_group
set rs=server.createobject("ADODB.Recordset")
sql = "select top 1 idx from dj_reserve order by idx desc"
rs.open sql,db,adopenforwardonly,adlockreadonly,adcmdtext
if rs.bof or rs.eof then
re_group = 1
else
re_group=rs("idx")+1
end if
rs.close
set rs=nothing
SQL = "INSERT INTO dj_reserve
(dj_select,dj_pe,dj_tel,dj_phone,dj_email,dj_content,dj_date,dj_title,dj_name) values('" & dj_select
& "','"& dj_pe&"','" & dj_tel & "','" & dj_phone & "','" & dj_email & "','" & dj_content & "','" & dj_date & "','" &
dj_title & "','" & dj_name&"')"
db.Execute SQL
db.close
Set db = Nothing
Dim html
html = "<table width='613' border='0' cellpadding='0' cellspacing='0' align='center'><!--1--><tr><td valign='top'
bgcolor='#FFFFFF'><table width='613' border='0' cellspacing='0' cellpadding='0'><!--2--><tr><td height='613'
valign='top'><table width='610' border='0' cellspacing='0' cellpadding='0'><!--3--><tr><td height='94'><img
src='http://deajungfood.co.kr/reserv/images/img_mail_top.gif' width='610' height='78'></td></tr><tr><td
height='10' background='images/reserv_02.gif'> </td></tr><tr><td height='307' align='center'><table
width='530' height='413' border='0' cellpadding='0' cellspacing='0'><!--4--><tr><td
height='12'> </td></tr><tr><td height='401' valign='top'><table width='530' border='0' cellspacing='0'
cellpadding='0'><!--5--><tr><td bgcolor='#E3E3E3'><table width='530' border='0' cellspacing='0'
cellpadding='0'><!--6--><tr><td><img src='http://deajungfood.co.kr/reserv/images/reserv_04.gif' width='530'
height='13'></td></tr></table><!--6`--><table width='530' border='0' cellpadding='1' cellspacing='1'><!--7--
><tr bgcolor='EFEFEF'><td width='77' height='25'><div align='center'>제목</div></td><td height='25'
colspan='5' bgcolor='EFEFEF'> [dj_title]</td></tr><tr bgcolor='#FFFFFF'><td height='25'
bgcolor='#E1E1E1'><div align='center'>등록일</div></td><td width='87' height='25' align='center'>[join_date]
</td><td width='68' height='25' align='center' bgcolor='#E1E1E1'>작성자</td><td width='81' height='25'
align='center'>[dj_name]</td><td width='73' height='25' align='center' bgcolor='#E1E1E1'>이메일</td><td
width='125' height='25' align='center'>[dj_email]</td></tr><tr bgcolor='#FFFFFF'><td height='339'
colspan='6'><div align='center'><table width='489' height='290' border='0' cellpadding='0' cellspacing='0'><!--
8--><tr><td width='38' height='23'> </td><td width='69' height='23'>행사종류</td><td width='382'
height='23'>[dj_select]</td></tr><tr><td height='23'> </td><td height='23'>행사일자</td><td height='23'>
[dj_date]</td></tr><tr><td height='23'> </td><td height='23'>예상인원</td><td height='23'>[dj_pe]명
</td></tr><tr><td height='23'> </td><td height='23'>신청자성명</td><td height='23'>[dj_name]
</td></tr><tr><td height='23'> </td><td height='23'>전화번호</td><td height='23'>[dj_tel]
</td></tr><tr><td height='23'> </td><td height='23'>휴대전화</td><td height='23'>[dj_phone]
</td></tr><tr><td height='23'> </td><td height='23'>이메일</td><td height='23'>[dj_email]
</td></tr><tr><td height='129' valign='top'> </td><td height='129' valign='top'>요청사항</td><td
height='129' valign='top'>[content]</td></tr></table><!--8`--></div></td></tr></table><!--7`--
></td></tr></table><!--5`--><table width='530' height='13' border='0' cellpadding='0' cellspacing='0'><!--9--
><tr> <td height='13' align='center'> </td></tr></table><!--9`--></td></tr></table><!--4`--
></td></tr><tr><td><img src='http://deajungfood.co.kr/reserv/images/img_mail_bottom.gif' width='610'
height='43'></td></tr></table><!--3`--></td></tr></table><!--2`--></td></tr></table><!--1`--
></td></tr></table>"
html = replace(html,"[dj_title]",dj_title)
html = replace(html,"[join_date]",date)
html = replace(html,"[dj_name]",dj_name)
html = replace(html,"[dj_email]",dj_email)
html = replace(html,"[dj_select]",dj_select)
html = replace(html,"[dj_date]",dj_date)
html = replace(html,"[dj_pe]",dj_pe)
html = replace(html,"[dj_tel]",dj_tel)
html = replace(html,"[dj_phone]",dj_phone)
html = replace(html,"[content]",dj_content)
'Dim smail, cdomailformatmime
' Set SMail = Server.CreateObject("CDONTS.Newmail")
' with SMail
' .from = "vavasoft@yahoo.co.kr(바바소프트)"
' .to = "dowoo1@naver.com"
' .subject = "대중잔치 예약이 1건 접수되었습니다."
' .body = html
' .bodyformat = 0 'html 일때 0, text일때 1
' .MailFormat = 0
' .mailformat = cdomailformatmime
' .Send
' end with
' set smail = nothing
%>
<script language="javascript">
alert("예약이 접수되었습니다.");
location="/";
</script>
----------------------------------------------------------------------------------
그런데 예약실행하면 아래와 같은 에러가 뜹니다.
에러가
Cannot insert the value NULL into column 'idx', table 'daejungfood.daejungfood.dj_reserve'; column does not allow nulls. INSERT fails. idx는 기본키인데..인서트 부분에 빼면 이런 에러가 나고..넣으면 중복키라고 에러가 나구요
----------------------------------------------
sql 구문에 이상이 있는듯 한데...선언하는 부분이 잘못되었던지..
혹시 위에 부분 보시고 아시는 분 있으신가요?
|