1 00:00:00,000 --> 00:00:03,000 [Powered by Google Translate] [PHP 웹 개발] 2 00:00:03,000 --> 00:00:05,000 [토미 MacWilliam] 3 00:00:05,000 --> 00:00:07,000 [이 CS50입니다.] [CS50.TV] 4 00:00:07,000 --> 00:00:11,000 >> 이 비디오에서는, 우리는 웹 개발을위한 PHP를 사용하는 방법에 대해 알아 보겠습니다. 5 00:00:11,000 --> 00:00:14,000 PHP 구현하는 데 사용될 수 스크립팅 언어 6 00:00:14,000 --> 00:00:17,000 웹 서버에 대한 웹 사이트. 7 00:00:17,000 --> 00:00:21,000 웹 서버는 기본적으로 콘텐츠를 제공하기 위해 최선을 다하고 기계 8 00:00:21,000 --> 00:00:24,000 즉, 인터넷을 통해 액세스 할 수 있습니다. 9 00:00:24,000 --> 00:00:30,000 당신은 Facebook.com / home.php 같은 웹 페이지로 이동하면 10 00:00:30,000 --> 00:00:35,000 어딘가 페이스 북 웹 서버에 사는라는 파일 home.php의 코드 11 00:00:35,000 --> 00:00:38,000 해당 서버에서 실행됩니다. 12 00:00:38,000 --> 00:00:41,000 이 코드는 몇 가지 가능성이 출력을 생성합니다 13 00:00:41,000 --> 00:00:43,000 이렇게되면 서버에서 전송됩니다 14 00:00:43,000 --> 00:00:45,000 웹 브라우저에. 15 00:00:45,000 --> 00:00:49,000 우리는 웹 서버로 CS50 장비를 사용할 것. 16 00:00:49,000 --> 00:00:51,000 귀하의 기계는 아마 컴퓨터와 거의 같은 강력한되지 않습니다 17 00:00:51,000 --> 00:00:57,000 페이스 북 데이터 센터에,하지만 당신은 웹 개발에 사용하는 아무런 문제가 없을 것이다. 18 00:00:57,000 --> 00:01:05,000 >> 우리는 보통 http://localhost/hello.php 같은 URL로 이동하면 19 00:01:05,000 --> 00:01:10,000 우리는 아파치 HTTP 서버라는 응용 프로그램을 통해 어플라이언스를 구성 20 00:01:10,000 --> 00:01:19,000 기본적으로 홈 / jharvard / 가상 호스트 / localhosts / HTML 내부에 hello.php라는 파일을 찾을 수 있습니다. 21 00:01:19,000 --> 00:01:23,000 해당 파일이 존재하는 경우 아파치는 PHP 인터프리터를 사용합니다 22 00:01:23,000 --> 00:01:27,000 hello.php의 PHP 코드를 실행합니다. 23 00:01:27,000 --> 00:01:31,000 해당 파일이 존재하지 않는다면 아파치는 찾을 수 없습니다 오류가 발생합니다 24 00:01:31,000 --> 00:01:36,000 또는 웹을 탐색하는 동안 당신은 아마 본 적이 404 오류. 25 00:01:36,000 --> 00:01:40,000 >> 의이 hello.php를 살펴 보도록하자. 26 00:01:40,000 --> 00:01:45,000 우리는 hello.php 출력의 신호 라인을 생성하는 여기에서 볼 수 있습니다. 27 00:01:45,000 --> 00:01:51,000 우리는 PHP를 hello.php를 통해 명령 줄에서 hello.php 실행하는 경우 28 00:01:51,000 --> 00:01:54,000 그 출력 단자에 인쇄했다. 29 00:01:54,000 --> 00:01:58,000 이제, 우리는 웹 브라우저에서 URL을 통해이 파일에 액세스 할 때 30 00:01:58,000 --> 00:02:01,000 출력은 웹 브라우저로 전송됩니다 31 00:02:01,000 --> 00:02:09,000 그래서 URL로 향하고, 보통 http://localhost/hello.php, 32 00:02:09,000 --> 00:02:12,000 우리는 우리의 웹 브라우저에서 출력을 볼 수 있습니다. 33 00:02:12,000 --> 00:02:17,000 >> 의 우리의여보세요 세계 프로그램에 다른의 printf를 추가 해보자. 34 00:02:17,000 --> 00:02:23,000 좋아, 다시 웹 브라우저로 머리와 우리가 무엇을 볼 수 있습니다. 35 00:02:23,000 --> 00:02:25,000 흥미. 36 00:02:25,000 --> 00:02:28,000 오히려 당신이 본 것처럼, 자신의 라인에 다른 라인을 인쇄하는 것보다 37 00:02:28,000 --> 00:02:32,000 이 같은 라인 상 smushed있어 같은 단말기에서, 그것은 본다 38 00:02:32,000 --> 00:02:36,000 다른 printf와 같은, 그래서 어쩌면 새로운 라인은 PHP에서 작동하지 않습니다. 39 00:02:36,000 --> 00:02:38,000 꽤. 40 00:02:38,000 --> 00:02:41,000 HTML은 일반적으로 웹 페이지를 만드는 데 사용되는 기억 41 00:02:41,000 --> 00:02:44,000 즉, 웹 브라우저에서 표시 할 수 있습니다. 42 00:02:44,000 --> 00:02:49,000 뿐만 아니라 캐릭터 라인은, PHP는 유효하지 않은 HTML에서 인사입니다 43 00:02:49,000 --> 00:02:53,000 그러나 우리가 HTML에서 \ n 개의 문자를 사용할 수 없다는 것을 기억 44 00:02:53,000 --> 00:02:55,000 줄 바꿈을 만들 수 있습니다. 45 00:02:55,000 --> 00:03:01,000 대신 단순히 문자열하자 출력 유효한 HTML을 출력. 46 00:03:01,000 --> 00:03:04,000 단락 태그 우리의 printf의 호출을 각각 사용하여 47 00:03:04,000 --> 00:03:07,000 한 줄에 표시됩니다, 48 00:03:07,000 --> 00:03:11,000 그래서 지금 우리는 valid.php 위해 URL을 가리키는를 방문 할 때 49 00:03:11,000 --> 00:03:17,000 http://localhost/valid.php 50 00:03:17,000 --> 00:03:19,000 우리는 우리가 찾고있는 출력을 참조하십시오. 51 00:03:19,000 --> 00:03:22,000 >> 이제, 우리는이 페이지의 소스를 볼 경우 52 00:03:22,000 --> 00:03:25,000 우리는 우리가 지금 유효한 HTML보고있는 것을 볼 수있다, 53 00:03:25,000 --> 00:03:28,000 이는 우리가 PHP에서 만들었습니다. 54 00:03:28,000 --> 00:03:31,000 printf의 호출 내에서 우리의 HTML의 전체 통합 55 00:03:31,000 --> 00:03:34,000 물론 정말 짜증나는 얻을 것입니다. 56 00:03:34,000 --> 00:03:38,000 다행히 우리는 쉽게 HTML과 PHP를 섞을 수있다 57 00:03:38,000 --> 00:03:41,000 같은. PHP 파일에서. 58 00:03:41,000 --> 00:03:47,000 기억, 우리의 PHP 코드의 모든 00:03:49,000 와>. 60 00:03:49,000 --> 00:03:52,000 이러한 구분 기호 안에 포함되지 뭐 61 00:03:52,000 --> 00:03:55,000 단순히 브라우저에 출력으로 전송됩니다 62 00:03:55,000 --> 00:03:57,000 오히려 실행되는보다. 63 00:03:57,000 --> 00:04:01,000 즉, 우리가 뭔가를 할 수 있다는 것을 의미합니다. 64 00:04:01,000 --> 00:04:05,000 우리는 단순히 우리의. PHP 파일 내부에 HTML을 작성할 수 있습니다 65 00:04:05,000 --> 00:04:11,000 우리는 몇 가지 PHP 코드가 실행하려는 곳과 다음 PHP 블록을 삽입합니다. 66 00:04:11,000 --> 00:04:15,000 여기에서 우리는 파일의 상단에 다음과 같은 몇 가지 변수를 정의 67 00:04:15,000 --> 00:04:19,000 나중에 우리는 우리의 HTML 내부에 그들을 인쇄 할 수 있습니다. 68 00:04:19,000 --> 00:04:27,000 이제 우리는이 URL을 방문하는 경우, http://localhost/mixed.php 69 00:04:27,000 --> 00:04:33,000 우리는 우리의 HTML 안에 우리의 평가 PHP를 볼 수 있습니다. 70 00:04:33,000 --> 00:04:36,000 >> 이제 우리는 데이터를 전달할 수있는 방법을 찾아보기로하자 71 00:04:36,000 --> 00:04:39,000 우리의 다양한 PHP 페이지 사이. 72 00:04:39,000 --> 00:04:51,000 오히려 말보다 73 00:04:51,000 --> 00:04:58,000 우리는 단순히 말을 00:05:01,000 와>. 75 00:05:01,000 --> 00:05:03,000 의 지금은 우리가 데이터를 전달하는 방법을 살펴 보자 76 00:05:03,000 --> 00:05:06,000 우리의 다양한 PHP 페이지 사이. 77 00:05:06,000 --> 00:05:11,000 우리가 할 수있는 한 가지 방법은 페이지의 URL에 정보를 인코딩하는 것입니다. 78 00:05:11,000 --> 00:05:14,000 웹을 검색 할 때, 당신은 발견 할 수 있습니다 약간의 URL 79 00:05:14,000 --> 00:05:20,000 를 포함? 앰퍼샌드와 등호를 포함하는 문자열 하였다. 80 00:05:20,000 --> 00:05:23,000 URL의이 부분은 쿼리 문자열로 알려져있다, 81 00:05:23,000 --> 00:05:29,000 이것은 당신이 효과적으로 당신의 PHP 스크립트에 인수를 전달할 수 있습니다. 82 00:05:29,000 --> 00:05:34,000 쿼리 문자열은 해시 테이블과 같은 키 값 쌍으로 구성되어 있습니다. 83 00:05:34,000 --> 00:05:38,000 등호 키와 해당 값을 구분 84 00:05:38,000 --> 00:05:41,000 앰퍼샌드 쌍을 분리하는 동안. 85 00:05:41,000 --> 00:06:05,000 http://localhost/get.php?foo=bar&baz=qux처럼 보이는 URL 86 00:06:05,000 --> 00:06:09,000 쿼리 문자열에있는 키 값 쌍을 가지고 있습니다. 87 00:06:09,000 --> 00:06:12,000 키 foo는, 값 표시 줄에 매핑 88 00:06:12,000 --> 00:06:16,000 그리고 키 바즈 값 qux에 매핑됩니다. 89 00:06:16,000 --> 00:06:23,000 우리는 쉽게, PHP에서 특별한 변수를 사용하여 이러한 키 값 쌍에 액세스 할 수 90 00:06:23,000 --> 00:06:29,000 $ _GET. 91 00:06:29,000 --> 00:06:32,000 $ _GET는 연관 배열입니다 92 00:06:32,000 --> 00:06:36,000 이 자동으로 쿼리 문자열 데이터로 채워집니다. 93 00:06:36,000 --> 00:06:46,000 즉,이 URL의 $의 _GET [ "foo는"] 주어진 것을 의미한다 94 00:06:46,000 --> 00:06:49,000 문자열 표시 줄에 해당 될 것입니다. 95 00:06:49,000 --> 00:06:56,000 >> 의 행동에 $ _GET을 볼 get.php에 살펴 보자. 96 00:06:56,000 --> 00:07:00,000 여기에서 우리는, 위해서 var_dump라는 함수를 사용하는 97 00:07:00,000 --> 00:07:03,000 어떤 배열 또는 다른 변수를 지정한 경우 98 00:07:03,000 --> 00:07:05,000 그것은 우리를 위해 인쇄 할 수 있습니다. 99 00:07:05,000 --> 00:07:12,000 이제 우리는 간단하게 액세스 할 경우 http://localhost/get.php 100 00:07:12,000 --> 00:07:17,000 우리는 쿼리 문자열을 제공하지 않았기 때문에 우리는 하늘의 배열을 볼 수 있습니다. 101 00:07:17,000 --> 00:07:29,000 우리는 http://localhost/get.php?foo=bar&baz=qux를 통해 쿼리 문자열을 제공 할 경우 102 00:07:29,000 --> 00:07:34,000 우리는 $ _GET 변수가 포함 된 것을 볼 수 있습니다 103 00:07:34,000 --> 00:07:37,000 쿼리 문자열의 키 값 쌍. 104 00:07:37,000 --> 00:07:42,000 그러나 우리는 페이지의 URL 내에서 우리의 데이터를 넣을 것을 원하지 않는 경우? 105 00:07:42,000 --> 00:07:46,000 많은 양의 데이터의 경우, 이것은 꽤 추한 URL이 될 수 있습니다 106 00:07:46,000 --> 00:07:49,000 그것은 우리의 빛나는 웹 사이트 모양의 색상을 만들려고하고있다. 107 00:07:49,000 --> 00:07:52,000 우리는 대신에 몸에 쿼리 문자열을 넣을 수 있습니다 108 00:07:52,000 --> 00:07:57,000 오히려 요청의 URL보다 HTTP 요청. 109 00:07:57,000 --> 00:08:02,000 그 다음 우리는 PHP의 $ _POST 변수를 사용할 수 있습니다 110 00:08:02,000 --> 00:08:05,000 키 값 쌍에 액세스합니다. 111 00:08:05,000 --> 00:08:10,000 이렇게하는 한 가지 방법은 HTML 양식입니다. 112 00:08:10,000 --> 00:08:13,000 여기서 우리는 간단한 HTML 양식이 있습니다. 113 00:08:13,000 --> 00:08:17,000 이 양식 방법의 특성이 포스트 것을 여기에서 알 수 있습니다. 114 00:08:17,000 --> 00:08:21,000 이 폼의 키 값 쌍을 넣어 브라우저를 알려줍니다 115 00:08:21,000 --> 00:08:25,000 오히려보다 URL 요청의 본문에. 116 00:08:25,000 --> 00:08:28,000 >> 우리는 값이이 속성에 대해 얻을 사용한다면 117 00:08:28,000 --> 00:08:32,000 다음 폼의 키 값 쌍 대신 쿼리 문자열로 갈 것입니다, 118 00:08:32,000 --> 00:08:36,000 그래서 우리는 다시 $ _GET을 통해 그들에 액세스 할 수 있습니다. 119 00:08:36,000 --> 00:08:42,000 폼의 동작 특성은 위치 데이터를 전송하는 브라우저를 알려줍니다. 120 00:08:42,000 --> 00:08:46,000 여기에 우리의 2 입력 요소 이름의 속성이 있습니다. 121 00:08:46,000 --> 00:08:51,000 이름 속성의 값은, 우리의 데이터에 키가 될 것입니다 122 00:08:51,000 --> 00:08:56,000 및 텍스트 입력의 값은 그 키의 값이 될 것이다. 123 00:08:56,000 --> 00:08:59,000 이제 post.php에서 살펴 보자, 124 00:08:59,000 --> 00:09:03,000 이 양식에 제출되는 파일. 125 00:09:03,000 --> 00:09:10,000 우리가 전에했던 것처럼, 우리는 단순히 $ _POST 변수의 내용을 표시하고 있습니다. 126 00:09:10,000 --> 00:09:18,000 >> 의이 http://localhost/form.php으로 폼에 탐색 할 수 있습니다. 127 00:09:18,000 --> 00:09:23,000 우리는 양식을 제출하면 이제 우리는 볼 수 form.php의 데이터 128 00:09:23,000 --> 00:09:30,000 URL에 쿼리 문자열을 추가하지 않고 post.php에 전달됩니다. 129 00:09:30,000 --> 00:09:35,000 이제 우리는, PHP 페이지 사이에서 데이터를 전달하는 2 가지 방법을 본 적이 130 00:09:35,000 --> 00:09:37,000 GET 및 POST. 131 00:09:37,000 --> 00:09:41,000 우리의 예에서, 우리는 HTTP 요청이 다른 종류를 사용 하였다. 132 00:09:41,000 --> 00:09:45,000 예상 할 수 있듯이 우리가 채워진 경우, GET 요청을 사용 하였다 133 00:09:45,000 --> 00:09:51,000 URL 및 POST 요청에서 $ _GET을 사용 하였다 134 00:09:51,000 --> 00:09:55,000 우리는 $의 _POST를 채워 때. 135 00:09:55,000 --> 00:09:59,000 웹 응용 프로그램을 설계에 그것은 GET 요청을 사용하여 엄지 손가락의 좋은 규칙의 136 00:09:59,000 --> 00:10:03,000 귀하의 응용 프로그램은 데이터를 읽고, POST 요청 때 137 00:10:03,000 --> 00:10:05,000 귀하의 응용 프로그램은 데이터를 쓸 때. 138 00:10:05,000 --> 00:10:09,000 예를 들어, 검색 쿼리는 응용 프로그램에서 데이터를 읽습니다, 139 00:10:09,000 --> 00:10:12,000 그래서 GET 요청은 의미가 있습니다. 140 00:10:12,000 --> 00:10:17,000 반면에, 당신의 응용 프로그램은 등록 양식과 같은를 통해 데이터를 쓸 것입니다, 141 00:10:17,000 --> 00:10:22,000 그래서 POST 요청은 더 많은 의미를 만들 것, 그리고 그 일부 기술에 대한 개요의 142 00:10:22,000 --> 00:10:26,000 우리는 PHP를 사용하여 웹 사이트를 만들 수 CS50에 사용됩니다. 143 00:10:26,000 --> 00:10:30,000 >> 내 이름은 토미이고,이 CS50입니다. 144 00:10:30,000 --> 00:10:36,000 [CS50.TV]