루비 CGI 방법
다음은 방법의 CGI 클래스의 목록입니다 :
아니오. | 방법 설명 |
---|---|
(1) | CGI :: 새로운 ([수준 = " 쿼리"]) CGI 개체를 만듭니다. 쿼리는 다음 값이 될 수 있습니다 :
|
이 | CGI :: 이스케이프 (STR) URL 인코딩 된 문자열 탈출 |
3 | CGI :: 언 이스케이프 (STR) 이스케이프를 통해 () 인코딩 된 문자열을 디코딩한다. |
4 | CGI :: escapeHTML (STR) 포함, HTML 특수 문자를 코딩 : & <>. |
(5) | CGI :: unescapeHTML (STR) 를 포함한 특수 HTML 문자를 디코딩 : & <>. |
6 | CGI :: escapeElement (STR [요소 ...]) HTML을 지정된 HTML 요소에 특수 문자를 코딩. |
(7) | CGI :: unescapeElement (캐릭터, 요소 [ 요소 ...]) 지정된 HTML 요소에 특수 HTML 문자를 디코딩. |
8 | CGI :: 구문 분석 (쿼리) 쿼리 문자열을 구문 분석 = 키 "값 쌍을 포함하는 해시를 반환합니다. |
9 | CGI :: 예쁜 (문자열 [, 리더 = ""]) 위로 깔끔한 HTML 형식입니다. 당신이리더를 지정하면각 행의 시작 부분에 기록됩니다.리더기본값은 두 개의 공간이다. |
(10) | CGI :: rfc1123_date (시간) RFC-1123 형식으로 시간에 따라 (예를 들어, 2008년 6월 2일 (화) 0시 0 분 0 초 GMT). |
CGI 인스턴스 방법
다음 예는 CGI합니다 :: 변수 C에 할당 된 새 개체, 아래의 방법 :
아니오. | 방법 설명 |
---|---|
(1) | C [이름] 그것은 해당 필드라는이름의값을 포함하는 배열을반환합니다. |
이 | c.checkbox (이름 [, 값은 [ 확인 = 거짓]]) c.checkbox (옵션) 체크 박스 필드를 정의하는 HTML 캐릭터 라인을 돌려줍니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
3 | c.checkbox_group (이름, 값 ...) c.checkbox_group (옵션) > 체크 박스 그룹을 정의하는 데 사용되는 HTML 캐릭터 라인을 돌려줍니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
4 | c.file_field (이름 [크기 = 20 [최대]]) c.file_field (옵션) 정의 파일 필드에 HTML 캐릭터 라인을 돌려줍니다. |
(5) | c.form ([방법 = "게시물" [URL]]) {...} c.form (옵션) 위로 양식 양식 HTML 문자열을 정의했다. 블록이 지정된 경우, 형태의 컨텐츠로서 출력. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
6 | c.cookies 쌍으로 쿠키를 포함 위로 CGI :: 쿠키 객체입니다. |
(7) | c.header ([헤더]) 위로 CGI 헤더 정보를 제공합니다. 헤더 인수 열쇠 해시 값 인 경우, - 값 쌍의 헤더 정보를 생성하는 데 사용된다. |
8 | c.hidden (이름 [가치]) c.hidden (옵션) 숨겨진 필드를 정의하는 HTML 캐릭터 라인을 돌려줍니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
9 | c.image_button (URL [이름 [ ALT]]) c.image_button (옵션) 위로 HTML 이미지 버튼의 문자열을 정의합니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
(10) | c.keys 그것은 양식 필드 이름을 포함하는 배열을 반환합니다. |
(11) | c.key? (이름) c.has_key? (이름) c.include? (이름) 양식이 포함 된 경우 지정된 필드 이름은 true를 반환합니다. |
(12) | c.multipart_form ([URL [,] 인코딩 ]) {...} c.multipart_form (옵션) {...} 돌아 가기 멀티미디어 형태 (다중) HTML 문자열을 정의합니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
(13) | c.out ([헤더]) {... } 그리고 HTML 출력을 생성합니다. 페이지를 생성하기 위해 몸에 의해 사용되는 출력 블록은 문자열을 생성합니다. |
(14) | c.params 반환 해시는 양식 필드 이름과 값을 포함합니다. |
(15) | c.params = 해시 필드 이름과 값을 사용하여 설정. |
(16) | c.password_field (이름 [, 값 [, 크기 = 40, 최대]]]) c.password_field (옵션) 다시 암호 필드에 HTML 문자열을 정의합니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
(17) | c.popup_menu (이름, 값 ...) c.popup_menu (옵션) c.scrolling_list (이름, 값 ...) c.scrolling_list (옵션) 는 HTML 문자열을 정의하는 팝업 메뉴를 돌려줍니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
(18) | c.radio_button (이름 [, 값 [, 확인 = 거짓]]) c.radio_button (옵션) HTML 정의 라디오 필드의 문자열을 반환합니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
(19) | c.radio_group (이름, 값 ...) c.radio_group (옵션) 문자열 정의 HTML 라디오 버튼 그룹을 돌려줍니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
(20) | C.RESET (이름 [가치]) C.RESET (옵션) HTML 문자열을 반환하는 리셋 버튼을 정의합니다. 라벨의 속성 인수로 해시 함수가 될 수있다 |
(21) | c.text_field (이름 [, 값 [, 크기 = 40, 최대]]]) c.text_field (옵션) HTML 문자열 필드 정의 텍스트를 돌려줍니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
(22) | c.textarea (이름 [, COLS = 70 [행 = 10]]) {...} c.textarea (옵션) {...} 문자열 정의 HTML의 텍스트 영역 필드를 돌려줍니다. 당신은 블록, 텍스트 영역의 내용과 같은 코드 문자열 출력 블록을 지정합니다. 라벨의 속성은 매개 변수로 전달 해시 함수 될 수있다. |
HTML 생성
다음과 같이 다음 HTML 태그를 생성하기 위해 적절한 CGI 예를 들어, HTML 태그 이름을 사용할 수 있습니다, 예는 다음과 같습니다
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cgi.out{ cgi.html{ cgi.head{ "\n"+cgi.title{"This Is a Test"} } + cgi.body{ "\n"+ cgi.form{"\n"+ cgi.hr + cgi.h1 { "A Form: " } + "\n"+ cgi.textarea("get_text") +"\n"+ cgi.br + cgi.submit } } } }
CGI 개체 속성
당신은 다음의 건물 인 CGI 인스턴스를 사용할 수 있습니다 :
재산 | 반환 값 |
---|---|
동의 | 사용 가능한 MIME 타입 |
accept_charset | 허용되는 문자 세트 |
accept_encoding | 사용 가능한 코드 |
으로 accept_language | 사용 가능한 언어 |
AUTH_TYPE | 사용 가능한 유형 |
raw_cookie | 쿠키 데이터 (원본 문자열) |
CONTENT_LENGTH | 콘텐츠 길이 (콘텐츠 길이) |
콘텐츠 _ | 콘텐츠 형식 (콘텐츠 형식) |
부터 | 클라이언트 이메일 주소 |
GATEWAY_INTERFACE | CGI 버전 |
PATH_INFO | 통로 |
PATH_TRANSLATED | 전환 경로 후 |
QUERY_STRING | 쿼리 문자열 |
리퍼러 | URL을 액세스하기 전에 |
REMOTE_ADDR | 클라이언트 호스트 어드레스 (IP) |
REMOTE_HOST | 클라이언트 호스트 이름 |
REMOTE_IDENT | 클라이언트 이름 |
REMOTE_USER | 인증 된 사용자 |
REQUEST_METHOD | 요청 메소드 (GET, POST 등) |
SCRIPT_NAME | 매개 변수 이름 |
서버 _ | 서버 이름 |
SERVER_PORT | 서버 포트 |
SERVER_PROTOCOL | 서버 프로토콜 |
SERVER_SOFTWARE | 서버 소프트웨어 |
USER_AGENT | 사용자 에이전트 (사용자 에이전트) |