리터럴 문자 시니어 번호 예시 및 설명 1 파이썬 줄의 시작과 일치합니다. 캐릭터 클래스 시니어 번호 예시 및 설명 1 [Pp]파이썬 파이썬 또는 파이썬 일치 2 문지르다[예] 루비 또는 루브 일치 3 [아이오우] 하나의 소문자 모음과 일치 4 [0-9] 임의의 숫자와 일치합니다. [0123456789]와 동일 5 [a-z] 모든 소문자 ASCII 문자와 일치 6 [A-Z] 모든 대문자 ASCII 문자와 일치 7 [a-zA-Z0-9] 위의 항목 중 하나와 일치 8
시니어 번호 예시 및 설명 1 R(?#comment) R과 일치합니다. 나머지는 댓글입니다 2 R(?i)uby uby와 일치하는 동안 대소문자를 구분하지 않습니다. 3 R(?i:uby) 같은 상기와 4 문지르다(?:y|le)) \1 역참조를 생성하지 않고 그룹화만
공통 게이트웨이 인터페이스(CGI)는 외부 게이트웨이 프로그램이 HTTP 서버와 같은 정보 서버와 인터페이스하기 위한 표준입니다. 현재 버전은 CGI/1.1이고 CGI/1.2는 진행 중입니다. 웹 브라우징 CGI의 개념을 이해하기 위해 하이퍼 링크를 클릭하여 특정 웹 페이지나 URL을 탐색할 때 어떤 일이 발생하는지 살펴보겠습니다. 브라우저가 HTTP 웹 서버에 접속하여 URL, 즉 파일 이름을 요구합니다. 웹 서버는 URL을 구문 분석하고 파일 이름을 찾습니다. 해당 파일을 찾으면 브라우저로 다시 보내고, 그렇지 않으면 잘못
다음은 hello.py라는 CGI 스크립트에 연결된 간단한 링크입니다. 이 파일은 /var/www/cgi-bin 디렉토리에 보관되며 다음과 같은 내용을 담고 있습니다. CGI 프로그램을 실행하기 전에 chmod 755 hello.py를 사용하여 파일 모드를 변경했는지 확인하십시오. 파일을 실행 가능하게 만드는 UNIX 명령입니다. 예 #!/usr/bin/python print "Content-type:text/html\r\n\r\n" print '</html>' print '<
모든 CGI 프로그램은 다음 환경 변수에 액세스할 수 있습니다. 이러한 변수는 CGI 프로그램을 작성할 때 중요한 역할을 합니다. 시니어 번호 변수 이름 및 설명 1 CONTENT_TYPE 콘텐츠의 데이터 유형입니다. 클라이언트가 첨부된 콘텐츠를 서버로 보낼 때 사용됩니다. 예를 들어 파일 업로드. 2 CONTENT_LENGTH 쿼리 정보의 길이입니다. POST 요청에만 사용할 수 있습니다. 3 HTTP_COOKIE 키와 값 쌍의 형태로 설정된 쿠키를 반환합니다. 4 HTTP_USER_AGENT User-
GET 메서드는 페이지 요청에 추가된 인코딩된 사용자 정보를 보냅니다. 페이지와 인코딩된 정보는 ? 다음과 같은 문자 - https://www.test.com/cgi-bin/hello.py?key1=value1&key2=value2 GET 방법은 브라우저에서 웹 서버로 정보를 전달하는 기본 방법이며 브라우저의 Location:box에 나타나는 긴 문자열을 생성합니다. 서버에 전달할 비밀번호나 기타 민감한 정보가 있는 경우 GET 방법을 사용하지 마십시오. GET 메서드에는 크기 제한이 있습니다. 요청 문자열에는 1024자만 보낼
일반적으로 CGI 프로그램에 정보를 전달하는 보다 안정적인 방법은 POST 방법입니다. 이것은 GET 메소드와 정확히 같은 방식으로 정보를 패키징하지만, ? URL에서 별도의 메시지로 보냅니다. 이 메시지는 표준 입력의 형태로 CGI 스크립트에 들어옵니다. 예 다음은 GET 및 POST 메서드를 처리하는 동일한 hello_get.py 스크립트입니다. #!/usr/bin/python Import modules for CGI handling import cgi, cgitb # Create instance of FieldStorage
확인란은 둘 이상의 옵션을 선택해야 할 때 사용됩니다. 예시 다음은 두 개의 확인란이 있는 양식의 HTML 코드 예입니다. <form action = "/cgi-bin/checkbox.cgi" method = "POST" target = "_blank"> <input type = "checkbox" name = "maths" value = "on" /> Maths <input type = &quo
라디오 버튼은 하나의 옵션만 선택해야 할 때 사용됩니다. 예시 다음은 두 개의 라디오 버튼이 있는 양식에 대한 HTML 코드의 예입니다. - <form action = "/cgi-bin/radiobutton.py" method = "post" target = "_blank"> <input type = "radio" name = "subject" value = "maths" /> Maths <inpu
TEXTAREA 요소는 여러 줄 텍스트가 CGI 프로그램에 전달되어야 할 때 사용됩니다. 예시 다음은 TEXTAREA 상자가 있는 양식의 HTML 코드 예입니다. <form action = "/cgi-bin/textarea.py" method = "post" target = "_blank"> <textarea name = "textcontent" cols = "40" rows = "4"> Type yo
드롭다운 상자는 사용할 수 있는 옵션이 많지만 하나만 선택될 때 사용됩니다. 예 다음은 하나의 드롭다운 상자가 있는 양식에 대한 예제 HTML 코드입니다. - <form action = "/cgi-bin/dropdown.py" method = "post" target = "_blank"> <select name = "dropdown"> <option value = "Maths" selected>Maths<
HTTP 프로토콜은 상태 비저장 프로토콜입니다. 상용 웹사이트의 경우 서로 다른 페이지 간에 세션 정보를 유지 관리해야 합니다. 예를 들어, 하나의 사용자 등록은 여러 페이지를 완료한 후에 종료됩니다. 모든 웹 페이지에서 사용자의 세션 정보를 유지하는 방법은 무엇입니까? 많은 상황에서 쿠키를 사용하는 것은 더 나은 방문자 경험이나 사이트 통계에 필요한 선호도, 구매, 수수료 및 기타 정보를 기억하고 추적하는 가장 효율적인 방법입니다. 작동 방식 귀하의 서버는 쿠키 형태로 방문자의 브라우저에 일부 데이터를 보냅니다. 브라우저는 쿠
브라우저에 쿠키를 보내는 것은 매우 쉽습니다. 이 쿠키는 HTTP 헤더와 함께 Content-type 필드로 전송됩니다. UserID와 Password를 쿠키로 설정하고 싶다고 가정합니다. 쿠키 설정은 다음과 같이 이루어집니다 - 예시 #!/usr/bin/python print "Set-Cookie:UserID = XYZ;\r\n" print "Set-Cookie:Password = XYZ123;\r\n" print "Set-Cookie:Expires = Tuesday, 31-Dec-20
설정된 모든 쿠키를 검색하는 것은 매우 쉽습니다. 쿠키는 CGI 환경 변수 HTTP_COOKIE에 저장되며 다음 형식을 갖습니다 - key1 = value1;key2 = value2;key3 = value3.... 예시 다음은 쿠키를 검색하는 방법의 예입니다. #!/usr/bin/python # Import modules for CGI handling from os import environ import cgi, cgitb if environ.has_key('HTTP_COOKIE'): for
파일을 업로드하려면 HTML 양식에 enctype 속성이 multipart/form-data로 설정되어 있어야 합니다. . 파일 유형이 있는 입력 태그는 찾아보기 버튼을 생성합니다. <html> <body> <form enctype = "multipart/form-data" action = "save_file.py" method = "post"> <p>File: <input type =
경우에 따라 사용자가 링크를 클릭할 수 있는 옵션을 제공하고 실제 콘텐츠를 표시하는 대신 사용자에게 파일 다운로드 대화 상자를 표시할 수 있습니다. 이것은 매우 쉽고 HTTP 헤더를 통해 달성할 수 있습니다. 이 HTTP 헤더는 이전 섹션에서 언급한 헤더와 다릅니다. 예를 들어 FileName 주어진 링크에서 파일을 다운로드할 수 있는 경우 구문은 다음과 같습니다 - #!/usr/bin/python # HTTP Header print "Content-Type:application/octet-stream; name = \&
계속하기 전에 시스템에 MySQLdb가 설치되어 있는지 확인하십시오. Python 스크립트에 다음을 입력하고 실행하십시오 - #!/usr/bin/python import MySQLdb 다음 결과가 생성되면 MySQLdb 모듈이 설치되지 않았음을 의미합니다 - Traceback (most recent call last): File "test.py", line 3, in <module> import MySQLdb ImportError: No mo
MySQL 데이터베이스에 연결하기 전에 다음을 확인하십시오 - TESTDB 데이터베이스를 만들었습니다. TESTDB에 EMPLOYEE 테이블을 생성했습니다. 이 테이블에는 FIRST_NAME, LAST_NAME, AGE, SEX 및 INCOME 필드가 있습니다. 사용자 ID testuser 및 비밀번호 test123이 TESTDB에 액세스하도록 설정됩니다. Python 모듈 MySQLdb가 컴퓨터에 제대로 설치되었습니다. MySQL 튜토리얼을 통해 MySQL 기본 사항을 이해했습니다. 예시 다음은 MySQL 데이터베이스 TES
데이터베이스 연결이 설정되면 생성된 커서의 실행 메소드를 사용하여 데이터베이스 테이블에 테이블 또는 레코드를 생성할 준비가 됩니다. 예시 EMPLOYEE − 데이터베이스 테이블을 생성해 보겠습니다. #!/usr/bin/python import MySQLdb # Open database connection db = MySQLdb.connect("localhost","testuser","test123","TESTDB" ) # prepare a cursor obje
데이터베이스 테이블에 레코드를 생성하고자 할 때 필요합니다. 예시 다음 예는 SQL INSERT 문을 실행하여 EMPLOYEE 테이블에 레코드를 생성합니다 - #!/usr/bin/python import MySQLdb # Open database connection db = MySQLdb.connect("localhost","testuser","test123","TESTDB" ) # prepare a cursor object using cursor() meth