Back-End/PHP

    코드이그나이터 uri 값 가져오기

    $uri_array=$this->uri->uri_to_assoc(3); $no = array_key_exists("no",$uri_array) ? $uri_array["no"] : ""; uri 는 일반적으로 사용되는 쿼리스트링 ( url의 ? 를 사용하여 get 전송하듯) 방법과 다르게 /로 구분한다. 코드이그나이터에서 url이 /user/add/no/1 이면 이 컨트롤러의 이름은 user이고 함수 add를 실행한다. 여기서 no값을 가져오기 위해서는 uri_to_assoc() 를 사용하여 몇번째 값을 가져올 것인지 입력한다. uri에서는 no/1 을 key/값 으로 되어있다. "no"를 찾고 그다음에 값을 no값으로 가져오는 것이다 그러니 no의 번째 자리를 찾고 그다음으로 오는 인자를 값으로 체크해..

    코드이그나이터 session 사용방법

    //1. library를 직접 선언하는 방법 수동 $this->load->library("session"); //config/autoload.php 에서 자동으로 불러오는 방법 $autoload['libraries'] = array('session'); 두가지의 방법이 있다. 예를 들어 회원 로그인이라고 치면 $uid=$this->input->post("uid",TRUE); $pwd=$this->input->post("pwd",TRUE); form으로 전송받은 uid와 pwd가 있다면, $data=array( "uid"=>"아이디", "pwd"=>"비밀번호" ); $this->session->set_userdata($data); $data를 통해 data를 넣고 set_userdata()를 통해 sess..

    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의 이름으로 담긴다. //먼저 본파일을 업로드한다. ..

    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 에서 지원되는 다른 방법도 ..