21.12.23

future_s·2021년 12월 23일
0

php

목록 보기
9/10

생활코딩 php form과 POST
내일은 강의를 듣지말고 미리 웹앱을 만들어보고 복습하듯이 강의를 듣자.

학습 내용

미션 - 웹앱 만들기
생활코딩 php 웹앱 완성하기~

  1. 전체 페이지 제목과 글 목록이 뜨되 글 목록은 글이 수정되거나 사라지면 알아서 변경됨.
  2. write를 클릭하고 아래 빈칸에 글 제목과 내용을 입력해 저장을 누르면 해당 파일이 실제로 추가되며 글 목록에서 생겨야 함, 현재페이지도 추가된 페이지로 변경돼야함
  3. modify를 누르면 2번에서 작업한 것처럼 수정한 걸로 다 변경돼야함
  4. 삭제 버튼을 누르면 파일이 실제로 사라지며 첫 페이지로 이동해야한다.

정보시스템의 핵심은 입력과 출력이다. 글 쓰는 플랫폼이라면 글을 쓰는 것과 글을 화면에 출력해주는 게 최우선 과제다.

정보 시스템에서 항상 먼저 봐야할 것
Create Read Update Delete


사용자의 정보를 서버쪽으로 전송할 때 사용하는 form과 POST

<input> : 사용자로부터 정보를 입력받는 html 태그
<input type="text"> 타입 속성을 text로 하면 사용자로부터 텍스트 정보를 입력받을 수 있다.

<input type="text" name="title">
<input type="submit">

타입을 submit으로 하면 사용자로부터 입력받은 정보를 서버로 제출한다.

저렇게만 적고 누르면 아직 아무것도 되지 않는다. 왜냐, 그 정보를 서버의 어떤 페이지로 보낼 것인가를 웹브라우저한테 알려줘야한다. 그러기 위해선 form태그로 감싸줘야한다.

<form action="form.php">
  <input type="text" name="title">
  <input type="submit">
</form>

이러고 form.php 파일을 만들어서

<?php
echo $_GET['title'];
?>

이렇게 하면 url의 title값이 바뀐 페이지 본문에 출력된다.

form태그는 사용자로부터 입력받는 값의 name 속성값을 이름으로 해서 submit 버튼을 누르면 그 submit버튼이 속해있는 form태그의 action 속성이 가리키는 url로 브라우저가 바꾸면서 이동한다. 사용자가 입력한 정보를 url로 만들어내는 기계 정도로 생각..

그리고 php에서 파일 저장할 때 쓰는 함수를 찾는다.

<?php
file_put_contents('data/'.$_GET['title'], $_GET['description']);
?>

echo로 적었던 코드를 다 삭제하고 form.php엔 이 코드만 남겨둔다. 이러면 내가 입력한 정보에 맞는 파일이 생성되지만 url에 모든 정보가 다 표시된다. 이렇게 주소에 파라미터가 표시되는건 좋은 방법이 아니다.

사용자가 서버로 데이터를 보낼 때 어떤 데이터를 지울 때는 쓰면 안된다. 북마크에서나 적합한 사용방식이다. 컨텐츠를 다른 사람에게 공유할 때나 사용.

$_POST로 url을 통하지 않고 몰래 데이터를 전송할 수 있다. 예약된 변수 이름이다.

<form action="form.php" method="post">

form에다가 데이터를 어떻게 전송하는가 방식을 정해준다.

file_put_contents('data/'.$_POST['title'], $_POST['description']);

데이터를 받는 쪽도 이렇게 변경해준다.

form에서 method생략시 기본값인 GET을 쓰는 것과 같다.

어려운 내용

-

해결 방법

-

느낀 점

오늘은 집중이 너무 안됐다. 스스로 생각해보고 했어야 했는데 머리가 안돌아가니까 그냥 강의만 보게 됐고 강의조차도 머리에 안들어와서 조금씩 봤다.

내일은 강의를 듣지말고 미리 웹앱을 만들어보고 복습하듯이 강의를 들을 것이다.

profile
미래는 현재의 내가 만들어간다

0개의 댓글