일단 이전 글에서 DB 설정한 중 글 작성 시점의 시간을 디폴드 값으로 저장하려고 date컬럼의 디폴트 값을 현재시간으로 입력되도록 변경하였다.
TimeStamp 컬럼 디폴트 값 변경 방법
디폴트 값을 현재시간으로 지정
ALTER TABLE tableName MODIFY columnName TIMESTAMP DEFAULT CURRENT_TIMESTAMP;
변경이 일어날 때마다 값을 현재시간으로 지정
ALTER TABLE tableName MODIFY columnName TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
글 작성한 것을 DB에 insert 할 수 있는 Write.php 와 Write_a.php 페이지를 추가하였다.
Write.php
<!DOCTYPE>
<html>
<head>
<meta charset = 'utf-8'>
</head>
<style>
table.table2{
border-collapse: separate;
border-spacing: 1px;
text-align: left;
line-height: 1.5;
border-top: 1px solid #ccc;
margin : 20px 10px;
}
table.table2 tr {
width: 50px;
padding: 10px;
font-weight: bold;
vertical-align: top;
border-bottom: 1px solid #ccc;
}
table.table2 td {
width: 100px;
padding: 10px;
vertical-align: top;
border-bottom: 1px solid #ccc;
}
</style>
<body>
<form method = "post" action = "Write_a.php">
<table style="padding-top:50px" align = center width=900 border=0 cellpadding=2 >
<tr>
<td height=20 align= center bgcolor=#ccc><font color=white> 글쓰기</font></td>
</tr>
<tr>
<td bgcolor=white>
<table class = "table2">
<tr>
<td>작성자</td>
<td><input type = text name = name size=20> </td>
</tr>
<tr>
<td>제목</td>
<td><input type = text name = title size=60></td>
</tr>
<tr>
<td>내용</td>
<td><textarea name = content cols=85 rows=15></textarea></td>
</tr>
<tr>
<td>비밀번호</td>
<td><input type = password name = pw size=10 maxlength=10></td>
</tr>
</table>
<center>
<input type = "submit" value="작성">
</center>
</td>
</tr>
</table>
</form>
</body>
</html>
Write_a.php
<?php
$mysqli = mysqli_connect("127.0.0.1","admin0","0000","normaltic1","3306") or die("fail");
if ($mysqli->connect_errno) {
die('Connect Error: '.$mysqli->connect_error);
}
$id = $_POST[name]; //Writer
$pw = $_POST[pw]; //Password
$title = $_POST[title]; //Title
$content = $_POST[content]; //Content
$URL = './Board.php'; //return URL
$query = "insert into boardList (title, content, id, pw) values ('$title', '$content', '$id', '$pw')";
$result = $mysqli->query($query);
if($result){
?> <script>
alert("<?php echo "글이 등록되었습니다."?>");
location.replace("<?php echo $URL?>");
</script>
<?php
}else{
echo "FAIL";
echo '<br>';
echo $_POST[name];
echo '<br>';
echo $_POST[title];
}
mysqli_close($connect);
?>
이전 글들에서는 같은 페이지 안에서 DB를 연동을 처리했는데 이번에는 분리해서 작동하는 페이지로 만들었다.
DB 연동 관련 기능을 하는 Write_a.php 파일을 php코드에서 include 하여 사용하는 게 아니고 form 태그에서 input타입을 통해 파라미터를 넘겨 작동할 수 있다는 것을 알게 되었다.
<input type=“submit”>
<input type=“submit”>은 서버의 폼 핸들러(form handler)로 폼 데이터(form date)를 전송하는 제출 버튼(submit button)을 정의합니다.
insert 테스트 사진
참조
[MySQL] ALTER TABLE table ... TIMESTAMP
기존에 DATETIME으로만 지정했던 컬럼에 기본값을 넣어줄 필요가 생겼다. INSERT INTO 당시의 시간을 기본값으로 하려면 아래와 같이 하면 된다. ALTER TABLE tableName MODIFY columnName TIMESTAMP DEFAULT CURR..
hayjo.tistory.com
http://tcpschool.com/html-input-types/submit
코딩교육 티씨피스쿨
4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등
tcpschool.com
'Project > APM웹서버' 카테고리의 다른 글
게시판 만들기 ( 로그인한 아이디로 글 작성 ) (0) | 2021.11.13 |
---|---|
게시판 만들기 ( DB 데이터 불러오기 ) (0) | 2021.11.08 |
게시판 만들기 ( DB설정 ) (0) | 2021.11.04 |
sha256 해쉬로 로그인 구현하기 (0) | 2021.10.28 |
로그인 인증 비밀번호 해시 ( password_verify ) (0) | 2021.10.27 |