์ด ๋ด์ฉ์ ์ฒ์ ํ๋ก๊ทธ๋๋ฐ์ ์์ํ๋ ์
๋ฌธ์์ ๋๋์ด์ ๋ง์ถ ์ํ์ฝ๋ฉ!
php+mysql ์ฑ
์ ๋ด์ฉ์ ํฌํจํ๊ณ ์์ต๋๋ค.
์ค์ค๋ก ๊ณต๋ถํ๊ณ , ๊ณต๋ถํ๊ฒ์ ์ ๋ฆฌํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ฒ์
๋๋ค.
์ค์ต์ html ํผ์ ๋ํ ๊ธฐ์ด ์ง์์ ๋ฐํ์ผ๋ก ๋๊ณ ํฉ๋๋ค.
๊ธฐ์ด์ ์ด๊ฑฐ๋, ํ๊ทธ ๊ด๋ จํ ์ค๋ช
์ ์ถํ์ ๋ฐ๋ก ํฌ์คํ
ํ๋๋ก ํ๊ฒ ์ต๋๋ค.
์ด๋ฒ ํฌ์คํ
์ ์ฌ์ฉ์๋ค์ด ์น์ ํตํด ์์ ์ ์ฝํ
์ธ ๋ฅผ ๋ฑ๋กํ ์ ์๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํด๋ณด๊ฒ ๋ค.
๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธ ์ฐ๊ธฐ, ๊ธ ์ญ์ , ๊ธ ์์ ๋ฑ์ ๊ธฐ๋ฅ์ ์ค์ตํด๋ณด์!
์ ๋ณด์์คํ
์ ๋ค๋ฃฌ๋ค๊ณ ํ๋ฉด ๊ทธ ์ ๋ณด์์คํ
์ ํต์ฌ์ ์
๋ ฅ๊ณผ ์ถ๋ ฅ์ด๋ค.
๊ธ์ฐ๋ ํ๋ซํผ์ด๋ผ๋ฉด ๊ธ์ ์ฐ๋ ๊ฒ๊ณผ ๊ธ์ ํ๋ฉด์ ํ์ํ๋ ๊ฒ์ด ๋ณธ์ง์ ์ผ๋ก ๋งจ ๋จผ์ ํ์ธํ๊ณ ๊ณต๋ถํด์ผ ํ ๋์์ด๋ค.
์ด๋ฅผ CRUD(Create Read Update Delete)๋ผ๊ณ ํ๋ค. ๊ทธ๋์ ํญ์ ์ ๋ณด์์คํ
์์ ๋งจ ๋จผ์ ํด์ผ ํ ์ผ์ ์ถ๊ฐํ๊ณ , ์ฝ๊ณ , ์์ ํ๊ณ , ์ญ์ ํ๋ ์์
์ ์ด๋ป๊ฒ ํ๋์ง ์ ๊ฒํ๋ ๊ฒ์ด๋ค.
๋จผ์ ๊ธ์ ์ถ๊ฐํ๋ ๊ธฐ๋ฅ ์ฆ "ํผ๊ณผ POST"์ ๋ํด ์ดํด๋ณด๊ฒ ๋ค.
์ฌ์ฉ์์ ์ ๋ณด๋ฅผ ์๋ฒ ์ชฝ์ผ๋ก ์ ์กํ ๋ ์ฌ์ฉํ๋ ํผ(form)์ด๋ ๊ฒ์ ์ดํด๋ณผ ํ์๊ฐ ์๋ค.
์๋ ์ค์ต์ ํตํด ์ฝ๋๋ฅผ ํ์ธํด๋ณด์.
<input>ํ๊ทธ๋ ์ฌ์ฉ์์๊ฒ ์ ๋ณด๋ฅผ ์
๋ ฅ๋ฐ๋ htmlํ๊ทธ์ด๋ค. ์ด ์์ฑ์ 'text'๋ผ๊ณ ์ง์ ํ๋ฉด ์ฌ์ฉ์๋ก๋ถํฐ ํ
์คํธ ์ ๋ณด๋ฅผ ๋ฐ๋ ๋ค๋ชจ์์์ธ ํ
์คํธ ํ๋๊ฐ ๋์จ๋ค.
์์ ๊ฐ์ด ๊ธฐ๋ณธ์ ์ธ ์ฝ๋๋ฅผ ์ง๋ฉด ์
๋ ฅ ํผ์ด ์๊ธด๋ค.
placeholder๋ ์ฌ์ฉ์์๊ฒ ์๋ ค์ฃผ๋ ๋์ฐ๋ฏธ ์ญํ ์ ํ๋ค.
์ฌ์ฉ์๋ Title์ด๋ผ๋ ๊ธ์จ๋ฅผ ํ์ธ ํ๋ฏ๋ก์จ "์ ๋ชฉ์ ์ด๊ณณ์ ์ ๋ ๊ฒ์ด๊ตฌ๋~"ํ๊ณ ์ ์ ์๋ค.
Title์ด๋ผ๊ณ ์ ํ๊ณณ์ ๊ธ์๋ฅผ ์
๋ ฅํ๋ฉด Title ๊ธ์๋ ์์ด์ง๋ค.
์ ๋ณด๋ฅผ ์๋ฒ๋ก ์ ์กํ๊ณ ์ถ๋ค๋ฉด type์ submit์ผ๋ก ์ง์ ํ๋ฉด ๋๋ค. (ํ๊ทธ์ ๊ด๋ จ๋ ์ค๋ช
์ ์๋ตํฉ๋๋ค.)
ํ์ด์ง๋ฅผ ์๋ฒ๋ก ์ ์กํ๋ ค๋ฉด, ์ด๋ค ํ์ด์ง๋ก ์ ๋ฌํ ๊ฒ์ธ์ง action์ด๋ ์์ฑ์ ์ฃผ์ด์ผ ํ๋ฉฐ name ์์ฑ ์ฆ ๋๊ฒจ์ค ํ๋ผ๋ฏธํฐ๋ฅผ ์ง์ ํด์ฃผ์ด์ผ ํ๋ค.
๋ํ ์ ๋ณด๋ฅผ ๋ฐ๋ ํ์ด์ง ์ญ์ ๊ฐ์ ๋ฐ์์ค๋ ์ฝ๋๊ฐ ์์ผ๋ฉด ์๋๋ค. (์์ผ๋ฉด 404 ์๋ฌ)
๐ ์๊ณ ๊ฐ๊ธฐ
์ ๋ณด๋ฅผ ์ ๋ฌํ ๋ URLํ๋ผ๋ฏธํฐ๋ฅผ ํตํด ์ ๋ฌํ๋ค.
URLํ๋ผ๋ฏธํฐ๋ $_GET[ ] ๋ก ๋ฐ์ ์ ์๋๋ฐ, $_GET์ด๋ ๋ฌด์์ผ๊น?
์ ๋ต์ ๋ฐฐ์ด์ด๋ค. ์ฌํ๊น์ง๋ 0, 1, 2์ ๊ฐ์ ์ซ์๋ง ๋ค์ด๊ฐ๋ ๋ฐฐ์ด์ ๋ฐฐ์ ์ง๋ง, ์ซ์ ๋์ ๋ฌธ์๋ก ๊ฐ์ ๊ฐ์ ธ์ฌ ์ ์๋ ๋ฐฐ์ด๋ ์๋ค. ์ด์ ๊ฐ์ ๋ฐฐ์ด์ ์ฐ๊ด๋ฐฐ์ด(associative array)๋ผ๊ณ ํ๋ค.
์๋ ์ฝ๋๋ฅผ ๋ณด๊ณ , ์ ๋ณด๋ฅผ ์๋ฒ์ ์ ์ก ๋ฐ ์๋ฒ์์ ์ ์ก๋ ์ฝ๋๋ฅผ ์ฝ์ด์ ์ถ๋ ฅํ๋ ๊ฒ์ ์ค์ตํด๋ณด์.
: form.html
์๋ฒ์ ์ ์กํ ์ฝ๋๋ form ํ๊ทธ๋ก ๊ฐ์ผ ํ action์ผ๋ก form.php๋ก ๋ณด๋.
: from.php
Get๋ฐฉ์์ผ๋ก ์ ๋ฌ๋ฐ์ ํ๋ผ๋ฏธํฐ ๊ฐ์ echo๋ก ์ถ๋ ฅํจ.
:์น์์ form.html ํ๋ฉด
title๊ณผ content์ ์
๋ ฅ ํ ๊ฐ์ Go ๋ก ์ ์กํ๋ฉด form.php์์ ์ถ๋ ฅํ๋ค.
์ด ๋งฅ๋ฝ์ ํตํด PHP์์ ํ์ผ์ ์ ์ฅํ๋ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ, ํ์ผ์ ์์ฑํด๋ณด๋๋ก ํ์.
ํ์ผ์ ์ ์ฅํ๋ ํจ์๋ file_put_contents() ์ด๋ค. ์ฒซ ๋ฒ์งธ ์ธ์๋ก ๊ฒฝ๋ก, ๋ ๋ฒ์งธ ์ธ์๋ก content๋ฅผ ์ง์ ํ๋ฉด ์ฌ์ฉ์๊ฐ ์น ๋ธ๋ผ์ฐ์ ์์ ์์ ์ฃผ์๋ก ๋ค์ด๊ฐ์ ๋ data ๋๋ ํฐ๋ฆฌ์ PHP๋ผ๋ ํ์ผ์ ์์ฑํ๋ค.
๋๋ฌธ์, URL์ ํ๋ผ๋ฏธํฐ ์ ๋ณด๊ฐ ํฌํจ๋๋ ๋ฐฉ์์ ์ข์ ๋ฐฉ์์ด ์๋๋ค.
์์ ์ด ์ํ์ง ์์๋๋ฐ ๊ธ์ด ์์ฑ๋ ์๋ ์๊ณ , ๋ณด์์์ผ๋ก๋ ์์ ํ์ง ์๊ธฐ ๋๋ฌธ์
URL ํ๋ผ๋ฏธํฐ๋ฅผ ํตํด ์๋ฒ ์ชฝ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๊ฒ์ ๋ถ๋งํฌ์์ ์ฌ์ฉํ๊ธฐ์ ์ ํฉํ ๋ฐฉ๋ฒ์ด๋ค.
์ฆ ์ด๋ค ์ฝํ
์ธ ๋ฅผ ๋ค๋ฅธ ์ฌ๋์๊ฒ ๊ณต์ ํ ๋ ์ ํฉํ ๋ฐฉ์์ด๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ URL์ ์ฐ์ง์๊ณ ์๋ฐํ๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ ์กํด์ผ ํ๋ค. ์ด ๋ฐฉ์์ POST ๋ฐฉ์์ด๋ผ๊ณ ํ๊ณ
๋ฐ๋ก ์๋์ฒ๋ผ form์ method ์์ฑ์ 'post'๋ก ์ฃผ๋ฉด๋๋ค.
form.html
form.php
๋ณด๋ผ๋ htmlํ๋ฉด์ ๊ฐ์ง๋ง
๋์ด๊ฐ ๋ url๋ก ๋์ด๊ฐ๋ ๊ฒ์ด ์๋ body์ ๋ค์ด๊ฐ๊ฒ ๋๋ค.(header์ body)
[F12]๊ฐ๋ฐ์ ๋ชจ๋๋ก header์ ๋ณด๋ฅผ ํ์ธ ํ ์ ์๋ค.