이런 화면이 뜨고 설치파일은 다운받아지지 않네요..??? 정말 당황스러운 순간이었어요..ㅜ . 윈도우처럼 좀 쉽게 다운받게 해주지 이게 뭐람..
그래서 git을 설치 못하는 와중에 문득 '맥북에서는 설치되지 않은 명령어 입력할 때 어떻게 나오나?' 생각하며 터미널로 접근해보았어요..!
tmi : 터미널로 접근하는 방법은 우상단 돋보기 모양 클릭한 다음 검색창에 '터미널' 검색하면 된답니다.
오른쪽 위 보이는 돋보기 모양
git 버전을 확인하는 명령어인 'git --version'을 입력했는데요.. 결과는 당연히..
.....??? 네..? 설치하라구요?? 그럼요!!!??! 바로 설치버튼 클릭합니다!!
허가된 사용자에 대한 약관 동의내용이군요! 이런건 당연히 "동의"해줘야 인지상정!
오.. 설치가 진행되는데..? 시간이 18시간..??? .... 인줄 알았으나 5분정도밖에 안걸리더라구요ㅋㅋㅋㅋ
완료가 되면 닫아주시고 아래 명령어를 입력해주세요!
$ git
.
오... 정상적으로 설치가 되었군요... 당황스럽지만 일단 되었으니.. 깃에 사용자 정보를 입력해보겠습니다!
git에서 사용자 정보를 입력하려면, git config 명령을 사용하는데요, 여기서 --global 옵션을 추가하면 현재 컴퓨터에 있는 모든 저장소에서 같은 사용자 정보를 사용하도록 설정하게 되어 있어요! . 저는 제 깃 계정에 설정된 이름과 메일인 seoneu, wonwoo9276@naver.com으로 설정해주었답니다!
.. 오늘의 포스팅 내용 세줄 정리..
1. 깃 설치 페이지에서 윈도우처럼 다운로드 버튼 클릭한다고 설치파일 다운로드 안됨. 2. 터미널 실행해서 git 명령어 입력하고 엔터쳐서 git 설치 안되어있으면 설치할거냐고 물어봄. 3. git 설치할거면 동의하면 알아서 설치되고 완료되면 Mac OS에서 깃 사용 가능.
.. 그렇습니다 ㅎㅎ 어렵게 돌아가지 마시고 저렇게 설치해보시는 것도 방법입니다!
뭔가 좀 헛고생한거 같지만.. 나름 맥 적응기라고 생각해야겠죸ㅋㅋㅋㅋ 포스팅은 여기서 마무리하도록 하겠습니다!!
<?php
/*********************************************
* 넘어오는 데이터가 정상인지 검사하기 위한 절차
* 실제 페이지에서는 적용 X
**********************************************/
//$_FILES에 담긴 배열 정보 구하기.
var_dump($_FILES);
// php 내부 소스에서 html 태그 적용 - 선긋기
echo "<hr>";
/*********************************************
* 실제로 구축되는 페이지 내부.
**********************************************/
// 임시로 저장된 정보(tmp_name)
$tempFile = $_FILES['imgFile']['tmp_name'];
// 파일타입 및 확장자 체크
$fileTypeExt = explode("/", $_FILES['imgFile']['type']);
// 파일 타입
$fileType = $fileTypeExt[0];
// 파일 확장자
$fileExt = $fileTypeExt[1];
// 확장자 검사
$extStatus = false;
switch($fileExt){
case 'jpeg':
case 'jpg':
case 'gif':
case 'bmp':
case 'png':
$extStatus = true;
break;
default:
echo "이미지 전용 확장자(jpg, bmp, gif, png)외에는 사용이 불가합니다.";
exit;
break;
}
// 이미지 파일이 맞는지 검사.
if($fileType == 'image'){
// 허용할 확장자를 jpg, bmp, gif, png로 정함, 그 외에는 업로드 불가
if($extStatus){
// 임시 파일 옮길 디렉토리 및 파일명
$resFile = "./img/{$_FILES['imgFile']['name']}";
// 임시 저장된 파일을 우리가 저장할 디렉토리 및 파일명으로 옮김
$imageUpload = move_uploaded_file($tempFile, $resFile);
// 업로드 성공 여부 확인
if($imageUpload == true){
echo "파일이 정상적으로 업로드 되었습니다. <br>";
echo "<img src='{$resFile}' width='100' />";
}else{
echo "파일 업로드에 실패하였습니다.";
}
} // end if - extStatus
// 확장자가 jpg, bmp, gif, png가 아닌 경우 else문 실행
else {
echo "파일 확장자는 jpg, bmp, gif, png 이어야 합니다.";
exit;
}
} // end if - filetype
// 파일 타입이 image가 아닌 경우
else {
echo "이미지 파일이 아닙니다.";
exit;
}
?>
이렇게 코드를 작성해보았습니다.
.
이전 PHP 포스팅에서 $_POST 필드를 이용해 form 태그의 method가 post인 data를 가져온 것을 볼 수 있습니다.
즉, $_POST 필드는 요청 시 method 속성의 값이 post 방식인 데이터를 배열 형태로 가져온다는 것을 알 수 있습니다.
일반적인 데이터라면 $_POST 필드를 이용해 값을 가져왔겠지만, 파일 데이터는 조금 다릅니다.
$_FILES라는 필드를 이용해 파일에 대한 데이터 값을 배열로 가져옵니다.
자세한 내용을 설명드리기 위해 var_dump() 함수를 이용해 $_FILES 필드에 담긴 배열 데이터를 모두 print하였습니다.
(PHP에서 데이터를 체크하기 위해 자주 사용하는 함수이니 꼭 알아두세요!!)
실행된 예시 화면을 보면서 조금 더 상세하게 설명드릴게요ㅎㅎ
.
1) fileUploadRequest.html 실행
fileUploadRequest.html 실행 화면
2) fileUploadRequest.html 페이지와 동일 경로 내 img 폴더 임의 생성
img 폴더 생성
빈 폴더
** 이미지가 업로드되는지 확인하기 위해 빈 폴더로 생성해 놓았습니다!
3) fileUploadRequest.html 페이지에서 "파일 선택" 버튼 클릭 후 첨부할 이미지 선택
첨부할 이미지 선택"파일 선택" 버튼 옆에 선택한 이미지의 파일명이 체크됨.
4) fileUploadRequest.html 페이지에서 "업로드" 버튼 클릭 후 결과 확인
fileUploadResult.php 결과 화면
5) fileUploadResult.php 페이지에서 설정한 경로에 선택한 이미지가 업로드 되었는지 확인.
img 폴더 재확인, 선택한 파일이 업로드된 부분 확인.
.
이런 식으로 테스트가 진행되었습니다.
1-3번 과정은 요청하는 페이지에 대한 과정이니 추가 설명을 생략하고, 바로 4번부터 상세하게 설명을 드리겠습니다.
fileUploadResult.php 소스 내 9번째 라인에서 "var_dump($_FILES);"로 체크한 부분을 통해