codeigniter 파일 다운로드

CodeIgniter는 이미 압축을위한 파일이나 디렉토리를 추가 할 수있는 zip 라이브러리를 제공했습니다. 나는 비슷한 문제가 있었다. 나는 문제가 브라우저에 전송 된 특정 마임과 헤더에 있다고 생각합니다. http://taggedzi.com/articles/display/forcing-downloads-through-codeigniter 여기에서 찾은 코드를 사용하게되었습니다. force_download 대신 아래 함수를 사용하십시오. 그것은 지금까지 나를 위해 일했다. CodeIgniter는 웹 응용 프로그램에서 몇 가지 유용한 기능을 쉽게 구현할 수 있도록 몇 가지 기본 제공 도우미를 제공합니다. 다운로드 도우미는 CodeIgniter에서 파일 다운로드 기능을 신속하게 통합 할 수있는 그 중 하나입니다. 이 CodeIgniter 자습서에서는 다운로드 도우미를 사용하여 데이터베이스에서 파일이나 이미지를 얼마나 쉽게 다운로드할 수 있는지 보여 드리겠습니다.

여기에서는 CodeIgniter 응용 프로그램의 데이터베이스에서 파일이나 이미지를 다운로드하는 예제 스크립트를 제공합니다. 이 스크립트에서는 다음과 같은 기능이 구현됩니다. 첫 번째 단추 클릭에서 압축에 지정된 파일을 추가합니다. 두 번째 단추 클릭에서 전체 디렉토리 파일과 압축을 위한 하위 디렉토리를 추가합니다. 파일 모델은 모든 데이터베이스 관련 작업을 처리하고 하나의 함수 getRows()를 포함합니다. getRows() 함수는 파일 테이블에서 레코드를 가져와 요청된 데이터를 반환합니다. 업로드된 파일을 저장할 디렉토리를 만듭니다. 업로드된 파일은 응용 프로그램 루트의 업로드/파일 디렉토리에 저장됩니다.

코드는 이미지에 대 한 파일을 작동 하지만 PDF 파일의 경우와 함께 제공, 그것은 작동 하지 않습니다. 모든 파일 확장명에 대해 테스트하지는 않았지만 PDF용으로 작동하지 않으므로 다른 다양한 파일 형식에서는 작동하지 않을 수 있습니다. 어떤 솔루션? CodeIgniter는 파일을 다운로드하는 좋은 도우미 기능이 있습니다. 그것은 단지 하나의 컨트롤러 방법을 작성하는 번거 로움없이 서버에서 다운로드 할 수있는 좋은 방법입니다. 전체 디렉터리 파일을 추가하려면 디렉터리 파일을 하나씩 읽고 ZipArchive 클래스 개체에 추가해야 합니다. 파일 정보를 저장하려면 테이블이 MySQL 데이터베이스에 필요합니다. 다음 SQL은 몇 가지 기본 필수 필드가 있는 파일 테이블을 만듭니다. 이 뷰는 Files 컨트롤러의 index() 메서드에 의해 로드됩니다. 모든 파일은 제목, 미리 보기 및 다운로드 링크와 함께 나열됩니다. 사용자가 다운로드 링크를 클릭하면 파일 컨트롤러의 download() 메서드에 의해 각 파일이 다운로드됩니다. 파일 컨트롤러는 파일 목록 및 다운로드 기능을 처리합니다. 여기에는 __construct(), 인덱스() 및 다운로드()의 세 가지 함수가 포함되어 있습니다.

__construct() – 파일 모델이 데이터베이스에서 파일 데이터를 가져오기 위해 로드됩니다. index() – 파일 모델을 사용하여 데이터베이스에서 파일의 데이터를 가져오고 뷰로 전달됩니다. download() – 요청된 파일이 디렉토리에서 제공된 ID에 따라 다운로드됩니다. download() 함수에서는 파일 정보가 데이터베이스에서 가져오고 force_download()는 디렉터리에서 해당 파일을 다운로드하는 데 사용됩니다. 특정 파일을 추가하려는 경우 read_file() 메서드를 사용하거나 read_dir() 메서드를 사용하여 압축을 위해 전체 파일 및 하위 디렉토리를 추가합니다. codeigniter 설명서를 통해 다음 코드를 사용하여 서버에서 파일을 강제로 다운로드합니다. 당신은 코드 igniter 또는 laravel에 다운로드 카운터를 추가하는 방법을, 우리를 보여 줄 수 있습니다 …. 다운로드 도우미는 컴퓨터에 데이터를 다운로드하도록 강제 하는 서버 헤더를 생성 하는 force_download() 기능을 가지고 주셔서 감사합니다.