SlideShare a Scribd company logo
1 of 11
Download to read offline
- 1 -
1. ํ”„๋กœ๊ทธ๋žจ ๊ฐœ์š”
๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง„ ๊ฒŒ์‹œํŒ
ลธ ์ œ๋ชฉ, ๋‚ด์šฉ, ๋น„๋ฐ€๋ฒˆํ˜ธ๋กœ ๊ธ€ ์ž‘์„ฑ ๊ฐ€๋Šฅ
ลธ ๊ธ€ ์ž‘์„ฑ ์ˆœ์„œ๋Œ€๋กœ ๋ฒˆํ˜ธ๊ฐ€ ๋ถ™์Œ
ลธ ๋ฒˆํ˜ธ ์ˆœ์„œ๋Œ€๋กœ ๋ฆฌ์ŠคํŠธ ์ž‘์„ฑ
ลธ ๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธ ํ›„ ๊ธ€ ์‚ญ์ œ ๊ฐ€๋Šฅ
ลธ ๋‹ค์Œ๊ธ€, ์ด์ „๊ธ€๋กœ ์ด๋™ ๊ฐ€๋Šฅ
ลธ ์ ‘์† ๋ฐฉ๋ฒ• :ใ€€hi4003.cafe24.com/list.php๋กœ ์ ‘์†
2.๊ตฌ์„ฑ ๋ฐ ์‚ฌ์šฉ ํ”„๋กœ๊ทธ๋žจ
ลธ Front-end : HTML, CSS, Javascript / Atom
ลธ Back-end : PHP, Mysql / Atom
ลธ ์„œ๋ฒ„ :ใ€€์›น ํ˜ธ์ŠคํŒ… (hi4003.cafe24.com) / Putty, FileZilla(FTP)
3.๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค
ลธ PC์— Apache์™€ ์‚ฌ์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ์„ค์น˜ํ•œ๋‹ค.
ลธ Bitnami๋กœ ์„œ๋ฒ„, DB๋ฅผ ์—ฐ๊ฒฐํ•œ ๋’ค ์—๋””ํ„ฐ(Atom)์„ ์—ด์–ด ์†Œ์Šค๋ฅผ ์ž‘์„ฑ, ์ˆ˜์ •ํ•œ๋‹ค.
ลธ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ผœ๊ณ  localhost/board/xxxx.php๋กœ ์ ‘์†ํ•ด์„œ ์ˆ˜์ •๋œ ํŽ˜์ด์ง€๋ฅผ ํ™•์ธํ•œ๋‹ค.
ลธ cafe24์—์„œ ๋ฐ›์€ ๋„๋ฉ”์ธ์œผ๋กœ FileZilla์™€ Putty / HeidiSQL์— ์ ‘์†ํ•œ๋‹ค.
ลธ FileZilla๋ฅผ ์ผœ๊ณ  ์ ‘์† ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•œ ํ›„ PC์— ์ €์žฅ๋˜์–ด์žˆ๋Š” xxxx.php๋ฅผ ์„œ๋ฒ„์˜ ๊ฐ™์€
ํŒŒ์ผ์— ๋ฎ์–ด์“ด๋‹ค.
ลธ hi4003.cafe24.com๋กœ ์ ‘์†ํ•ด์„œ ์‹ค์ œ๋กœ ๋ฐ˜์˜ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.
ลธ DB ์ˆ˜์ •์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ Putty๋ฅผ ์‹คํ–‰์‹œํ‚ค๊ณ  mysql์— ์ ‘์†ํ•œ ๋’ค SQL์„ ์ž‘์„ฑํ•œ๋‹ค.
ลธ HeidiSQL์„ ์ผœ๊ณ  mysql์— ์ ‘์†ํ•ด๋„ DB๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
4. ํ”„๋กœ๊ทธ๋žจ ์„ค๊ณ„ ๋ฐ ํŒŒ์ผ ์ •๋ณด
ํ”„๋กœ๊ทธ๋žจ ๋ช… :ใ€€๋‚˜์˜ ์ฒซ ๊ฒŒ์‹œํŒ
์ž‘์„ฑ์ž :ใ€€16038020 ๊น€ํฌ์ง„ใ€€
- 2 -
ลธ list.php๋Š” DB์—์„œ ๊ฐ’์„ ๋ถˆ๋Ÿฌ์™€์„œ ๊ธ€๋ฒˆํ˜ธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ตœ์‹ ๊ธ€์ด ๋งจ ์œ„๋กœ ์˜ค๋„๋ก ๋‚ด๋ฆผ
์ฐจ์ˆœ์œผ๋กœ ํ์„ ์ •๋ ฌํ•ด์„œ ๊ธ€๋ฒˆํ˜ธ, ์ œ๋ชฉ, ์ž‘์„ฑ ์‹œ๊ฐ„, ์กฐํšŒ์ˆ˜๋ฅผ ๋ณด์—ฌ์ค€๋‹ค.
ลธ list.php์—์„œ ๊ธ€์“ฐ๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด write.php๋กœ ์ด๋™ํ•œ๋‹ค.
ลธ write.php์—์„œ ์ œ๋ชฉ, ๋‚ด์šฉ, ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด insert.php๊ฐ€ DB์— ๋ฐ˜์˜ํ•œ๋‹ค.
ลธ list.php์—์„œ ๊ธ€ ์ œ๋ชฉ์ด๋‚˜ ๋ฒˆํ˜ธ๋ฅผ ํด๋ฆญํ•˜๋ฉด ๊ธ€์„ ์ฝ๋Š” ํŽ˜์ด์ง€์ธ read.php๋กœ ์ด๋™ํ•œ๋‹ค.
ลธ read.php์—์„œ ๊ธ€ ์‚ญ์ œ๋ฅผ ๋ˆ„๋ฅด๋ฉด delete.php๋กœ ์ด๋™ํ•œ๋‹ค.
ลธ delete.php์—์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด confirm.php์—์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋งž๋Š”์ง€ ํ™•์ธํ•˜๊ณ 
DB์— ๋ฐ˜์˜ํ•œ๋‹ค.
5. DB ์„ค๊ณ„
board๏ผˆid, pass, title, content, wdate, ip, view๏ผ‰ใ€€PK={ id }
ลธ id: ๊ธ€ ๋ฒˆํ˜ธ, ์ฃผํ‚ค, ์ž๋ฃŒํ˜•์€ int, 1๋ถ€ํ„ฐ ์ž๋™์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ถ€์—ฌ๋˜๋„๋ก unsigned
์™€ AUTO_INCREMENT๋ฅผ ์‚ฌ์šฉํ•จ
ลธ pass: ๋น„๋ฐ€๋ฒˆํ˜ธ, ์ž๋ฃŒํ˜•์€ ๋ฌธ์ž์—ด
ลธ title: ๊ธ€์˜ ์ œ๋ชฉ, ์ž๋ฃŒํ˜•์€ ๋ฌธ์ž์—ด
ลธ content: ๊ธ€์˜ ๋‚ด์šฉ, ์ž๋ฃŒํ˜•์€ text
ลธ wdate: ๊ธ€์„ ์“ด ๋‚ ์งœ, ์ž๋ฃŒํ˜•์€ datetime
ลธ ip: ์ž‘์„ฑ์ž์˜ ip์ฃผ์†Œ, ์ž๋ฃŒํ˜•์€ ๋ฌธ์ž์—ด
ลธ view: ์กฐํšŒ์ˆ˜, ์ž๋ฃŒํ˜•์€ int, ์ดˆ๊ธฐ๊ฐ’์€ 0
ลธ ๋ชจ๋“  ์†์„ฑ์€ NULL์ด ์•„๋‹˜
- 3 -
6. SQL๋ฌธ
7. ๋ฉ”์ธ ์ฝ”๋“œ
db_info.php
<?php
$conn = mysql_connect("localhost","xxx","xxx");
mysql_select_db("board",$conn);
?>
ลธ DB ์ ‘์† ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ํŒŒ์ผ. DB์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” xxx๋กœ ํ‘œ์‹œํ•จ
write.php
...
<?php
header('Content-Type: text/html; charset=UTF-8');
?>
</head>
<body topmargin=0 leftmargin=0 text=#464646>
<center>
<BR>
<!--์ž…๋ ฅ๋œ ๊ฐ’์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ํผ์„ ๋งŒ๋“ฌ-->
<form action=insert.php method=post>
<table width=580 border=0 cellpadding=2 cellspacing=1 bgcolor=#777777>
<tr>
<td height=20 align=center bgcolor=#999999>
<font color=white><B>๊ธ€์“ฐ๊ธฐ</B></font>
</td>
</tr>
<!-- ์ž…๋ ฅ๋ถ€๋ถ„ -->
- 4 -
<tr>
<td bgcolor=white>&nbsp;
<TABLE>
<tr>
<td width=60 align=left>์ œ ๋ชฉ</td>
<td align=left>
<INPUT type=text name=title size=60 maxlength=35>
</td>
</tr>
<tr>
<td width=60 align=left>๋‚ด์šฉ</td>
<td align=left>
<TEXTAREA name=content cols=65 rows=15></TEXTAREA>
</td>
</tr>
<tr>
<td width=60 align=left>๋น„๋ฐ€๋ฒˆํ˜ธ</td>
<td align=left>
<INPUT type=password name=pass size=8 maxlength=8>
</td>
</tr>
<tr>
<td colspan=10 align=center>
<INPUT type=submit value="์ €์žฅ">&nbsp;
<INPUT type=button value="๋ชฉ๋ก" onclick="history.back(-1)">
</td>
</tr>
</TABLE>
</td>
</tr>
<!--์ž…๋ ฅ๋ถ€๋ถ„ ๋-->
ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ
๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
ลธ POSTํ˜•์‹์„ ์ด์šฉํ•ด์„œ ํผ์„ ๋งŒ๋“ค์–ด์ฃผ์—ˆ๋‹ค. ์ €์žฅ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ž…๋ ฅ๋œ ๊ฐ’๋“ค์ด action
๋’ค์— ์“ฐ์—ฌ ์žˆ๋Š” insert,php๋กœ ์ด๋™ํ•œ๋‹ค.
ลธ ๋ชฉ๋ก ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ด์ „ ํŽ˜์ด์ง€์ธ list.php๋กœ ์ด๋™ํ•œ๋‹ค.
insert.php
<?php
header('Content-Type: text/html; charset=UTF-8');
include "db_info.php";
$title= $_POST["title"];
$content = $_POST["content"];
$pass = $_POST["pass"];
$query="INSERT INTO board(id, pass, title, content, wdate, ip, view)
VALUES('','$pass','$title','$content',now(),'{$_SERVER['REMOTE_ADDR']}',0)";
$result=mysql_query($query, $conn);
//DB์—ฐ๊ฒฐ์ข…๋ฃŒ
- 5 -
mysql_close($conn);
//1์ดˆ ๋’ค ๋ฆฌ์ŠคํŠธ๋กœ
echo ("<meta http-equiv='Refresh' content='1;URL=list.php'>");
?>
<center>
<font size=2>์ •์ƒ์ ์œผ๋กœ ์ €์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.</font>
ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ
๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
ลธ ์ฟผ๋ฆฌ๋ฌธ์„ ํ†ตํ•ด DB์— ๊ฐ’์„ ๋„ฃ์–ด์ค€ ๋’ค DB์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•œ๋‹ค.
ลธ 1์ดˆ ํ›„ list.php๋กœ ์ด๋™ํ•œ๋‹ค.
list.php
<?php
extract($_POST);
extract($_SERVER);
include "db_info.php";
// mysql_select_db("");
$query = "select * from board order by id desc";
$result = mysql_query($query, $conn);
header('Content-Type: text/html; charset=UTF-8');
?>
...
<?php
while($row = mysql_fetch_array($result)){
?>
<tr>
<td bgcolor="#ffffff" align=center><a href="read.php?num=<?=$row['id']?>">
<?=$row['id']?></a>
<td bgcolor="#ffffff" align=center><a href="read.php?num=<?=$row['id']?>">
<?=strip_tags($row['title'],'<b><i>');?></a>
<td bgcolor="#ffffff" align=center><?=$row['wdate']?>
<td bgcolor="#ffffff" align=center><?=$row['view']?>
<?php
}
mysql_close($conn);
?>
</table>
<p>
<a href=write.php>[Write]</a>
</center>
ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ
๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
ลธ board์˜ ํ๋“ค์„ id๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ตœ์‹  ๊ธ€์ด ๋งจ ์œ„๋กœ ์˜ค๋„๋ก ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ณ 
while๋ฌธ์„ ์ด์šฉํ•ด์„œ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด์ค€ ๋‹ค์Œ DB์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•œ๋‹ค.
- 6 -
ลธ ๊ฐ ๊ธ€ ๋ฒˆํ˜ธ, ๊ธ€ ์ œ๋ชฉ์„ ํด๋ฆญํ•˜๋ฉด read.php๋กœ ์ด๋™ํ•˜๋Š”๋ฐ, id๋ฅผ num์œผ๋กœ ๋„˜๊ฒจ์ค€๋‹ค.
read.php
...
<?php
header('Content-Type: text/html; charset=UTF-8');
?>
</head>
<body topmargin=0 leftmargin=0 text=#464646>
<center>
<br>
<?php
include "db_info.php";
$id = $_GET["num"];
$query = "select * from board where id=$id";
$result = mysql_query($query, $conn);
$row=mysql_fetch_array($result);
?>
<table width=600 border=0 cellpadding=2 cellspacing=1 bgcolor=#777777>
<tr>
<td height=20 align=center bgcolor=#777777 colspan=4>
<font color=white><B><?=$row['title']?></font>
</td>
</tr>
<tr>
<td bgcolor=#dddddd width=50 height=20 align=center>๋‚ &nbsp;์งœ</td>
<td bgcolor=white width=250><?=$row['wdate']?></td>
<td bgcolor=#dddddd width=50 height=20 align=center>์กฐํšŒ์ˆ˜</td>
<td bgcolor=white width=250><?=$row['view']?></td>
</tr>
<tr>
<td bgcolor=white colspan=4>
<font color=black>
<pre><?=$row['content']?></pre>
</font>
</td>
</tr>
<!-- ๊ธฐํƒ€๋ฒ„ํŠผ -->
<tr>
<td colspan=4 bgcolor=white>
<table width=100%>
<tr>
<td width=200 height=20 align=left>
<a href=list.php>[๋ชฉ๋ก๋ณด๊ธฐ]</a>
<a href=write.php>[๊ธ€์“ฐ๊ธฐ]</a>
<a href=delete.php?num=<?=$row['id']?>>[๊ธ€์‚ญ์ œ]</a>
</td>
- 7 -
<td align=right>
<?php
$query = mysql_query("select id from board where id > $id limit 1",
$conn);
$prev_id = mysql_fetch_array($query);
if($prev_id[id]){
echo "<a href=read.php?num=$prev_id[id]>[์ด์ „] </a>";
}else{
echo "[์ด์ „]";
}
?>
<?php
$query = mysql_query("select id from board where id < $id
order by id desc limit 1", $conn);
$next_id = mysql_fetch_array($query);
if($next_id['id']){
echo "<a href=read.php?num=$next_id[id]> [๋‹ค์Œ]</a>";
}else{
echo "[๋‹ค์Œ]";
}
?>
...
<?php
$result=mysql_query("update board set view = view + 1 where id=$id");
mysql_close($conn);
?>
ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ
๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
ลธ num์„ GET๋ฐฉ์‹์œผ๋กœ ๋ฐ›์•„์„œ id์— ์ €์žฅํ•œ๋‹ค. id๊ฐ€ ๋™์ผํ•œ ํ๋ฅผ ์ถ”์ถœํ•ด์„œ ๊ฐ ํ•ญ๋ชฉ์— ๋งž
๊ฒŒ ๋ณด์—ฌ์ค€๋‹ค.
ลธ ์ด์ „ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ํ˜„์žฌ์˜ id๋ณด๋‹ค ์ž‘์€ id์˜ ๊ธ€๋กœ ์ด๋™ํ•œ๋‹ค. prev_id์˜ ๊ฐ’์„ num
์œผ๋กœ ๋„˜๊ฒจ์ค€๋‹ค.
ลธ ๋‹ค์Œ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ํ˜„์žฌ์˜ id๋ณด๋‹ค ํฐ id์˜ ๊ธ€๋กœ ์ด๋™ํ•œ๋‹ค. next_id์˜ ๊ฐ’์„ num์œผ
๋กœ ๋„˜๊ฒจ์ค€๋‹ค.
ลธ ์กฐํšŒ์ˆ˜๋ฅผ 1์”ฉ ์˜ฌ๋ ค์ค€ ๋’ค DB์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•œ๋‹ค.
delete.php
...
<?php
header('Content-Type: text/html; charset=UTF-8');
?>
</head>
<body topmargin=0 leftmargin=0 text=#464646>
- 8 -
<?php
$id = $_GET["num"];
?>
<center>
<br>
<form action=confirm.php?num=<?=$id?> method=post>
<table width=300 align=center border=0 cellpadding=2 cellspacing=1
bgcolor=#777777>
<tr>
<td height=20 align=center bgcolor=#999999>
<font color=white>๋น„ ๋ฐ€ ๋ฒˆ ํ˜ธ ํ™• ์ธ</font>
</td>
</tr>
<tr>
<td align=center>
<font color=white><B>๋น„๋ฐ€๋ฒˆํ˜ธ : </b>
<INPUT type=password name=pass size=8>
<INPUT type=submit value="ํ™• ์ธ">
<INPUT type=button value="์ทจ ์†Œ" onclick="history.back(-1)">
...
ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ
๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
ลธ num์„ GET๋ฐฉ์‹์œผ๋กœ ๋ฐ›์•„์„œ id์— ์ž…๋ ฅํ•œ๋‹ค.
ลธ POSTํ˜•์‹์„ ์ด์šฉํ•ด์„œ ํผ์„ ๋งŒ๋“ค์–ด์ฃผ์—ˆ๋‹ค. ํ™•์ธ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ž…๋ ฅ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€
action ๋’ค์— ์“ฐ์—ฌ ์žˆ๋Š” confirm,php๋กœ ์ด๋™ํ•˜๋ฉด์„œ id๋ฅผ num์œผ๋กœ ๋ณด๋‚ด์ค€๋‹ค.
ลธ ์ทจ์†Œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ด์ „ ํŽ˜์ด์ง€์ธ read.php๋กœ ์ด๋™ํ•œ๋‹ค.
confirm.php
<?php
header('Content-Type: text/html; charset=UTF-8');
include "db_info.php";
$id = $_GET["num"];
$result=mysql_query("SELECT pass FROM board WHERE id=$id",$conn);
$row=mysql_fetch_array($result);
$pass=$_POST[pass];
if($pass==$row[pass])
{
$query = "DELETE FROM board WHERE id=$id";
$result=mysql_query($query,$conn);
}
else{
echo("<script>
alert('๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ‹€๋ฆฝ๋‹ˆ๋‹ค.');
history.go(-1);
</script>
");
exit;
}
?>
- 9 -
<center>
<meta http-equiv="refresh" content='1; URL=list.php'>
<FONT size=2>์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.</font>
</center>
ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ
๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
ลธ num์„ GETํ˜•์‹์œผ๋กœ ๋ฐ›์•„์„œ id์— ๋„ฃ์–ด์ค€๋‹ค. id๊ฐ€ ๋™์ผํ•œ ํ๋ฅผ ์ถ”์ถœํ•ด์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ
๋น„๊ตํ•œ๋‹ค.
ลธ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ‹€๋ ธ์„ ๋•Œ์—๋Š” ๊ฒฝ๊ณ ์ฐฝ์ด ๋œจ๋ฉด์„œ ๋‹ค์‹œ ์ž…๋ ฅํ•˜๊ฒŒ ํ•œ๋‹ค.
ลธ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋งž์•˜์„ ๋•Œ์—๋Š” id๊ฐ€ ๋™์ผํ•œ ํ๋ฅผ DB์—์„œ ์‚ญ์ œํ•˜๊ณ  1์ดˆ ๋’ค list.php๋กœ ๋Œ
์•„๊ฐ€๊ฒŒ ํ•œ๋‹ค.
8. ์‹คํ–‰ ๊ฒฐ๊ณผ
<๊ธ€์“ฐ๊ธฐ>
<DB๋ฐ˜์˜ ํ›„>
<๊ธ€ ๋ชฉ๋ก>
- 10 -
<๊ธ€ ๋‚ด์šฉ ๋ณด๊ธฐ>
<๊ธ€ ์‚ญ์ œ>
<๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ‹€๋ฆฐ ๊ฒฝ์šฐ>
<๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋งž์€ ๊ฒฝ์šฐ>
<์‚ญ์ œ ์ „ DB>
<์‚ญ์ œ ํ›„ DB>
<DB๋ฐ˜์˜ ํ›„>
9. ํ‰๊ฐ€ ๋ฐ ๋Š๋‚€์ 
ยง ๊ธฐ๋ณธ์ ์ธ ๊ฒŒ์‹œํŒ์˜ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ด๋‚ด์—ˆ๋‹ค.
ยง ๋กœ๊ทธ์ธ ์—†์ด๋„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ธ€ ์ž‘์„ฑ๊ณผ ๊ธ€ ์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.
ยง ๋””์ž์ธ์ด ์‹ฌํ”Œํ•˜๋‹ค.
ยง ๋ณด์•ˆ์—๋Š” ์ทจ์•ฝํ•˜๋ฏ€๋กœ ์‹ค์ œ๋กœ ์“ฐ์ด์ง€๋Š” ๋ชปํ•œ๋‹ค.
- 11 -
์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ํ•ด๋ณธ ์ ์ด ์—†์–ด์„œ ์ฒ˜์Œ ๊ฒŒ์‹œํŒ์„ ๋งŒ๋“ค์–ด์•ผ ํ–ˆ์„ ๋•Œ๋Š”, ๋‚ด๊ฐ€ ์•„์ง html
๋„ ๋ชจ๋ฅด๋Š”๋ฐ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„๊นŒ? ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์–ด๋–ค ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ• ์ง€, ์–ด๋–ค
์„œ๋ฒ„, ์–ด๋–ค DB๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ• ์ง€ ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ–ˆ์—ˆ๋‹ค. php๊ฐ€ ์„œ๋ฒ„ ์—ฐ๊ฒฐํ•˜๊ธฐ์—” ๊ฐ„๋‹จํ•˜๋‹ค๊ณ 
ํ•ด์„œ APM์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค.
๋‹คํ–‰ํžˆ ์ด๋ฒˆ ํ•™๊ธฐ์— ๊ฐ™์ด ๋“ฃ๋Š” ์ˆ˜์—… ์ค‘์—์„œ html, css, javascript ๊ด€๋ จ๋œ ์ˆ˜์—…์ด ์žˆ์–ด์„œ
๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ์— ๋งŽ์€ ๋„์›€์ด ๋๋‹ค. php๋Š” ์ฑ…์œผ๋กœ ์ฐจ๊ทผ์ฐจ๊ทผ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ผ๋‹จ ๊ฒŒ์‹œํŒ ๋งŒ
๋“ค๊ธฐ์— ํ•„์š”ํ•œ ๋ฌธ๋ฒ•์„ ์šฐ์„ ์‹œ ํ•˜์—ฌ ๊ณต๋ถ€ํ–ˆ๋‹ค.
์ œ์ผ ์–ด๋ ค์› ๋˜ ๋ถ€๋ถ„์€ ์—ญ์‹œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ จ ๋ถ€๋ถ„์ด์—ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์„ค๊ณ„ํ•˜๊ฑฐ๋‚˜
์งˆ์˜๋ฌธ์„ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋ฌธ์ œ๊ฐ€ ์—†์—ˆ๋Š”๋ฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์„œ๋ฒ„๋ฅผ ์—ฐ๊ฒฐํ•˜๊ณ  ๋ฐ˜์˜ํ•˜๋Š” ๋ถ€
๋ถ„์—์„œ POST๋ฐฉ์‹์ด๋‚˜ GET๋ฐฉ์‹์— ๋Œ€ํ•œ ์‹ฌ๋„ ์žˆ๋Š” ์ดํ•ด๊ฐ€ ํ•„์š”ํ–ˆ๋‹ค.
์›นํ˜ธ์ŠคํŒ…์—์„œ๋„ ์ •๋ง ๊ณ ๋‚œ์„ ๋งŽ์ด ๊ฒช์—ˆ๋‹ค. ์ฒ˜์Œ์—” ๊ด€์‹ฌ ์žˆ๋Š” ๋ถ„์•ผ์˜€๋˜ AWS๋กœ ํ˜ธ์ŠคํŒ…์„
ํ•˜๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ ์ž๋ฃŒ๊ฐ€ ๋„ˆ๋ฌด ์—†์–ด์„œ cafe24์—์„œ ํ˜ธ์ŠคํŒ…์„ ์‹œ์ž‘ํ–ˆ๋‹ค. cafe24๋Š” ์ง€๊ธˆ๋„ ๋งŽ
์ด ์‚ฌ์šฉ๋˜๋Š” ๊ณณ์ด๋ผ์„œ ํ”„๋กœ๊ทธ๋žจ๋งŒ ๋ช‡ ๊ฐœ ๋” ์„ค์น˜ํ•˜๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ์ด์šฉ ๊ฐ€๋Šฅํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜
์™œ์ธ์ง€ localhost์—์„œ๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์ด ์ž˜ ๋Œ์•„๊ฐ€๋˜ ํ”„๋กœ๊ทธ๋žจ์ด DB๊ด€๋ จ ๋ฌธ์ œ๊ฐ€ ์ผ์–ด๋‚ฌ๋‹ค.
์„œ๋ฒ„๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์–ด์„œ ์ ‘์†ํ•˜๋Š” ๊ฑด ๋˜๋Š”๋ฐ DB์—์„œ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ๊ฐ’์„ ๋ฐ˜์˜ํ•˜๋Š” ๋ถ€๋ถ„
์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜๋‹ค. DB์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒƒ๋„ ์•„๋‹ˆ๊ณ  DB์™€ ์„œ๋ฒ„๊ฐ€ ์—ฐ๋™๋˜์–ด์žˆ์ง€
์•Š์„ ๋ฆฌ๊ฐ€ ์—†๋Š”๋ฐ ์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์„œ ๊ต‰์žฅํžˆ ์ขŒ์ ˆํ–ˆ๋‹ค.
ํ•œ๋ฒˆ์€ ๋ณด๊ณ ์„œ๋ฅผ ์“ฐ๋Š” ๋„์ค‘์— ๋ธ”๋ฃจ ์Šคํฌ๋ฆฐ์ด ๋œฌ ์ ์ด ์žˆ์—ˆ๋Š”๋ฐ phpํŒŒ์ผ์ด๋‚˜ DB๋Š” ๊ฑด
๋“ค์ง€ ์•Š์•˜๋Š”๋ฐ ๊ฐ‘์ž๊ธฐ myphpAdmin์— ๋กœ๊ทธ์ธ๋„ ์•ˆ ๋˜๊ณ  ๋‹น์—ฐํžˆ DB์—ฐ๋™๋„ ์•ˆ๋˜์–ด์„œ ๋‹น
ํ™ฉํ•œ ์ ์ด ์žˆ์—ˆ๋‹ค. ๋น„ํŠธ๋‚˜๋ฏธ์—์„œ DB ํฌํŠธ๋ฒˆํ˜ธ๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋‹ˆ ๋‹ค์‹œ myphpAdmin์€ ๋กœ๊ทธ์ธ
์ด ๋˜์—ˆ๋Š”๋ฐ DB๋Š” ์—ฌ์ „ํžˆ ์—ฐ๋™์ด ์•ˆ ๋˜์–ด ์žˆ์–ด์„œ ๋‹ค์‹œ ๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋ณด๋‹ค๊ฐ€ db_info.php
์—์„œ local๋’ค์— ๋ฐ”๋€ ํฌํŠธ๋ฒˆํ˜ธ๋ฅผ ์ถ”๊ฐ€ํ•ด์„œ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.
์ฒ˜์Œ์œผ๋กœ ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์‹œ์ž‘ํ•ด์„œ ๋งŒ๋“  ๊ฒŒ์‹œํŒ์„ ์ด๋ ‡๊ฒŒ ์‹ค์ œ๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ํ˜ธ์ŠคํŒ…๊นŒ
์ง€ ํ•ด๋ณผ ์ˆ˜ ์žˆ์–ด์„œ ๋„ˆ๋ฌด ์ข‹์€ ๊ฒฝํ—˜์ด์—ˆ๋‹ค. ์‹œ๊ฐ„์ด ๋ชจ์ž๋ผ์„œ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•œ ๊ธ€ ์ˆ˜์ • ๊ธฐ๋Šฅ
๋„ ๋‹ค์Œ์— ์ข…๊ฐ•ํ•˜๊ณ  ๋‚˜์„œ ๋งˆ์ € ๊ตฌํ˜„ํ•ด ๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์–ด๋ ค์šด ์ ๋„ ๋งŽ์•˜์ง€๋งŒ ๊ทธ
๋งŒํผ ๋ณด๋žŒ ์žˆ์—ˆ๊ณ  ํ•œ์ธต ์„ฑ์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด์„œ ๋‹คํ–‰์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค.
10.ํ•™์Šต ์ž๋ฃŒ
ลธ ๋‡Œ๋ฅผ ์ž๊ทนํ•˜๋Š” PHP / ํ•œ๋น› ๋ฏธ๋””์–ด
ลธ ์ฐจ์„ธ๋Œ€ ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ / ํ•œ๋น› ์•„์นด๋ฐ๋ฏธ
ลธ ๊ตฌ๊ธ€ ๊ฒ€์ƒ‰

More Related Content

What's hot

Html5 ์‹œ๋งจํ‹ฑํƒœ๊ทธ
Html5 ์‹œ๋งจํ‹ฑํƒœ๊ทธHtml5 ์‹œ๋งจํ‹ฑํƒœ๊ทธ
Html5 ์‹œ๋งจํ‹ฑํƒœ๊ทธ์€์‹ฌ ๊ฐ•
ย 
HTML5 & CSS3
HTML5 & CSS3HTML5 & CSS3
HTML5 & CSS3Eulsoo Jung
ย 
แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4
แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4
แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4์„ฑ์ผ ํ•œ
ย 
Servlet&jsp 1แ„Œแ…กแ†ผ
Servlet&jsp 1แ„Œแ…กแ†ผServlet&jsp 1แ„Œแ…กแ†ผ
Servlet&jsp 1แ„Œแ…กแ†ผJeongBong Kim
ย 
๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐ
๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐ๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐ
๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐKyoung Up Jung
ย 
RESTful API ์„ค๊ณ„
RESTful API ์„ค๊ณ„RESTful API ์„ค๊ณ„
RESTful API ์„ค๊ณ„Jinho Yoo
ย 
แ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ต
แ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ตแ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ต
แ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ต์„ฑ์ผ ํ•œ
ย 
Web Standards HTML5_CSS3
Web Standards HTML5_CSS3Web Standards HTML5_CSS3
Web Standards HTML5_CSS3Eulsoo Jung
ย 
ํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟ
ํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟ
ํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟThomas Hyunsik Kim
ย 
[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?
[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?
[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?Nts Nuli
ย 
์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€
์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€
์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€๋ผํ•œ์‚ฌ ์•„
ย 
[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผ
[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผ[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผ
[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผCheol Kang
ย 
๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ
๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ
๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ๋ผํ•œ์‚ฌ ์•„
ย 
Python ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐ
Python ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐPython ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐ
Python ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐ์„ฑ์ผ ํ•œ
ย 
WebStandards-Basic 1.Introduce
WebStandards-Basic 1.IntroduceWebStandards-Basic 1.Introduce
WebStandards-Basic 1.IntroduceEulsoo Jung
ย 
์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜
์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜
์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜dgmit2009
ย 
WebStandards-Basic 2.Semantic markup
WebStandards-Basic 2.Semantic markupWebStandards-Basic 2.Semantic markup
WebStandards-Basic 2.Semantic markupEulsoo Jung
ย 
์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.
์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.
์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.ssuser6dd171
ย 
WebStandards-Basic 3.Starting style
WebStandards-Basic 3.Starting styleWebStandards-Basic 3.Starting style
WebStandards-Basic 3.Starting styleEulsoo Jung
ย 

What's hot (20)

Html5 ์‹œ๋งจํ‹ฑํƒœ๊ทธ
Html5 ์‹œ๋งจํ‹ฑํƒœ๊ทธHtml5 ์‹œ๋งจํ‹ฑํƒœ๊ทธ
Html5 ์‹œ๋งจํ‹ฑํƒœ๊ทธ
ย 
HTML5 & CSS3
HTML5 & CSS3HTML5 & CSS3
HTML5 & CSS3
ย 
แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4
แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4
แ„Žแ…ฅแ„‹แ…ณแ†ทแ„‡แ…ขแ„‹แ…ฎแ„‚แ…ณแ†ซ แ„Œแ…กแ„‡แ…กแ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ธแ„แ…ณ, แ„Œแ…ฆแ„‹แ…ตแ„แ…ฏแ„…แ…ต #4
ย 
Servlet&jsp 1แ„Œแ…กแ†ผ
Servlet&jsp 1แ„Œแ…กแ†ผServlet&jsp 1แ„Œแ…กแ†ผ
Servlet&jsp 1แ„Œแ…กแ†ผ
ย 
๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐ
๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐ๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐ
๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๋ฉฐ Django ์ดํ•ดํ•˜๊ธฐ
ย 
RESTful API ์„ค๊ณ„
RESTful API ์„ค๊ณ„RESTful API ์„ค๊ณ„
RESTful API ์„ค๊ณ„
ย 
แ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ต
แ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ตแ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ต
แ„Žแ…ขแ†บแ„‡แ…ฉแ†บ แ„‰แ…ตแ„Œแ…กแ†จแ„’แ…ขแ„‡แ…ฉแ„€แ…ต
ย 
Web Standards HTML5_CSS3
Web Standards HTML5_CSS3Web Standards HTML5_CSS3
Web Standards HTML5_CSS3
ย 
ํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟ
ํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟ
ํ”Œ๋ผ์Šคํฌ ํ…œํ”Œ๋ฆฟ
ย 
[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?
[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?
[2014๋„๋ฆฌ์„ธ๋ฏธ๋‚˜] ์‹œ๋งจํ‹ฑํ•œ HTML5 ๋งˆํฌ์—… ๊ตฌ์กฐ ์„ค๊ณ„, ์–ด๋–ป๊ฒŒ ํ• ๊นŒ?
ย 
์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€
์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€
์Šคํ”„๋ง์‹œํ๋ฆฌํ‹ฐ์™€ ์†Œ์…œ์—ฐ์Šต ์ดํ•ด๋ฅผ ์œ„ํ•œ ๊ธ€
ย 
[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผ
[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผ[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผ
[PyConKR 2014] 30๋ถ„๋งŒ์— ๋”ฐ๋ผํ•˜๋Š” ๋™์‹œ์„ฑ ์Šคํฌ๋ž˜ํผ
ย 
Basic html
Basic htmlBasic html
Basic html
ย 
๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ
๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ
๊ตฌ๊ธ€ ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(Seo) ์ •๋ฆฌ
ย 
Python ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐ
Python ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐPython ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐ
Python ์œผ๋กœ Slackbot ๊ฐœ๋ฐœํ•˜๊ธฐ
ย 
WebStandards-Basic 1.Introduce
WebStandards-Basic 1.IntroduceWebStandards-Basic 1.Introduce
WebStandards-Basic 1.Introduce
ย 
์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜
์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜
์ œ 4ํšŒ DGMIT R&D ์ปจํผ๋Ÿฐ์Šค : REST API - ๋ฆฌ์†Œ์Šค ์ง€ํ–ฅ์  ์•„ํ‚คํ…์ฒ˜
ย 
WebStandards-Basic 2.Semantic markup
WebStandards-Basic 2.Semantic markupWebStandards-Basic 2.Semantic markup
WebStandards-Basic 2.Semantic markup
ย 
์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.
์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.
์œ ๋‹ˆํ‹ฐ REST API๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ด์–ด ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์‚ฌ์šฉ.
ย 
WebStandards-Basic 3.Starting style
WebStandards-Basic 3.Starting styleWebStandards-Basic 3.Starting style
WebStandards-Basic 3.Starting style
ย 

Similar to [APM] Homepage bbs

chatbot-seminar-1806
chatbot-seminar-1806chatbot-seminar-1806
chatbot-seminar-1806juneyoungdev
ย 
์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ
์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ
์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ๋ด‰์กฐ ๊น€
ย 
XE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐ
XE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐXE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐ
XE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐSungbum Hong
ย 
๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js
๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js
๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js์—ฐ์›… ์กฐ
ย 
JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSP
JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSPJSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSP
JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSPMyungjin Lee
ย 
Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€
Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€
Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€yongwoo Jeon
ย 
Spring portfolio
Spring portfolioSpring portfolio
Spring portfoliossuser25d7ff
ย 
์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ Https ์ฃผ์†Œ๊นŒ์ง€
์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ  Https ์ฃผ์†Œ๊นŒ์ง€์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ  Https ์ฃผ์†Œ๊นŒ์ง€
์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ Https ์ฃผ์†Œ๊นŒ์ง€Kenu, GwangNam Heo
ย 
Delivrary intro
Delivrary introDelivrary intro
Delivrary introssuserbe6f89
ย 
์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)
์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)
์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)JoonHee Lee
ย 
Jang hyun su portfolio ppt
Jang hyun su portfolio pptJang hyun su portfolio ppt
Jang hyun su portfolio pptssuser25d7ff
ย 
์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ
์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ
์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ์„ฑ์ฃผ ์ด
ย 
Spring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผ
Spring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผSpring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผ
Spring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผJ.H Ahn
ย 
Unity cookbook 19
Unity cookbook 19Unity cookbook 19
Unity cookbook 19Jihun Soh
ย 
Modern web application with meteor
Modern web application with meteorModern web application with meteor
Modern web application with meteorJaeho Lee
ย 
์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจ
์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจ
์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจMichael Yang
ย 
แ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web Animations
แ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web Animationsแ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web Animations
แ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web AnimationsChang W. Doh
ย 

Similar to [APM] Homepage bbs (20)

chatbot-seminar-1806
chatbot-seminar-1806chatbot-seminar-1806
chatbot-seminar-1806
ย 
์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ
์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ
์›น์‚ฌ์ดํŠธ๊ธฐํš ๋ฐ ๊ด€๋ฆฌ
ย 
XE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐ
XE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐXE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐ
XE Open seminar ํ…Œ๋งˆ๋งŒ๋“ค๊ธฐ
ย 
๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js
๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js
๋ง‰ํ•˜๋Š” ์Šคํ„ฐ๋”” ์ฒซ ๋ฒˆ์งธ ๋งŒ๋‚จ Node.js
ย 
JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSP
JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSPJSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSP
JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ #05 HTML๊ณผ JSP
ย 
Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€
Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€
Html5 ์•ฑ๊ณผ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” 50๊ฐ€์ง€
ย 
Spring portfolio
Spring portfolioSpring portfolio
Spring portfolio
ย 
์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ Https ์ฃผ์†Œ๊นŒ์ง€
์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ  Https ์ฃผ์†Œ๊นŒ์ง€์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ  Https ์ฃผ์†Œ๊นŒ์ง€
์ฑ„ํŒ… ์†Œ์Šค๋ถ€ํ„ฐ Https ์ฃผ์†Œ๊นŒ์ง€
ย 
Delivrary intro
Delivrary introDelivrary intro
Delivrary intro
ย 
์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)
์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)
์›น๊ธฐ์ˆ  ์ดํ•ด (ํ”„๋ก ํŠธ์—”๋“œ ๊ธฐ์ดˆ)
ย 
Jang hyun su portfolio ppt
Jang hyun su portfolio pptJang hyun su portfolio ppt
Jang hyun su portfolio ppt
ย 
Html5
Html5 Html5
Html5
ย 
์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ
์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ
์—…๋ฌด์ž๋™ํ™”๋ฅผ ์œ„ํ•œ ํŒŒ์ด์ฌ
ย 
Spring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผ
Spring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผSpring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผ
Spring@mvcแ„‹แ…ฐแ†ธแ„’แ…ฉแ„‰แ…ณแ„แ…ตแ†ผ
ย 
web study 1day
web study 1dayweb study 1day
web study 1day
ย 
Unity cookbook 19
Unity cookbook 19Unity cookbook 19
Unity cookbook 19
ย 
Modern web application with meteor
Modern web application with meteorModern web application with meteor
Modern web application with meteor
ย 
์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจ
์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจ
์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋ฐฐ์šฐ๋Š” HTML5 & CSS3 ๊ฐ•์˜์ž๋ฃŒ 4์ผ์ฐจ
ย 
Class10
Class10Class10
Class10
ย 
แ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web Animations
แ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web Animationsแ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web Animations
แ„‹แ…กแ†ฏแ„‹แ…กแ„‡แ…ฉแ†ธแ„‰แ…ตแ„ƒแ…ก, Polymer: Web Components & Web Animations
ย 

[APM] Homepage bbs

  • 1. - 1 - 1. ํ”„๋กœ๊ทธ๋žจ ๊ฐœ์š” ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง„ ๊ฒŒ์‹œํŒ ลธ ์ œ๋ชฉ, ๋‚ด์šฉ, ๋น„๋ฐ€๋ฒˆํ˜ธ๋กœ ๊ธ€ ์ž‘์„ฑ ๊ฐ€๋Šฅ ลธ ๊ธ€ ์ž‘์„ฑ ์ˆœ์„œ๋Œ€๋กœ ๋ฒˆํ˜ธ๊ฐ€ ๋ถ™์Œ ลธ ๋ฒˆํ˜ธ ์ˆœ์„œ๋Œ€๋กœ ๋ฆฌ์ŠคํŠธ ์ž‘์„ฑ ลธ ๋น„๋ฐ€๋ฒˆํ˜ธ ํ™•์ธ ํ›„ ๊ธ€ ์‚ญ์ œ ๊ฐ€๋Šฅ ลธ ๋‹ค์Œ๊ธ€, ์ด์ „๊ธ€๋กœ ์ด๋™ ๊ฐ€๋Šฅ ลธ ์ ‘์† ๋ฐฉ๋ฒ• :ใ€€hi4003.cafe24.com/list.php๋กœ ์ ‘์† 2.๊ตฌ์„ฑ ๋ฐ ์‚ฌ์šฉ ํ”„๋กœ๊ทธ๋žจ ลธ Front-end : HTML, CSS, Javascript / Atom ลธ Back-end : PHP, Mysql / Atom ลธ ์„œ๋ฒ„ :ใ€€์›น ํ˜ธ์ŠคํŒ… (hi4003.cafe24.com) / Putty, FileZilla(FTP) 3.๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค ลธ PC์— Apache์™€ ์‚ฌ์šฉ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ์„ค์น˜ํ•œ๋‹ค. ลธ Bitnami๋กœ ์„œ๋ฒ„, DB๋ฅผ ์—ฐ๊ฒฐํ•œ ๋’ค ์—๋””ํ„ฐ(Atom)์„ ์—ด์–ด ์†Œ์Šค๋ฅผ ์ž‘์„ฑ, ์ˆ˜์ •ํ•œ๋‹ค. ลธ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ผœ๊ณ  localhost/board/xxxx.php๋กœ ์ ‘์†ํ•ด์„œ ์ˆ˜์ •๋œ ํŽ˜์ด์ง€๋ฅผ ํ™•์ธํ•œ๋‹ค. ลธ cafe24์—์„œ ๋ฐ›์€ ๋„๋ฉ”์ธ์œผ๋กœ FileZilla์™€ Putty / HeidiSQL์— ์ ‘์†ํ•œ๋‹ค. ลธ FileZilla๋ฅผ ์ผœ๊ณ  ์ ‘์† ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•œ ํ›„ PC์— ์ €์žฅ๋˜์–ด์žˆ๋Š” xxxx.php๋ฅผ ์„œ๋ฒ„์˜ ๊ฐ™์€ ํŒŒ์ผ์— ๋ฎ์–ด์“ด๋‹ค. ลธ hi4003.cafe24.com๋กœ ์ ‘์†ํ•ด์„œ ์‹ค์ œ๋กœ ๋ฐ˜์˜ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค. ลธ DB ์ˆ˜์ •์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ Putty๋ฅผ ์‹คํ–‰์‹œํ‚ค๊ณ  mysql์— ์ ‘์†ํ•œ ๋’ค SQL์„ ์ž‘์„ฑํ•œ๋‹ค. ลธ HeidiSQL์„ ์ผœ๊ณ  mysql์— ์ ‘์†ํ•ด๋„ DB๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 4. ํ”„๋กœ๊ทธ๋žจ ์„ค๊ณ„ ๋ฐ ํŒŒ์ผ ์ •๋ณด ํ”„๋กœ๊ทธ๋žจ ๋ช… :ใ€€๋‚˜์˜ ์ฒซ ๊ฒŒ์‹œํŒ ์ž‘์„ฑ์ž :ใ€€16038020 ๊น€ํฌ์ง„ใ€€
  • 2. - 2 - ลธ list.php๋Š” DB์—์„œ ๊ฐ’์„ ๋ถˆ๋Ÿฌ์™€์„œ ๊ธ€๋ฒˆํ˜ธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ตœ์‹ ๊ธ€์ด ๋งจ ์œ„๋กœ ์˜ค๋„๋ก ๋‚ด๋ฆผ ์ฐจ์ˆœ์œผ๋กœ ํ์„ ์ •๋ ฌํ•ด์„œ ๊ธ€๋ฒˆํ˜ธ, ์ œ๋ชฉ, ์ž‘์„ฑ ์‹œ๊ฐ„, ์กฐํšŒ์ˆ˜๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. ลธ list.php์—์„œ ๊ธ€์“ฐ๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด write.php๋กœ ์ด๋™ํ•œ๋‹ค. ลธ write.php์—์„œ ์ œ๋ชฉ, ๋‚ด์šฉ, ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด insert.php๊ฐ€ DB์— ๋ฐ˜์˜ํ•œ๋‹ค. ลธ list.php์—์„œ ๊ธ€ ์ œ๋ชฉ์ด๋‚˜ ๋ฒˆํ˜ธ๋ฅผ ํด๋ฆญํ•˜๋ฉด ๊ธ€์„ ์ฝ๋Š” ํŽ˜์ด์ง€์ธ read.php๋กœ ์ด๋™ํ•œ๋‹ค. ลธ read.php์—์„œ ๊ธ€ ์‚ญ์ œ๋ฅผ ๋ˆ„๋ฅด๋ฉด delete.php๋กœ ์ด๋™ํ•œ๋‹ค. ลธ delete.php์—์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด confirm.php์—์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋งž๋Š”์ง€ ํ™•์ธํ•˜๊ณ  DB์— ๋ฐ˜์˜ํ•œ๋‹ค. 5. DB ์„ค๊ณ„ board๏ผˆid, pass, title, content, wdate, ip, view๏ผ‰ใ€€PK={ id } ลธ id: ๊ธ€ ๋ฒˆํ˜ธ, ์ฃผํ‚ค, ์ž๋ฃŒํ˜•์€ int, 1๋ถ€ํ„ฐ ์ž๋™์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ถ€์—ฌ๋˜๋„๋ก unsigned ์™€ AUTO_INCREMENT๋ฅผ ์‚ฌ์šฉํ•จ ลธ pass: ๋น„๋ฐ€๋ฒˆํ˜ธ, ์ž๋ฃŒํ˜•์€ ๋ฌธ์ž์—ด ลธ title: ๊ธ€์˜ ์ œ๋ชฉ, ์ž๋ฃŒํ˜•์€ ๋ฌธ์ž์—ด ลธ content: ๊ธ€์˜ ๋‚ด์šฉ, ์ž๋ฃŒํ˜•์€ text ลธ wdate: ๊ธ€์„ ์“ด ๋‚ ์งœ, ์ž๋ฃŒํ˜•์€ datetime ลธ ip: ์ž‘์„ฑ์ž์˜ ip์ฃผ์†Œ, ์ž๋ฃŒํ˜•์€ ๋ฌธ์ž์—ด ลธ view: ์กฐํšŒ์ˆ˜, ์ž๋ฃŒํ˜•์€ int, ์ดˆ๊ธฐ๊ฐ’์€ 0 ลธ ๋ชจ๋“  ์†์„ฑ์€ NULL์ด ์•„๋‹˜
  • 3. - 3 - 6. SQL๋ฌธ 7. ๋ฉ”์ธ ์ฝ”๋“œ db_info.php <?php $conn = mysql_connect("localhost","xxx","xxx"); mysql_select_db("board",$conn); ?> ลธ DB ์ ‘์† ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ํŒŒ์ผ. DB์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” xxx๋กœ ํ‘œ์‹œํ•จ write.php ... <?php header('Content-Type: text/html; charset=UTF-8'); ?> </head> <body topmargin=0 leftmargin=0 text=#464646> <center> <BR> <!--์ž…๋ ฅ๋œ ๊ฐ’์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ํผ์„ ๋งŒ๋“ฌ--> <form action=insert.php method=post> <table width=580 border=0 cellpadding=2 cellspacing=1 bgcolor=#777777> <tr> <td height=20 align=center bgcolor=#999999> <font color=white><B>๊ธ€์“ฐ๊ธฐ</B></font> </td> </tr> <!-- ์ž…๋ ฅ๋ถ€๋ถ„ -->
  • 4. - 4 - <tr> <td bgcolor=white>&nbsp; <TABLE> <tr> <td width=60 align=left>์ œ ๋ชฉ</td> <td align=left> <INPUT type=text name=title size=60 maxlength=35> </td> </tr> <tr> <td width=60 align=left>๋‚ด์šฉ</td> <td align=left> <TEXTAREA name=content cols=65 rows=15></TEXTAREA> </td> </tr> <tr> <td width=60 align=left>๋น„๋ฐ€๋ฒˆํ˜ธ</td> <td align=left> <INPUT type=password name=pass size=8 maxlength=8> </td> </tr> <tr> <td colspan=10 align=center> <INPUT type=submit value="์ €์žฅ">&nbsp; <INPUT type=button value="๋ชฉ๋ก" onclick="history.back(-1)"> </td> </tr> </TABLE> </td> </tr> <!--์ž…๋ ฅ๋ถ€๋ถ„ ๋--> ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ ๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ลธ POSTํ˜•์‹์„ ์ด์šฉํ•ด์„œ ํผ์„ ๋งŒ๋“ค์–ด์ฃผ์—ˆ๋‹ค. ์ €์žฅ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ž…๋ ฅ๋œ ๊ฐ’๋“ค์ด action ๋’ค์— ์“ฐ์—ฌ ์žˆ๋Š” insert,php๋กœ ์ด๋™ํ•œ๋‹ค. ลธ ๋ชฉ๋ก ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ด์ „ ํŽ˜์ด์ง€์ธ list.php๋กœ ์ด๋™ํ•œ๋‹ค. insert.php <?php header('Content-Type: text/html; charset=UTF-8'); include "db_info.php"; $title= $_POST["title"]; $content = $_POST["content"]; $pass = $_POST["pass"]; $query="INSERT INTO board(id, pass, title, content, wdate, ip, view) VALUES('','$pass','$title','$content',now(),'{$_SERVER['REMOTE_ADDR']}',0)"; $result=mysql_query($query, $conn); //DB์—ฐ๊ฒฐ์ข…๋ฃŒ
  • 5. - 5 - mysql_close($conn); //1์ดˆ ๋’ค ๋ฆฌ์ŠคํŠธ๋กœ echo ("<meta http-equiv='Refresh' content='1;URL=list.php'>"); ?> <center> <font size=2>์ •์ƒ์ ์œผ๋กœ ์ €์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.</font> ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ ๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ลธ ์ฟผ๋ฆฌ๋ฌธ์„ ํ†ตํ•ด DB์— ๊ฐ’์„ ๋„ฃ์–ด์ค€ ๋’ค DB์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•œ๋‹ค. ลธ 1์ดˆ ํ›„ list.php๋กœ ์ด๋™ํ•œ๋‹ค. list.php <?php extract($_POST); extract($_SERVER); include "db_info.php"; // mysql_select_db(""); $query = "select * from board order by id desc"; $result = mysql_query($query, $conn); header('Content-Type: text/html; charset=UTF-8'); ?> ... <?php while($row = mysql_fetch_array($result)){ ?> <tr> <td bgcolor="#ffffff" align=center><a href="read.php?num=<?=$row['id']?>"> <?=$row['id']?></a> <td bgcolor="#ffffff" align=center><a href="read.php?num=<?=$row['id']?>"> <?=strip_tags($row['title'],'<b><i>');?></a> <td bgcolor="#ffffff" align=center><?=$row['wdate']?> <td bgcolor="#ffffff" align=center><?=$row['view']?> <?php } mysql_close($conn); ?> </table> <p> <a href=write.php>[Write]</a> </center> ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ ๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ลธ board์˜ ํ๋“ค์„ id๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ตœ์‹  ๊ธ€์ด ๋งจ ์œ„๋กœ ์˜ค๋„๋ก ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ณ  while๋ฌธ์„ ์ด์šฉํ•ด์„œ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด์ค€ ๋‹ค์Œ DB์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•œ๋‹ค.
  • 6. - 6 - ลธ ๊ฐ ๊ธ€ ๋ฒˆํ˜ธ, ๊ธ€ ์ œ๋ชฉ์„ ํด๋ฆญํ•˜๋ฉด read.php๋กœ ์ด๋™ํ•˜๋Š”๋ฐ, id๋ฅผ num์œผ๋กœ ๋„˜๊ฒจ์ค€๋‹ค. read.php ... <?php header('Content-Type: text/html; charset=UTF-8'); ?> </head> <body topmargin=0 leftmargin=0 text=#464646> <center> <br> <?php include "db_info.php"; $id = $_GET["num"]; $query = "select * from board where id=$id"; $result = mysql_query($query, $conn); $row=mysql_fetch_array($result); ?> <table width=600 border=0 cellpadding=2 cellspacing=1 bgcolor=#777777> <tr> <td height=20 align=center bgcolor=#777777 colspan=4> <font color=white><B><?=$row['title']?></font> </td> </tr> <tr> <td bgcolor=#dddddd width=50 height=20 align=center>๋‚ &nbsp;์งœ</td> <td bgcolor=white width=250><?=$row['wdate']?></td> <td bgcolor=#dddddd width=50 height=20 align=center>์กฐํšŒ์ˆ˜</td> <td bgcolor=white width=250><?=$row['view']?></td> </tr> <tr> <td bgcolor=white colspan=4> <font color=black> <pre><?=$row['content']?></pre> </font> </td> </tr> <!-- ๊ธฐํƒ€๋ฒ„ํŠผ --> <tr> <td colspan=4 bgcolor=white> <table width=100%> <tr> <td width=200 height=20 align=left> <a href=list.php>[๋ชฉ๋ก๋ณด๊ธฐ]</a> <a href=write.php>[๊ธ€์“ฐ๊ธฐ]</a> <a href=delete.php?num=<?=$row['id']?>>[๊ธ€์‚ญ์ œ]</a> </td>
  • 7. - 7 - <td align=right> <?php $query = mysql_query("select id from board where id > $id limit 1", $conn); $prev_id = mysql_fetch_array($query); if($prev_id[id]){ echo "<a href=read.php?num=$prev_id[id]>[์ด์ „] </a>"; }else{ echo "[์ด์ „]"; } ?> <?php $query = mysql_query("select id from board where id < $id order by id desc limit 1", $conn); $next_id = mysql_fetch_array($query); if($next_id['id']){ echo "<a href=read.php?num=$next_id[id]> [๋‹ค์Œ]</a>"; }else{ echo "[๋‹ค์Œ]"; } ?> ... <?php $result=mysql_query("update board set view = view + 1 where id=$id"); mysql_close($conn); ?> ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ ๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ลธ num์„ GET๋ฐฉ์‹์œผ๋กœ ๋ฐ›์•„์„œ id์— ์ €์žฅํ•œ๋‹ค. id๊ฐ€ ๋™์ผํ•œ ํ๋ฅผ ์ถ”์ถœํ•ด์„œ ๊ฐ ํ•ญ๋ชฉ์— ๋งž ๊ฒŒ ๋ณด์—ฌ์ค€๋‹ค. ลธ ์ด์ „ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ํ˜„์žฌ์˜ id๋ณด๋‹ค ์ž‘์€ id์˜ ๊ธ€๋กœ ์ด๋™ํ•œ๋‹ค. prev_id์˜ ๊ฐ’์„ num ์œผ๋กœ ๋„˜๊ฒจ์ค€๋‹ค. ลธ ๋‹ค์Œ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ํ˜„์žฌ์˜ id๋ณด๋‹ค ํฐ id์˜ ๊ธ€๋กœ ์ด๋™ํ•œ๋‹ค. next_id์˜ ๊ฐ’์„ num์œผ ๋กœ ๋„˜๊ฒจ์ค€๋‹ค. ลธ ์กฐํšŒ์ˆ˜๋ฅผ 1์”ฉ ์˜ฌ๋ ค์ค€ ๋’ค DB์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•œ๋‹ค. delete.php ... <?php header('Content-Type: text/html; charset=UTF-8'); ?> </head> <body topmargin=0 leftmargin=0 text=#464646>
  • 8. - 8 - <?php $id = $_GET["num"]; ?> <center> <br> <form action=confirm.php?num=<?=$id?> method=post> <table width=300 align=center border=0 cellpadding=2 cellspacing=1 bgcolor=#777777> <tr> <td height=20 align=center bgcolor=#999999> <font color=white>๋น„ ๋ฐ€ ๋ฒˆ ํ˜ธ ํ™• ์ธ</font> </td> </tr> <tr> <td align=center> <font color=white><B>๋น„๋ฐ€๋ฒˆํ˜ธ : </b> <INPUT type=password name=pass size=8> <INPUT type=submit value="ํ™• ์ธ"> <INPUT type=button value="์ทจ ์†Œ" onclick="history.back(-1)"> ... ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ ๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ลธ num์„ GET๋ฐฉ์‹์œผ๋กœ ๋ฐ›์•„์„œ id์— ์ž…๋ ฅํ•œ๋‹ค. ลธ POSTํ˜•์‹์„ ์ด์šฉํ•ด์„œ ํผ์„ ๋งŒ๋“ค์–ด์ฃผ์—ˆ๋‹ค. ํ™•์ธ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ž…๋ ฅ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ action ๋’ค์— ์“ฐ์—ฌ ์žˆ๋Š” confirm,php๋กœ ์ด๋™ํ•˜๋ฉด์„œ id๋ฅผ num์œผ๋กœ ๋ณด๋‚ด์ค€๋‹ค. ลธ ์ทจ์†Œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ด์ „ ํŽ˜์ด์ง€์ธ read.php๋กœ ์ด๋™ํ•œ๋‹ค. confirm.php <?php header('Content-Type: text/html; charset=UTF-8'); include "db_info.php"; $id = $_GET["num"]; $result=mysql_query("SELECT pass FROM board WHERE id=$id",$conn); $row=mysql_fetch_array($result); $pass=$_POST[pass]; if($pass==$row[pass]) { $query = "DELETE FROM board WHERE id=$id"; $result=mysql_query($query,$conn); } else{ echo("<script> alert('๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ‹€๋ฆฝ๋‹ˆ๋‹ค.'); history.go(-1); </script> "); exit; } ?>
  • 9. - 9 - <center> <meta http-equiv="refresh" content='1; URL=list.php'> <FONT size=2>์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.</font> </center> ลธ <head>๋ถ€๋ถ„ ์•ˆ์— header('Content-Type: text/html; charset=UTF-8'); ๋ฌธ์žฅ์„ ํ†ตํ•ด ํ•œ ๊ธ€ ๊นจ์ง ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ลธ num์„ GETํ˜•์‹์œผ๋กœ ๋ฐ›์•„์„œ id์— ๋„ฃ์–ด์ค€๋‹ค. id๊ฐ€ ๋™์ผํ•œ ํ๋ฅผ ์ถ”์ถœํ•ด์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋น„๊ตํ•œ๋‹ค. ลธ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ‹€๋ ธ์„ ๋•Œ์—๋Š” ๊ฒฝ๊ณ ์ฐฝ์ด ๋œจ๋ฉด์„œ ๋‹ค์‹œ ์ž…๋ ฅํ•˜๊ฒŒ ํ•œ๋‹ค. ลธ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋งž์•˜์„ ๋•Œ์—๋Š” id๊ฐ€ ๋™์ผํ•œ ํ๋ฅผ DB์—์„œ ์‚ญ์ œํ•˜๊ณ  1์ดˆ ๋’ค list.php๋กœ ๋Œ ์•„๊ฐ€๊ฒŒ ํ•œ๋‹ค. 8. ์‹คํ–‰ ๊ฒฐ๊ณผ <๊ธ€์“ฐ๊ธฐ> <DB๋ฐ˜์˜ ํ›„> <๊ธ€ ๋ชฉ๋ก>
  • 10. - 10 - <๊ธ€ ๋‚ด์šฉ ๋ณด๊ธฐ> <๊ธ€ ์‚ญ์ œ> <๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ‹€๋ฆฐ ๊ฒฝ์šฐ> <๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋งž์€ ๊ฒฝ์šฐ> <์‚ญ์ œ ์ „ DB> <์‚ญ์ œ ํ›„ DB> <DB๋ฐ˜์˜ ํ›„> 9. ํ‰๊ฐ€ ๋ฐ ๋Š๋‚€์  ยง ๊ธฐ๋ณธ์ ์ธ ๊ฒŒ์‹œํŒ์˜ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ด๋‚ด์—ˆ๋‹ค. ยง ๋กœ๊ทธ์ธ ์—†์ด๋„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ธ€ ์ž‘์„ฑ๊ณผ ๊ธ€ ์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ยง ๋””์ž์ธ์ด ์‹ฌํ”Œํ•˜๋‹ค. ยง ๋ณด์•ˆ์—๋Š” ์ทจ์•ฝํ•˜๋ฏ€๋กœ ์‹ค์ œ๋กœ ์“ฐ์ด์ง€๋Š” ๋ชปํ•œ๋‹ค.
  • 11. - 11 - ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ํ•ด๋ณธ ์ ์ด ์—†์–ด์„œ ์ฒ˜์Œ ๊ฒŒ์‹œํŒ์„ ๋งŒ๋“ค์–ด์•ผ ํ–ˆ์„ ๋•Œ๋Š”, ๋‚ด๊ฐ€ ์•„์ง html ๋„ ๋ชจ๋ฅด๋Š”๋ฐ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„๊นŒ? ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์–ด๋–ค ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ• ์ง€, ์–ด๋–ค ์„œ๋ฒ„, ์–ด๋–ค DB๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ• ์ง€ ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ–ˆ์—ˆ๋‹ค. php๊ฐ€ ์„œ๋ฒ„ ์—ฐ๊ฒฐํ•˜๊ธฐ์—” ๊ฐ„๋‹จํ•˜๋‹ค๊ณ  ํ•ด์„œ APM์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค. ๋‹คํ–‰ํžˆ ์ด๋ฒˆ ํ•™๊ธฐ์— ๊ฐ™์ด ๋“ฃ๋Š” ์ˆ˜์—… ์ค‘์—์„œ html, css, javascript ๊ด€๋ จ๋œ ์ˆ˜์—…์ด ์žˆ์–ด์„œ ๊ฒŒ์‹œํŒ ๋งŒ๋“ค๊ธฐ์— ๋งŽ์€ ๋„์›€์ด ๋๋‹ค. php๋Š” ์ฑ…์œผ๋กœ ์ฐจ๊ทผ์ฐจ๊ทผ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ผ๋‹จ ๊ฒŒ์‹œํŒ ๋งŒ ๋“ค๊ธฐ์— ํ•„์š”ํ•œ ๋ฌธ๋ฒ•์„ ์šฐ์„ ์‹œ ํ•˜์—ฌ ๊ณต๋ถ€ํ–ˆ๋‹ค. ์ œ์ผ ์–ด๋ ค์› ๋˜ ๋ถ€๋ถ„์€ ์—ญ์‹œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ จ ๋ถ€๋ถ„์ด์—ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์„ค๊ณ„ํ•˜๊ฑฐ๋‚˜ ์งˆ์˜๋ฌธ์„ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋ฌธ์ œ๊ฐ€ ์—†์—ˆ๋Š”๋ฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์„œ๋ฒ„๋ฅผ ์—ฐ๊ฒฐํ•˜๊ณ  ๋ฐ˜์˜ํ•˜๋Š” ๋ถ€ ๋ถ„์—์„œ POST๋ฐฉ์‹์ด๋‚˜ GET๋ฐฉ์‹์— ๋Œ€ํ•œ ์‹ฌ๋„ ์žˆ๋Š” ์ดํ•ด๊ฐ€ ํ•„์š”ํ–ˆ๋‹ค. ์›นํ˜ธ์ŠคํŒ…์—์„œ๋„ ์ •๋ง ๊ณ ๋‚œ์„ ๋งŽ์ด ๊ฒช์—ˆ๋‹ค. ์ฒ˜์Œ์—” ๊ด€์‹ฌ ์žˆ๋Š” ๋ถ„์•ผ์˜€๋˜ AWS๋กœ ํ˜ธ์ŠคํŒ…์„ ํ•˜๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ ์ž๋ฃŒ๊ฐ€ ๋„ˆ๋ฌด ์—†์–ด์„œ cafe24์—์„œ ํ˜ธ์ŠคํŒ…์„ ์‹œ์ž‘ํ–ˆ๋‹ค. cafe24๋Š” ์ง€๊ธˆ๋„ ๋งŽ ์ด ์‚ฌ์šฉ๋˜๋Š” ๊ณณ์ด๋ผ์„œ ํ”„๋กœ๊ทธ๋žจ๋งŒ ๋ช‡ ๊ฐœ ๋” ์„ค์น˜ํ•˜๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ์ด์šฉ ๊ฐ€๋Šฅํ–ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์™œ์ธ์ง€ localhost์—์„œ๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์ด ์ž˜ ๋Œ์•„๊ฐ€๋˜ ํ”„๋กœ๊ทธ๋žจ์ด DB๊ด€๋ จ ๋ฌธ์ œ๊ฐ€ ์ผ์–ด๋‚ฌ๋‹ค. ์„œ๋ฒ„๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์–ด์„œ ์ ‘์†ํ•˜๋Š” ๊ฑด ๋˜๋Š”๋ฐ DB์—์„œ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ๊ฐ’์„ ๋ฐ˜์˜ํ•˜๋Š” ๋ถ€๋ถ„ ์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜๋‹ค. DB์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒƒ๋„ ์•„๋‹ˆ๊ณ  DB์™€ ์„œ๋ฒ„๊ฐ€ ์—ฐ๋™๋˜์–ด์žˆ์ง€ ์•Š์„ ๋ฆฌ๊ฐ€ ์—†๋Š”๋ฐ ์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์„œ ๊ต‰์žฅํžˆ ์ขŒ์ ˆํ–ˆ๋‹ค. ํ•œ๋ฒˆ์€ ๋ณด๊ณ ์„œ๋ฅผ ์“ฐ๋Š” ๋„์ค‘์— ๋ธ”๋ฃจ ์Šคํฌ๋ฆฐ์ด ๋œฌ ์ ์ด ์žˆ์—ˆ๋Š”๋ฐ phpํŒŒ์ผ์ด๋‚˜ DB๋Š” ๊ฑด ๋“ค์ง€ ์•Š์•˜๋Š”๋ฐ ๊ฐ‘์ž๊ธฐ myphpAdmin์— ๋กœ๊ทธ์ธ๋„ ์•ˆ ๋˜๊ณ  ๋‹น์—ฐํžˆ DB์—ฐ๋™๋„ ์•ˆ๋˜์–ด์„œ ๋‹น ํ™ฉํ•œ ์ ์ด ์žˆ์—ˆ๋‹ค. ๋น„ํŠธ๋‚˜๋ฏธ์—์„œ DB ํฌํŠธ๋ฒˆํ˜ธ๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋‹ˆ ๋‹ค์‹œ myphpAdmin์€ ๋กœ๊ทธ์ธ ์ด ๋˜์—ˆ๋Š”๋ฐ DB๋Š” ์—ฌ์ „ํžˆ ์—ฐ๋™์ด ์•ˆ ๋˜์–ด ์žˆ์–ด์„œ ๋‹ค์‹œ ๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋ณด๋‹ค๊ฐ€ db_info.php ์—์„œ local๋’ค์— ๋ฐ”๋€ ํฌํŠธ๋ฒˆํ˜ธ๋ฅผ ์ถ”๊ฐ€ํ•ด์„œ ํ•ด๊ฒฐํ•˜์˜€๋‹ค. ์ฒ˜์Œ์œผ๋กœ ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์‹œ์ž‘ํ•ด์„œ ๋งŒ๋“  ๊ฒŒ์‹œํŒ์„ ์ด๋ ‡๊ฒŒ ์‹ค์ œ๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ํ˜ธ์ŠคํŒ…๊นŒ ์ง€ ํ•ด๋ณผ ์ˆ˜ ์žˆ์–ด์„œ ๋„ˆ๋ฌด ์ข‹์€ ๊ฒฝํ—˜์ด์—ˆ๋‹ค. ์‹œ๊ฐ„์ด ๋ชจ์ž๋ผ์„œ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•œ ๊ธ€ ์ˆ˜์ • ๊ธฐ๋Šฅ ๋„ ๋‹ค์Œ์— ์ข…๊ฐ•ํ•˜๊ณ  ๋‚˜์„œ ๋งˆ์ € ๊ตฌํ˜„ํ•ด ๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์–ด๋ ค์šด ์ ๋„ ๋งŽ์•˜์ง€๋งŒ ๊ทธ ๋งŒํผ ๋ณด๋žŒ ์žˆ์—ˆ๊ณ  ํ•œ์ธต ์„ฑ์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด์„œ ๋‹คํ–‰์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค. 10.ํ•™์Šต ์ž๋ฃŒ ลธ ๋‡Œ๋ฅผ ์ž๊ทนํ•˜๋Š” PHP / ํ•œ๋น› ๋ฏธ๋””์–ด ลธ ์ฐจ์„ธ๋Œ€ ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ / ํ•œ๋น› ์•„์นด๋ฐ๋ฏธ ลธ ๊ตฌ๊ธ€ ๊ฒ€์ƒ‰