학생 성적 조회 프로그램
성적을 입력하는 프로그램의 성적 입력 폼 작성
스크립트를 활용하여 미기입된 입력칸 존재시 알림 발생시키는 것이 핵심
<section>
<br/>
<div align=center id=sectionTitle> <b>고등학교 성적 입력 프로그램</b></div><br/>
<div id=sectionDiv align=center>
<br/>
// 테이블 값 입력 후 submit 동작
<form name=f1 action=/0410/form_ok0410.php onSubmit="return formCK()">
<table border=1 width=300 height=300>
<tr>
<td width=80>학번</td>
<td><input type=text name=sNo>
</td>
</tr>
<tr>
<td>성명</td>
<td><input type=text name=sName>
</td>
</tr>
<tr>
<td>국어</td>
<td class=num1> 
<input type=number min=0 max=100 name=kor>
</td>
</tr>
<tr>
<td>영어</td>
<td class=num1> 
<input type=number min=0 max=100 name=eng>
</td>
</tr>
<tr>
<td>수학</td>
<td class=num1> 
<input type=number min=0 max=100 name=math>
</td>
</tr>
<tr>
<td>역사</td>
<td class=num1> 
<input type=number min=0 max=100 name=hist>
</td>
</tr>
<tr>
<td colspan=2 align=center><input type=submit value="성적저장"></td>
</tr>
</table>
</form>
</div>
<br/>
// 자바스크립트로 학번, 이름 미입력 시 알림 발생
<script>
function formCK(){
if (f1.sNo.value==""){
alert("학번을 입력해주세요")
return false;
} else if (f1.sName.value==""){
alert("이름을 입력해주세요")
return false;
}else{
alert("성적입력이 완료 되었습니다.!!")
f1.submit();
}
}
</script>
</section>
학번 입력칸에 학번이 자동으로 입력되도록 만들기
쿼리문을 활용해서 input 태그에 값을 넣어주는것이 핵심
<?php
// 서버 불러오기
$servername = "localhost";
$username = "root";
$password = "autoset";
$dbname = "ppk";
$conn = new mysqli($servername, $username, $password, $dbname);
// 학번 최대값 + 1 쿼리문 작성
$sql_i = "select max(sNo)+1 m_s from examtbl";
$result_i = $conn -> query($sql_i);
$row_i = $result_i -> fetch_assoc();
?>
// 테이블 값 출력
<table border=1 width=300 height=300>
<tr>
<td width=80>학번</td><td><input type=text name=sNo value=<?=$row_i['m_s']?>></td>
</tr>
</table>
// 학번을 기준으로 이름에 링크 부여
<tr>
<td><a href=/0410/edit0410.php?sNo=<?=$row['sNo']?>>
<?=$row['sName']?></a></td>
</tr>
// 서버
$servername = "localhost";
$username = "root";
$password = "autoset";
$dbname = "ppk";
$conn = new mysqli($servername, $username, $password, $dbname);
// 서버 값 불러오기
$sNo = $_REQUEST['sNo'];
// 목록 값 확인 쿼리문
$SQL = "select * from examtbl where sNo = $sNo";
$result = $conn -> query($SQL);
$row = $result -> fetch_assoc();
<form name=f1 action=/0410/update_ok0410.php onSubmit="return formCK()">
<table border=1 width=300 height=300>
<tr>
<td width=80>학번</td>
<td>
<input type=text name=sNo value=<?=$row['sNo']?> readonly>
</td>
</tr>
<tr>
<td>성명</td>
<td>
<input type=text name=sName value=<?=$row['sName']?> readonly>
</td>
</tr>
<tr>
<td>국어</td>
<td class=num1> 
<input type=number min=0 max=100 name=kor value=<?=$row['kor']?>>
</td>
</tr>
<tr>
<td>영어</td>
<td class=num1> 
<input type=number min=0 max=100 name=eng value=<?=$row['eng']?>>
</td>
</tr>
<tr>
<td>수학</td>
<td class=num1> 
<input type=number min=0 max=100 name=math value=<?=$row['math']?>>
</td>
</tr>
<tr>
<td>역사</td>
<td class=num1> 
<input type=number min=0 max=100 name=hist value=<?=$row['hist']?>>
</td>
</tr>
<tr>
<td colspan=2 align=center>
<input type=submit value="성적수정">
</td>
</tr>
<?
// 서버
$servername = "localhost";
$username = "root";
$password = "autoset";
$dbname = "ppk";
$conn = new mysqli($servername, $username, $password, $dbname);
// 값 불러오기
$sNo = $_REQUEST['sNo'];
$sName = $_REQUEST['sName'];
$kor = $_REQUEST['kor'];
$eng = $_REQUEST['eng'];
$math = $_REQUEST['math'];
$hist = $_REQUEST['hist'];
$SQL = "update examtbl
set kor=$kor, eng=$eng, math=$math, hist=$hist
where sNo='$sNo'";
// 값 확인 쿼리문 테스트
// echo $SQL;
$conn -> query($SQL);
header('Location:/0406/list0406.php');
?>
// 버튼 만들기
<table>
<tr>
<td colspan=2 align=center>
<input type=submit value="성적수정">
<input type=button onClick="delK()" value="삭제하기">
</td>
</tr>
</table>
// 버튼 동작 스크립트
<script>
function delK(){
alert('<?=$row['sNo']?> 삭제하기'); // 학번과 삭제하기 알림창
// 삭제 동작되는 파일로 이동
location.href="/0410/delete0410.php?sNo="+<?=$row['sNo']?>;
}
</script>
-- 삭제 파일
<?
// 서버
$servername = "localhost";
$username = "root";
$password = "autoset";
$dbname = "ppk";
$conn = new mysqli($servername, $username, $password, $dbname);
$sNo = $_REQUEST['sNo'];
// 동작확인
echo $sNo. "<br>";
// 삭제 쿼리문
$SQL = "delete from examtbl where sNo='$sNo' ";
$conn -> query($SQL);
// 동작 확인
echo $sNo;
// 동작시 해당 파일 화면으로 이동
header('Location:/0406/list0406.php');
?>
<table>
<tr>
<td colspan=2 align=center>
<input type=button onClick="script:location.href='/0406/list0406.php'" value="목록보기">
</td>
</tr>
</table>
스크립트를 활용하는 부분이 아직은 많이 미숙하다.
쿼리문을 작성해서 버튼 동작하는 방법이 재밌었다.
리스트를 추가, 수정, 삭제 하는 방법에 조금 익숙해진것 같다.
오류 발생부분을 다시금 작성해보며 오류발생을 줄이도록 해야겠다.