묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
간단 주문 게시판 (오류 수정 요청)
2006.09.20 15:02
http://www.tosign.com/pds/list.phphttp://www.tosign.com/pds/write.phpPHP 간단하게 주문을 하는 게시판을 만들었습니다.
그런데 맨 상단에 입력란을 입력하지 않으면 저장이 안되어야 하는데, 경고 메세지가 나타나고 바로 DB로 입력이 되어 버리네요. 소스를 봐서는 이상이 없는것 같은데 어디를 수정해야 할지 모르겠습니다.
PHP를 잘 아시는분 계시면 좀 가르쳐 주셨으면 합니다.
첨부파일 소스가 있습니다.
* 쓰기 페이지 ===========================================================================================
<html>
<head>
<title>pds</title>
<link rel="stylesheet" href="./type.css">
<script language=javascript>
<!--
function xfocus(){
document.xfrom.company.focus();
}
function content_check(f){
if( f.company.value.length == 0 ) {
alert("업체명을 입력하세요.");
f.comapny.focus();
return (false);
}
if( f.name.value.length == 0 ) {
alert("이름을 입력하세요.");
f.name.focus();
return (false);
}
if( f.tel.value.length == 0 ) {
alert("전화번호를 입력하세요.");
f.tel.focus();
return (false);
}
if( f.mobile.value.length == 0 ) {
alert("휴대폰 번호를 입력하세요.");
f.mobile.focus();
return (false);
}
if( f.pass.value.length == 0 ) {
alert("패스워드를 입력하세요.");
f.pass.focus();
return (false);
}
if( f.kind.value.length == 0 ) {
alert("종류를 입력하세요.");
f.kind.focus();
return (false);
}
if( f.counter.value.length == 0 ) {
alert("수량을 입력하세요.");
f.counter.focus();
return (false);
}
if( f.a_date.value.length == 0 ) {
alert("수령 희망일을 입력하세요.");
f.a_date.focus();
return (false);
}
if( f.address.value.length == 0 ) {
alert("주소를 입력하세요.");
f.address.focus();
return (false);
}
if( f.title.value.length > 50 ) {
alert("제목은 최대 한글 45자,영문80자까지만 허용합니다.");
f.title.focus();
return (false);
}
if( f.memo.value.length > 10000 ) {
alert("내용은 최대 한글 4000자, 영문80000자까지만 허용합니다.");
f.memo.focus();
return (false);
}
// E-mail 주소 체크
var xmail = f.email.value;
var fmail = email(xamil);
if (!fmail){
alert('잘못된 E-mail 주소 입니다.')
f.email.focus();
return (false);
}
return (true);
}
<?
function email($address) {
return (ereg('^[-!#$%&'*+\./0-9=?A-Z^_`a-z{|}~]+'.
'@'.
'[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+.'.
'[-!#$%&'*+\./0-9=?A-Z^_`a-z{|}~]+$',
$address));
}
?>
//-->
</script>
</head>
<body bgcolor=#ffffff topmargin=0 leftmargin=0 marginwidth=0 marginheight=0 onload=xfocus();>
<center>
<br>
<form name=xfrom action=insert.php method=post onSubmit="return content_check(this)" ENCTYPE="multipart/form-data">
<table width=600 border=0 cellpadding=5 cellspacing=2>
<tr> <B>▶ 고객정보 입력란
<font color=red>( * 표시 항목은 반드시 입력해야 합니다.)</font></B>
</tr>
<tr bgcolor="#F3F3F3">
<td width="23%" align=center bgcolor=#DBDBDB> <p align="center"><B>* 업체명(회사명)</B></p></td>
<td width=24%> <input name=text type=text id="company" size=20 maxlenght=10>
</td>
<td width=18% bgcolor=#CCCCCC><div align="center"><B>* 성 명</B></div></td>
<td width=35%><input name=text type=text id="name" size=20 maxlenght=10></td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 전화번호</B> </div></td>
<td colspan="3"> <input type=text name=tel size=20 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 휴대폰</B> </div></td>
<td colspan="3"> <input type=text name=mobile size=20 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>F A X</B> </div></td>
<td colspan="3"> <input type=text name=fax size=20 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>이메일</B> </div></td>
<td colspan="3"> <input type=text name=email size=50 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 비밀번호</B> </div></td>
<td colspan="3"> <input type=password name=pass size=8 maxlength=8>
※ 삭제시 반드시 필요. </td>
</tr>
</table>
<br><br>
<table width=600 border=0 cellpadding=5 cellspacing=2>
<tr> <B>▶ 주문정보 입력란</B> </tr>
<tr bgcolor="#F3F3F3">
<td width="23%" align=center bgcolor=#DBDBDB> <div align="center"><B>* 종 류</B>
</div></td>
<td width=80%> <input type=text name=kind size=5 maxlenght=10> 번
<font color=red>☞ [1]-기본형 [2]-일반캐릭터 [3]-특수캐릭터 [4]-천갈이</font></td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 수 량</B> </div></td>
<td width=80%> <input type=text name=counter size=5 maxlenght=10>
개 </td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 수령희망일</B> </div></td>
<td width=80%> <input type=text name=a_date size=20 maxlenght=10>
(ex. 2004-08-01) </td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 수령지주소</B></div></td>
<td width=80%> <input type=text name=address size=65 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>메인타이틀 글씨</B> </div></td>
<td width=80%> <input type=text name=title size=65 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <p align="center"><B>기 타</B></p>
<p align="center"><B>내 용</B></p></td>
<td width=80%> <textarea name=memo cols=60 rows=10></textarea>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>파일첨부</B> </div></td>
<td width=80%> <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1024000">
<input type=file name=UploadedFile> </td>
</tr>
</table>
<br>
<input type=submit name=submit size=10 value="내용 올리기">
<input type=reset name=submit size=10 value="Cancel">
<!-- 끝 -->
</form>
</center>
</body>
</html>
==================================================================================================
입력되는 페이지 ===================================================================================
<html>
<head>
<title>pds</title>
<link rel="stylesheet" href="./type.css">
</head>
<body bgcolor=#ffffff topmargin=0 leftmargin=0 marginwidth=0 marginheight=0>
<center>
<?
include "util.inc";
// 파일 올리자
$path="../pds/data";
if( $UploadedFile != none ){
$UploadedFile = stripslashes($UploadedFile);
$file_name = $UploadedFile_name;
$fileup = mysql_query("select filename from $TABLE",$CONNECT);
if( $fileup ){
while( $row = mysql_fetch_array($fileup) ){
if( $file_name == $row[filename] ){
$file_name = $file_name;
}
}
}
if (copy( $UploadedFile , "$path/$file_name" )){
print "$UploadedFile has been copy to $path/$file_name<br>";
}else{
print "Error.. can't upload<br>";
}
}else{
print "Error.. no file.<br>";
}
if ( $no ){
$result = mysql_query("select pass from $TABLE where no=$no",$CONNECT);
$row = mysql_fetch_array($result);
if (($pass==$row[pass]) || ($pass=="ccomo")){
$dbinsert = "update $TABLE set name='$name',comapny='$company',tel='$tel',mobile='$mobile',fax='$fax',email='$email',pass='$pass',kind='$kind',counter='$counter',a_date='$a_date',address='$address',title='$title',memo='$memo',filename='$file_name',w_date=now() where no=$no";
}else{
echo ("
<script>
alert('비밀번호가 틀립니다.')
history.go(-1)
</script>
");
exit;
}
}else{
$dbinsert = "insert into $TABLE values (''+ '+ ','$name','$company','$tel','$mobile','$fax','$email','$pass','$kind','$counter','$a_date','$address','$title','$memo','$file_name','0','0',0,now())";
}
$result = mysql_query($dbinsert,$CONNECT);
mysql_close($CONNECT);
if ( $result ){
echo "<br><br><FONT face=돋움 size=2 color=silver>정상적으로 저장되었습니다.</font><P>";
echo "<meta http-equiv='Refresh' content='0; URL=../pds/good.html'>";
}else{
echo "<br><br><FONT face=돋움 size=2 color=silver>정상적으로 저장되지 않았습니다.</font>";
}
?>
</body>
</html>
=======================================================================================================
그런데 맨 상단에 입력란을 입력하지 않으면 저장이 안되어야 하는데, 경고 메세지가 나타나고 바로 DB로 입력이 되어 버리네요. 소스를 봐서는 이상이 없는것 같은데 어디를 수정해야 할지 모르겠습니다.
PHP를 잘 아시는분 계시면 좀 가르쳐 주셨으면 합니다.
첨부파일 소스가 있습니다.
* 쓰기 페이지 ===========================================================================================
<html>
<head>
<title>pds</title>
<link rel="stylesheet" href="./type.css">
<script language=javascript>
<!--
function xfocus(){
document.xfrom.company.focus();
}
function content_check(f){
if( f.company.value.length == 0 ) {
alert("업체명을 입력하세요.");
f.comapny.focus();
return (false);
}
if( f.name.value.length == 0 ) {
alert("이름을 입력하세요.");
f.name.focus();
return (false);
}
if( f.tel.value.length == 0 ) {
alert("전화번호를 입력하세요.");
f.tel.focus();
return (false);
}
if( f.mobile.value.length == 0 ) {
alert("휴대폰 번호를 입력하세요.");
f.mobile.focus();
return (false);
}
if( f.pass.value.length == 0 ) {
alert("패스워드를 입력하세요.");
f.pass.focus();
return (false);
}
if( f.kind.value.length == 0 ) {
alert("종류를 입력하세요.");
f.kind.focus();
return (false);
}
if( f.counter.value.length == 0 ) {
alert("수량을 입력하세요.");
f.counter.focus();
return (false);
}
if( f.a_date.value.length == 0 ) {
alert("수령 희망일을 입력하세요.");
f.a_date.focus();
return (false);
}
if( f.address.value.length == 0 ) {
alert("주소를 입력하세요.");
f.address.focus();
return (false);
}
if( f.title.value.length > 50 ) {
alert("제목은 최대 한글 45자,영문80자까지만 허용합니다.");
f.title.focus();
return (false);
}
if( f.memo.value.length > 10000 ) {
alert("내용은 최대 한글 4000자, 영문80000자까지만 허용합니다.");
f.memo.focus();
return (false);
}
// E-mail 주소 체크
var xmail = f.email.value;
var fmail = email(xamil);
if (!fmail){
alert('잘못된 E-mail 주소 입니다.')
f.email.focus();
return (false);
}
return (true);
}
<?
function email($address) {
return (ereg('^[-!#$%&'*+\./0-9=?A-Z^_`a-z{|}~]+'.
'@'.
'[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+.'.
'[-!#$%&'*+\./0-9=?A-Z^_`a-z{|}~]+$',
$address));
}
?>
//-->
</script>
</head>
<body bgcolor=#ffffff topmargin=0 leftmargin=0 marginwidth=0 marginheight=0 onload=xfocus();>
<center>
<br>
<form name=xfrom action=insert.php method=post onSubmit="return content_check(this)" ENCTYPE="multipart/form-data">
<table width=600 border=0 cellpadding=5 cellspacing=2>
<tr> <B>▶ 고객정보 입력란
<font color=red>( * 표시 항목은 반드시 입력해야 합니다.)</font></B>
</tr>
<tr bgcolor="#F3F3F3">
<td width="23%" align=center bgcolor=#DBDBDB> <p align="center"><B>* 업체명(회사명)</B></p></td>
<td width=24%> <input name=text type=text id="company" size=20 maxlenght=10>
</td>
<td width=18% bgcolor=#CCCCCC><div align="center"><B>* 성 명</B></div></td>
<td width=35%><input name=text type=text id="name" size=20 maxlenght=10></td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 전화번호</B> </div></td>
<td colspan="3"> <input type=text name=tel size=20 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 휴대폰</B> </div></td>
<td colspan="3"> <input type=text name=mobile size=20 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>F A X</B> </div></td>
<td colspan="3"> <input type=text name=fax size=20 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>이메일</B> </div></td>
<td colspan="3"> <input type=text name=email size=50 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 비밀번호</B> </div></td>
<td colspan="3"> <input type=password name=pass size=8 maxlength=8>
※ 삭제시 반드시 필요. </td>
</tr>
</table>
<br><br>
<table width=600 border=0 cellpadding=5 cellspacing=2>
<tr> <B>▶ 주문정보 입력란</B> </tr>
<tr bgcolor="#F3F3F3">
<td width="23%" align=center bgcolor=#DBDBDB> <div align="center"><B>* 종 류</B>
</div></td>
<td width=80%> <input type=text name=kind size=5 maxlenght=10> 번
<font color=red>☞ [1]-기본형 [2]-일반캐릭터 [3]-특수캐릭터 [4]-천갈이</font></td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 수 량</B> </div></td>
<td width=80%> <input type=text name=counter size=5 maxlenght=10>
개 </td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 수령희망일</B> </div></td>
<td width=80%> <input type=text name=a_date size=20 maxlenght=10>
(ex. 2004-08-01) </td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>* 수령지주소</B></div></td>
<td width=80%> <input type=text name=address size=65 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>메인타이틀 글씨</B> </div></td>
<td width=80%> <input type=text name=title size=65 maxlenght=10>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <p align="center"><B>기 타</B></p>
<p align="center"><B>내 용</B></p></td>
<td width=80%> <textarea name=memo cols=60 rows=10></textarea>
</td>
</tr>
<tr bgcolor="#F3F3F3">
<td align=center bgcolor=#DBDBDB> <div align="center"><B>파일첨부</B> </div></td>
<td width=80%> <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1024000">
<input type=file name=UploadedFile> </td>
</tr>
</table>
<br>
<input type=submit name=submit size=10 value="내용 올리기">
<input type=reset name=submit size=10 value="Cancel">
<!-- 끝 -->
</form>
</center>
</body>
</html>
==================================================================================================
입력되는 페이지 ===================================================================================
<html>
<head>
<title>pds</title>
<link rel="stylesheet" href="./type.css">
</head>
<body bgcolor=#ffffff topmargin=0 leftmargin=0 marginwidth=0 marginheight=0>
<center>
<?
include "util.inc";
// 파일 올리자
$path="../pds/data";
if( $UploadedFile != none ){
$UploadedFile = stripslashes($UploadedFile);
$file_name = $UploadedFile_name;
$fileup = mysql_query("select filename from $TABLE",$CONNECT);
if( $fileup ){
while( $row = mysql_fetch_array($fileup) ){
if( $file_name == $row[filename] ){
$file_name = $file_name;
}
}
}
if (copy( $UploadedFile , "$path/$file_name" )){
print "$UploadedFile has been copy to $path/$file_name<br>";
}else{
print "Error.. can't upload<br>";
}
}else{
print "Error.. no file.<br>";
}
if ( $no ){
$result = mysql_query("select pass from $TABLE where no=$no",$CONNECT);
$row = mysql_fetch_array($result);
if (($pass==$row[pass]) || ($pass=="ccomo")){
$dbinsert = "update $TABLE set name='$name',comapny='$company',tel='$tel',mobile='$mobile',fax='$fax',email='$email',pass='$pass',kind='$kind',counter='$counter',a_date='$a_date',address='$address',title='$title',memo='$memo',filename='$file_name',w_date=now() where no=$no";
}else{
echo ("
<script>
alert('비밀번호가 틀립니다.')
history.go(-1)
</script>
");
exit;
}
}else{
$dbinsert = "insert into $TABLE values (''+ '+ ','$name','$company','$tel','$mobile','$fax','$email','$pass','$kind','$counter','$a_date','$address','$title','$memo','$file_name','0','0',0,now())";
}
$result = mysql_query($dbinsert,$CONNECT);
mysql_close($CONNECT);
if ( $result ){
echo "<br><br><FONT face=돋움 size=2 color=silver>정상적으로 저장되었습니다.</font><P>";
echo "<meta http-equiv='Refresh' content='0; URL=../pds/good.html'>";
}else{
echo "<br><br><FONT face=돋움 size=2 color=silver>정상적으로 저장되지 않았습니다.</font>";
}
?>
</body>
</html>
=======================================================================================================
댓글 0
글쓴이 | 제목 | 최종 글 |
---|---|---|
XE | 공지 글 쓰기,삭제 운영방식 변경 공지 [16] | 2019.03.05 by 남기남 |
정은미915 |
레이아웃적용했는데 메뉴가 나타나지 않아요
![]() | |
판영민 |
메뉴 생성이 안되요
![]() | |
kanasii | 카페 도메인 설정 문의! [1] | 2009.11.05 by 백성찬 |
포로병 |
도움을 요청합니다.고수님들 클릭해 주세요.
[1]
![]() | 2009.11.05 by ememo |
레테123 |
1.2.6 업뎃 후에 최근글 위젯 이상하네여...2
[1]
![]() | 2009.11.05 by ememo |
정은미915 |
왕초보입니다. 페이지관리에서 생성을 하고
[1]
![]() | 2009.11.05 by 찰리콘트롤 |
라유라 | 주제별로 수집한 웹사이트 미리보기 구현이 궁금합니다. | |
홍정석 | 게시물 내용에서 이미지 가운데 정렬 알려주세요 [1] | 2009.11.05 by 파파민 |
물비늘 |
첨부파일(이미지) 간격조절
[1]
![]() | 2009.11.05 by 파파민 |
CONAN | 왼쪽사이드에 2차 메뉴만 출력하고 싶습니다 [1] | 2009.11.05 by e~세상쉼터 |
knut | xe용 스킨을 적용하면 아무것도 안뜹니다. | |
不明 | widget.controller.php on line 524 에러 [1] | 2009.11.05 by SMaker |
삼민수 | 트레픽을 제일 적게 사용하는 보드가 무엇입니까? [5] | 2009.11.05 by 한지형 |
아모란 | 게시판 이미지 파일 첨부시 브라우져 창이 닫힙니다. | |
ByeolSatang | 카운터 누적숫자 수정하려면요? [1] | 2009.11.05 by Gekkou |
gaia012 | admin비밀번호분실.. [2] | 2009.11.05 by Gekkou |
둘로스 | XE 엔진 설치 표준 사양은? [1] | 2009.11.05 by Gekkou |
jun준 | 웹진 위젯 글출력 | |
레테123 | 1.2.6 업뎃 후에 최근글 위젯 이상하네여... [3] | 2009.11.05 by 백성찬 |
wjdska0012 | XE레이아웃 미리보기 에러나요 [1] | 2009.11.05 by 백성찬 |