분류 전체보기

    PHP 간단한 이미지 리사이징

    $name = $_FILES['file']['name']; //form 으로 보낸 file을 받는다. if($name){ //file이 존재하면 실행! $ext = explode('.', $name); //파일을 . 으로 잘라서 확장자를 담는다. $uploadname = time().$ext[1]; //업로드할 파일명을 정한다. 뒤에 담은 확장자를 붙인다. $uploadBase = '/uploads/'; //업로드할 경로이다. $uploadFile = $uploadBase.$uploadname; //경로+파일명 move_uploaded_file($_FILES['file']['tmp_name'], $uploadFile); //선택한 파일은 tmp_name의 이름으로 담긴다. //먼저 본파일을 업로드한다. ..

    웹 뷰 막힌 꾹누르기 CSS로 풀기

    img {-webkit-touch-callout:none;} a {-webkit-touch-callout:none;} a태그와 img 태그에 touch-callout을 none 해주면 된다.

    PHP PDO insert - lastInsertId()

    - insert를 하는 동시에 그 insert를 한 id 값을 가져와야 하는 경우가 있다. 문제. 1. 처음에는 insert를 하고 select 를 했지만 이렇게 하면 사용자가 동시다발적으로 insert를 하였을 경우 문제가 생길 수 있다. 가져와야 하는 값을 못가져오게 된다. 해결법. $sql = "INSERT INTO TABLE_TEST(id) VALUES('$id')"; $stmt = $dbh->prepare($sql); $stmt->execute(); $id = $dbh->lastInsertId(); 이렇게 inset sql 문을 만들고 exectue()를 한다음 줄에 lastInsertId()를 사용해서 id 값을 가져오면 된다. 이 방법 말고도 mysql , php 에서 지원되는 다른 방법도 ..

    자바스크립트 템플릿 리터널

    let test = ''; console.log(test); //초,중,고 let test2 = [""]; //php test 배열을 implode() 를 통해서 ,로 잘라서 // 자바스크립트 변수에 넣어줍니다. 그러면 자바스크립트 [0] 번째 index에 전부 들어가게 됩니다. console.log(test2); //초,중,고 var test3 = test2[0].split(","); 해서 test3라는 배열을 만들어 ,를 기준으로 잘라서 넣어 줍니다. PHP로 개발을 하다보니 자바스크립트 안에서 PHP 변수를 사용하는 경우가 생겼다. 이럴 경우에 '' 로 사용이 가능했다. 그렇지만 적용이 불가능한 점도 확인 하였다. 예로들면 반복문으로 자바스크립트 배열에 PHP 배열을 넣는 것인데, [index] 가..

    백준 11021번 A+B - 7 JAVA

    11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 문제 출처 백준 import java.io.*; import java.util.*; class Main{ public static void main(String args[]) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); StringTokenizer st; int n = Integer.parseInt(br.readLine()); for(int..

    스프링 통합 테스트

    이전에 테스트는 자바 코드로만 테스트를 한 것. 이제 스프링 부트 의 테스트 를 이용해보자 @SpringBootTest 어노테이션과 //스프링 컨테이너와 테스트를 함께 실행한다. @Transactional 을 사용한다. //테스트 케이스에 이 애노테이션이 있으면, 테스트 시작 전에 트랜잭션을 시작하고, 테스트 완료 후에 항상 롤백한다. 이렇게 하면 DB에 데이터가 남지 않으므로 다음 테스트에 영향을 주지 않는다. @SpringBootTest @Transactional class MemberServiceIntegrationTest { @Autowired MemberService memberService; @Autowired MemberRepository memberRepository //테스트 작성// /..

    thymeleaf 템플릿 엔진으로 view 띄우기

    @GetMapping("/members") public String list(Model model){ List members = mebmerService.findMembers(); model.addAttribute("members", members); return "members/memberList"; } /members 로 접근하게 되면 list 함수가 동작한다. 먼저 Member형 리스트를 생성하고 그 리스트에 이름은 members 이다. 여기에 memberService에 있는 모든 이름을 찾는 findMembers() 메소드를 실행한 값을 넣는다. 그 후 members 라는 이름으로 리스트 members를 모델로 만들어 준다. 그럼 이제 memebers/memberList 에 html을 찾아 간다...