현재 위치 - 주공해몽공식사이트 - 팔자 점술 - PHP 시작하기 기본 자습서

PHP 시작하기 기본 자습서

PHP 입문 기본 자습서 daquan

PHP 는 1994 년 Rasmus Ledorf 에 의해 창립되었습니다. 처음에는 Rasmus Ledorf 가 Perl 언어로 작성한 개인 웹 페이지를 유지하는 간단한 프로그램이었습니다. 이 도구들은 라스마스 러델프의 이력서와 통계 네트워크 트래픽을 보여주는 데 사용된다. 나중에 데이터베이스에 대한 액세스를 포함하여 c 언어로 다시 작성합니다. 그는 이 프로그램들을 PHP/FI 라는 양식 번역기와 통합했다. PHP/FI 는 데이터베이스에 연결하여 간단한 동적 웹 프로그램을 생성할 수 있습니다. Php 학습을 시작할 수 있도록 PHP 입문 자습서를 다음과 같이 공유합니다.

1, 포함 방법:

2. 참조 문서:

파일을 참조하는 두 가지 방법, 즉 요구 사항과 포함이 있습니다.

Require 는 require ("myrequirefile.php") 로 사용됩니다. 。 이 함수는 일반적으로 PHP 프로그램 앞에 배치됩니다. PHP 프로그램은 실행하기 전에 require 에서 지정한 파일을 읽고 PHP 프로그램 웹 페이지의 일부로 만듭니다. 자주 사용하는 기능도 이런 방식으로 웹 페이지에 도입될 수 있다.

Include ("my includefile.php") 와 같은 사용 포함 。 이 기능은 일반적으로 프로세스 제어의 처리 부분에 배치됩니다. PHP 프로그램 웹 페이지는 포함 파일을 읽을 때만 읽습니다. 이렇게 하면 프로그램 실행 프로세스가 단순화됩니다.

3, 치수 방법:

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

에코 "이것이 첫 번째 예입니다. \ n ";; //이 예는 C++ 구문에 대한 주석입니다 (PHP 주석은 C 와 유사! ) 을 참조하십시오

/* 이 예에서는 여러 줄을 사용합니다

주석 방법 */

에코 "이것은 두 번째 예입니다. \ n ";;

에코 "이것은 세 번째 예입니다. \ n ";; # 이 예에서는 UNIX 쉘 구문 주석을 사용합니다.

-응? & gt

4. 변수 유형:

$mystring = "나는 문자열";

$ NewLine = "newline \ n

$ int1= 38;

$ float1=1.732;

$ float2 =1.4e+2;

$MyArray 1 = array ("자식", "못생김", "그림자", "털");

여기에는 두 가지 문제가 있습니다. 먼저 PHP 변수는 $ 로 시작하고 두 번째 PHP 문은 $ 로 시작합니다. 마지막으로 ASP 프로그래머는 적응하지 못할 수도 있습니다. 이 두 가지 누락도 프로그램에서 가장 오류가 많은 곳이다.

5, 조작 기호:

수량 * * 잘못된 텍스트가 차단되었습니다 * * 개수:

상징적 의미

+? 작업을 추가합니다

-빼기 연산

* 곱셈

/나누기 연산

%? 나머지를 취하다

++누적

-응? 점진적/점진적/점진적/연속 감소

문자열 작업:

연산 기호는 하나밖에 없는데, 바로 영어의 마침표이다. 문자열을 연결하여 새 병합 문자열이 될 수 있습니다. & amp & amp;; 와 비슷합니다

& lt?

$ a = "PHP 4

$b = "강함";

Echo $ a. $ b;

-응? & gt

여기에도 두 가지 문제가 발생했다. 첫째, PHP 의 출력문은 echo 이고, 둘째, 다음과 유사합니다

논리 연산:

상징적 의미

Lt 가 없습니다

Gt 가 ... 보다 더 커요

& lt= 작거나 같음

& gt= 크거나 같음

= = 같음

! = 같지 않음

& amp& amp 및/및

그리고 (그리고)

또는 (또는)

또는 또는/또는

이상 또는 (다름 또는)

! 아니요 (아니요)

학습 목적: PHP 의 프로세스 제어를 파악합니다.

1, 만약 ... else 루프에는 세 가지 구조가 있습니다.

첫 번째는 조건이 단순한 판단으로 사용될 때만. 무슨 일이 생기면 어떻게 해야 합니까? 구문은 다음과 같습니다.

If (expr) {statement}

Expr 은 판단의 조건이며 일반적으로 논리 연산 기호를 기반으로 합니다. 문은 프로그램의 적격 실행 부분입니다. 프로그램에 한 줄만 있는 경우 중괄호 {} 를 생략할 수 있습니다.

예: 이 예에서는 중괄호가 생략되었습니다.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

If ($state== 1) 에코 "하하";

-응? & gt

여기서 특히 주목할 점은 = = 이 아니라 = =, 이는 ASP 프로그래머가 자주 범하는 실수일 수 있다는 점이다. = 은 대입입니다.

예: 이 예의 연산 부분에는 세 줄이 있으며 중괄호는 생략할 수 없습니다.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

If ($state== 1) {

에코 "하하;

에코 "& ltbr >;; 을 눌러 섹션을 인쇄할 수도 있습니다

}

-응? & gt

둘째, if 외부에 else 조건을 추가하여 "어떤 일이 발생하면 어떻게 처리해야 하는지, 그렇지 않으면 어떻게 해결해야 하는지" 구문은 다음과 같습니다.

If (expr) {statement1} else {statement2} 예: 위 예제를 수정하여 더 완벽하게 만듭니다. Else 에서는 한 줄의 명령만 실행되므로 중괄호를 넣을 필요가 없습니다.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

If ($state== 1) {

"하하" 에 동조하다.

에코 "& ltbr >;; 을 눌러 섹션을 인쇄할 수도 있습니다

}

그렇지 않으면 {

호응 "ㅋㅋ";

에코 "& ltbr >;; 을 눌러 섹션을 인쇄할 수도 있습니다

}

-응? & gt

세 번째는 재귀 IF ... ELSE 루프로, 일반적으로 다양한 의사 결정 판단에 사용됩니다. 그것은 몇 가지를 결합했다. 만약 .. 그렇지 않으면 처리한다.

아래 예를 직접 보세요.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

If($ a>;; $b) {

호응 "a 가 b 보다 큼";

} else if $ a = = $ b){

호응 "a 는 b 와 같다";

} 그렇지 않으면 {

에코 "a 는 b 보다 작다";

}

-응? & gt

위의 예에서는 두 개의 변수인 if...else 루프만 사용하여 두 개의 변수인 A 와 B 를 비교합니다. 이 반복 IF ... ELSE 루프를 사용할 때는 루프 레벨이 너무 많으면 설계 논리에 문제가 발생하거나 중괄호가 적으면 프로그램에 알 수 없는 문제가 발생할 수 있으므로 주의해서 사용해야 합니다.

2.for 루프는 하나만 있으며 변경되지 않았습니다. 그것의 문법은 다음과 같다.

For (expr1; Expr2 표현식 3) {문}

여기서 expr 1 은 조건의 초기 값입니다. Expr2 는 판단의 조건이며 일반적으로 논리 연산자로 판단됩니다. Expr3 은 명령문 실행 후 실행할 부분으로, 1 ... 등과 같은 다음 루프 판단의 조건을 변경하는 데 사용됩니다. 문은 프로그램의 적격 실행 부분입니다. 프로그램에 한 줄만 있는 경우 중괄호 {} 를 생략할 수 있습니다.

다음 예는 for 루프로 작성된 예입니다.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

For ($ I =1; $ I<= 10; $i ++) {

"이게 바로 이거야" 라고 덧붙입니다. I. "주기

}

-응? & gt

3, 스위치 루프, 일반적으로 복합 조건 판단 처리, 각 하위 조건은 case 명령 부분입니다. 실제로 많은 유사한 중간 주파수 명령을 사용하는 경우 스위치 루프에 통합할 수 있습니다.

구문은 다음과 같습니다

Switch (expr) {caseexpr1:statement1; 깨뜨리다 Case expr2: 문 2; 깨뜨리다 기본값: statementN 이 깨졌습니다. }

여기서 expr 조건은 일반적으로 변수 이름입니다. Case 뒤의 exprN 은 일반적으로 변수 값을 나타냅니다. 콜론 뒤에는 조건을 충족하는 실행할 부분이 있습니다. 브레이크로 순환에서 뛰어내리지 않도록 조심하세요.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

스위치 (날짜 ("d") {

사례' Mon':

에코 "오늘은 월요일이다";

깨뜨리다

사례 "화요일":

에코 "오늘은 화요일이다";

깨뜨리다

사례' 결혼':

에코 "오늘은 수요일이다";

깨뜨리다

사례 "Thu":

에코 "오늘은 목요일입니다."

깨뜨리다

사례 "Fri":

에코 "오늘은 금요일이다";

깨뜨리다

기본값:

에코 "오늘 휴가";

깨뜨리다

}

-응? & gt

여기서 주목해야 할 것은 break 가 빠뜨리지 말고, 기본값, 누락해도 된다는 것이다.

분명히 위의 예는 if 루프로 순환하는 것이 번거롭다. 물론, 설계 시 확률이 가장 큰 조건을 앞에 두고 확률이 가장 낮은 조건을 뒤에 두어 프로그램의 실행 효율을 높일 수 있습니다. 위 예의 확률은 매일 같기 때문에 조건의 선후순에 신경 쓰지 않아도 된다.

데이터베이스 구축 학습

PHP 에서 내 SQL 의 명령줄 편집은 초보자를 귀찮게 할 수 있습니다. 괜찮습니다. PHPMYADMIN 을 다운로드하여 설치할 수 있습니다. 나중에 이를 사용하여 편집 데이터베이스를 만들 수 있습니다.

그것의 용도에 대해 먼저 말해 보자.

Phpmyadmin 에 들어간 후 먼저 데이터베이스를 구축해야 합니다.

언어 (*) 여기에서 중국어 간체를 선택하고 왼쪽에 새 데이터베이스를 만듭니다. 여기에 데이터베이스 이름을 입력하고 생성을 누릅니다.

그런 다음 왼쪽 드롭다운 메뉴에서 생성한 데이터베이스를 선택합니다. 잠재적

데이터베이스 스토어에서 새 테이블을 만들려면 다음과 같이 하십시오.

이름:

필드 수:

양식 이름과 대략적인 필드 수 (모자라도 상관없으니 나중에 추가하거나 기본값으로 설정할 수 있음) 를 기입하고 실행을 누르십시오.

그런 다음 테이블 만들기를 시작할 수 있습니다.

첫 번째 열은 필드의 이름입니다. 두 번째 열에서 필드 유형을 선택합니다.

우리는 종종 다음을 사용합니다:

1)VARCHAR, 텍스트 유형

2)INT, 정수 유형

3) 부동, 부동 소수점

4) 일자, 일자 유형

5) 자동으로 추가 된 ID 는 어디에 있는지 물어볼 수 있습니다. INT 유형을 선택하고 아래의 extra 에서 auto_increment 를 선택하기만 하면 됩니다.

표를 만든 후 왼쪽에 만든 표를 볼 수 있습니다. 클릭 후 다음을 수행할 수 있습니다.

1) 오른쪽 구조별: 테이블 구조를 보고 수정합니다.

2) 오른쪽 찾아보기를 클릭하십시오: 양식의 데이터를 봅니다.

3) 오른쪽 SQL 에 따라 SQL 문을 실행합니다.

4) 오른쪽의 삽입: 레코드 행을 삽입합니다.

5) 오른쪽에 있는 삭제: 테이블의 모든 레코드를 삭제합니다.

6) 오른쪽에 있는 Delete: 테이블을 삭제합니다.

또 다른 중요한 기능은 수출입이다. 로컬에서 프로그램과 데이터베이스를 완성할 때 서버에 로컬 미러가 필요합니다. ASP 액세스가 간단하다면 MDB 파일을 직접 업로드할 수 있습니다. SQL SERVER 의 경우 가져오기를 위해 원격 서버에 연결할 수도 있습니다. 그런 다음 MY SQL 의 모든 SQL 문을 내보내고, 원격 서버의 PHPMYADMIN 으로 이동하고, 데이터베이스를 만든 후 SQL 을 눌러 방금 복사한 이 레벨에서 생성된 모든 SQL 문을 붙여넣을 수 있습니다.

데이터베이스에 연결하는 방법을 배웁니다

PHP 는 단지 함수 라이브러리일 뿐이며, 풍부한 함수를 통해 PHP 의 일부 부분을 상당히 쉽게 만들 수 있습니다. PHP 함수 브로셔를 다운로드하는 것이 좋습니다. 계속 사용하고 있습니다.

다음은 MYSQL 데이터베이스에 연결하는 간단한 방법입니다.

1, mysql_connect

MySQL 서버 연결을 엽니다.

구문: int MySQL _ connect(string[ 호스트 이름] [:포트], string[ 사용자 이름], string[ 암호]); 반환 값: 정수

이 함수는 MySQL 서버에 대한 연결을 설정합니다. 모든 매개변수는 생략할 수 있습니다. 이 함수를 매개 변수 없이 사용하면 hostname 매개 변수의 기본값은 localhost 이고, username 매개 변수의 기본값은 PHP 실행 프로세스의 소유자이며, password 매개 변수는 빈 문자열 (즉, 암호 없음) 입니다. Hostname 매개 변수 뒤에는 콜론과 포트 번호가 붙어 MySQL 에 연결하는 데 사용할 포트를 나타낼 수 있습니다. 물론 데이터베이스를 사용할 때 mysql_close () 를 사용하여 접속을 일찍 닫으면 리소스를 절약할 수 있습니다.

2, mysql_select_db

데이터베이스를 선택합니다.

구문: int MySQL _ select _ db (문자열 데이터베이스 _ 이름, int[ 링크 _ 식별자]); 반환 값: 정수

이 함수는 이후 데이터 쿼리에 사용할 MySQL 서버의 데이터베이스를 선택합니다. 성공할 경우 true 를 반환하고 실패할 경우 false 를 반환합니다.

가장 간단한 예는 다음과 같습니다.

$ conn = MySQL _ connect ("127.0.0.1",",",","");

Mysql _ select _ db ("shop");

내 SQL 데이터베이스에 연결하고 상점 데이터베이스를 엽니 다. 실제 응용에서는 잘못된 판단을 강화해야 한다.

데이터를 읽는 법을 배우다

먼저 두 가지 함수를 살펴보겠습니다.

1, mysql_query

질의 문자열을 보냅니다. 구문: int MySQL _ query (문자열 쿼리, int [link _ identifier]); 반환 값: 정수

이 함수는 관련 처리 또는 실행을 위해 MySQL 에 쿼리 문자열을 보냅니다. Link_IDentifier 매개변수를 지정하지 않으면 프로그램은 가장 최근에 연 id 를 자동으로 찾습니다. 질의 문자열이 업데이트, 삽입 및 삭제되면 참 또는 거짓일 수 있습니다. 을 눌러 섹션을 인쇄할 수도 있습니다 쿼리 문자열이 SELECT 이면 새 ID 값이 반환됩니다. False 가 반환되면 실행이 성공하지만 반환 값이 없는 것이 아니라 질의 문자열 오류입니다.

2.mysql_fetch_object 는 클래스 데이터를 반환합니다. 구문: objectmysql _ fetch _ object (intresult, int [result _ typ]); 반환 값: 클래스

이 함수는 질의 결과를 클래스 변수로 분할하는 데 사용됩니다. 결과에 데이터가 없으면 false 값을 반환합니다.

간단한 예를 하나 들어보죠.

& lt?

$ exec = "select * from user

$ result = MySQL _ query ($ exec);

While ($ RS = MySQL _ fetch _ object ($ result))

{

사용자 이름: 을 반향합니다. $ RS-& gt;; 사용자 이름입니다. "& ltbr >;; 을 눌러 섹션을 인쇄할 수도 있습니다

}

-응? & gt

물론 양식 user 에는 ASP 의 사용자 이름 필드와 유사한 사용자 이름 필드가 있습니다.

& lt%

Exec= "사용자 중에서 선택 *

Set RS = server.createobject ("adodb.recordset")

코네티컷, 1, 1

하지 않고 하다

Response.write "사용자 이름: & amprs ("사용자 이름 ") & amp“& ltbr >;;

Rs.movenext

고리

%>

물론 먼저 데이터베이스에 연결해야 합니다. 일반적으로 우리는 _ once ('conn.php'); Conn.php 에는 마지막으로 언급한 데이터베이스에 연결하는 코드가 있습니다.

두 개의 작은 명령을 사용하여 데이터 읽기 작업을 완료할 수 있습니다.

데이터를 추가, 삭제 및 수정하는 방법을 배웁니다.

Mysql _ query ($ exec);

이 문 자체는 모든 작업을 수행할 수 있지만 SQL 문 $exec 는 다릅니다.

Add: $ exec = "insert intotablename (item1,item 2) 값 ('). $ _ post ['항목1']. , "$ _ post ['item 1']") ";

Delete: $ exec = "delete from tablename where ...";

수정: $ exec = "update tablename set item1='". $ _ post ['항목1']. 어디 ... ";

여기까지 말하자면, 나는 양식과 PHP 변수 전달에 대해 이야기하고 싶다. 만약 그 중 하나가

양식이 POST 를 통해 제출된 경우 양식 파일을 처리할 때 $_POST['item 1'] 를 사용하여 변수 값을 얻을 수 있습니다. 마찬가지로 get 제출 양식은 $_GET['item 1'] 입니다.

간단합니까? 그러나 SQL 문이 길어질 수 있으므로 일반적으로 $exec 에 문제가 있습니다. 커넥터 또는' 를 사용하여 문자 필드를 닫습니다.

Mysql _ query ($ exec) 에 주석을 달 수 있습니다. 이 문은 echo $exec 대신 $ exec 를 출력하여 정확성을 확인합니다. 여전히 $exec 에 대한 오류를 찾을 수 없는 경우 이 SQL 문을 복사하고 phpmyadmin 에서 실행하여 오류 메시지를 볼 수 있습니다. 또한 민감한 문자열을 필드명으로 사용해서는 안 됩니다. 그렇지 않으면 date 와 같은 문제가 발생할 수 있습니다. 변수와 필드의 이름 지정은 작은 규칙을 따릅니다. 이 규칙은 때때로 자신에게 유리하며 초보자는 그 중요성을 무시할 수 없습니다.

회화 사용법을 배우다.

SESSION 에는 많은 기능이 있으며, 가장 일반적으로 사용되는 기능은 사이트 내 페이지 간의 변수 전달입니다.

페이지 시작 부분에서 session _ start (); 공개 회의 을 눌러 섹션을 인쇄할 수도 있습니다

그런 다음 세션 변수를 사용할 수 있습니다. 예를 들어, $ _ session ['item'] = "item1"; 가져올 값은 $ item1= $ _ session ['item']; 아주 간단합니다. 여기서 세션 변수가 비어 있는지 여부를 판단하는 것과 같은 함수를 사용할 수 있으므로 empty($_SESSION['inum']) 가 true 또는 false 를 반환하는 것으로 쓸 수 있습니다.

로그인 프로그램을 보고 사용자 이름과 비밀번호가 정확한지 판단합시다.

로그인 양식은 다음과 같습니다: 로그인.

& lttablewidth = "100%" height = "100%" border = "0" align = ";

& lttr & gt

& lt formaction = "check login.php" method = "post" > & lttdalign = "center" valign = "middle" > & lttablewidth = "400" border = "0" cellpadding =

& lttr class="tdbg ">

& lttdcolspan = "2" > & ltpalign = "center" > 관리자 로그인 & lt/p & gt;; & lt/TD & gt;;

& lt/tr & gt;;

& lttr class="tdbg ">

& lttd & gt& LTP align="center "> 사용자 이름</p > & lt/TD & gt;;

& lttd & gt & ltpalign = "센터" >

& lt input name = "username" type = "text" id = "username" >

& lt/p & gt;; & lt/TD & gt;;

& lt/tr & gt;;

& lttr class="tdbg ">

& lttd & gt& LTP align="center "> 비밀번호 & lt/p > & lt/TD & gt;;

& lttd & gt & ltpalign = "센터" >

& lt input name = "password" type = "password" id = "password" >

& lt/p & gt;; & lt/TD & gt;;

& lt/tr & gt;;

& lttr class="tdbg ">

& lttd colspan = "2" ><P align = "center" >

& lt input type = "submit" name = "submit" value = "submit" >

& lt input type = "reset" name = "submit2" value = "clear">.

& lt/p & gt;; & lt/TD & gt;;

& lt/tr & gt;;

& lt/table & gt;; & lt/TD & gt;; & lt/form & gt;;

& lt/tr & gt;;

& lt/table & gt;;

서류를 처리하는 것은 이렇다.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

Require _ once ('conn.php');

Session_start () 를 참조하십시오.

$ username = $ _ post ['username'];

$ password = $ _ post ['password'];

$ exec = "select * from admin where username ='". $username. ";

If($result=mysql_query($exec))

{

If ($ RS = MySQL _ fetch _ object ($ result))

{

($ RS-& gt;; 인 경우 비밀번호 = = $ 비밀번호)

{

$ _ session ['adminname'] = $ username;

헤더 ("위치: index.php");

}

기타

{

에코 "< 스크립트 & gtalert ('비밀번호 확인 오류!'' ); Location.href =' login.php'; & lt/스크립트 > ";

}

}

기타

{

에코 "< 스크립트 & gtalert ('사용자 이름 확인 오류!'' ); Location.href =' login.php'; & lt/스크립트 > ";

}

}

기타

{

에코 "< 스크립트 & gt 경고 ("데이터베이스 연결 오류! "" ); Location.href =' login.php'; & lt/스크립트 > ";

}

-응? & gt

Conn.php 는 다음과 같습니다.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

$ conn = MySQL _ connect ("127.0.0.1",",",","");

Mysql _ select _ db ("shop");

-응? & gt

$ _ session ['adminname'] = $ username; 로그인 여부를 확인하는 파일을 이렇게 쓸 수 있습니다. checkadmin.php.

& lt? 서버측 프로그래밍 언어 (professional hypertext preprocessor 의 약어)

Session_start () 를 참조하십시오.

If($_SESSION['adminname']=='')

{

에코 "< 스크립트 & gtalert ('먼저 로그인'); Location.href =' login.php'; & lt/스크립트 >;

}

-응? & gt

페이지 나누기 표시

핵심은 SQL 문에서 limit 를 사용하여 표시되는 레코드 수를 제한하는 것입니다. 현재 페이지를 기록하려면 변수 $page 가 필요하며 총 레코드 수는 $num 이 필요합니다

$page 의 경우 페이지가 없으면 0 으로 설정합니다

$ execc = "select count (*) from tablename";

$ resultc = MySQL _ query ($ execc);

$ RSC = MySQL _ fetch _ array ($ resultc);

$ num = $ RSC [0];

이것은 총 기록 수를 얻을 수 있다.

Ceil($num/ 10)) 한 페이지 레코드 10 이 있는 경우 총 페이지 수입니다.

그래서 이렇게 쓸 수 있습니다.

If (empty ($ _ get ['페이지']))

{

$ 페이지 = 0;

}

기타

{

$ page = $ _ get ['페이지'];

If ($ 페이지 < 0) $ 페이지 = 0;

If($ page & gt;; = ceil ($ num/10)) $ 페이지 = ceil ($ num/10)-1 //페이지는 0 부터 시작하므로-1 이어야 합니다.

}

이렇게 하면 $exec 가 $ exec = "select * from tablename limit" 를 쓸 수 있습니다. ($ page * 10). ",10";

// 10 한 페이지를 기록합니다.

우리가해야 할 마지막 일은 몇 가지 연결입니다.

& LTA href="xxx.php? 페이지 = 0 "> 홈페이지 & lt/a & gt;;

& LTA href="xxx.php? 페이지 =<? = ($ 페이지-1)? > & gtPrevPage & lt/a & gt;;

& LTA href="xxx.php? 페이지 =<? = ($ 페이지+1)? >&& gtNextPage & lt/a & gt;;

& LTA href="xxx.php? 페이지 =<? =ceil($num/ 10)- 1? > & gtLastPage & lt/a & gt;;

주의할 사항

1, 세미콜론을 놓치지 않도록 주의하십시오.

2. 변수 앞의 $ 를 놓치지 않도록 주의하세요.

3. SESSION 을 사용할 때 session _ start () 를 놓치지 않도록 주의합니다.

오류가 발생하면 다음 방법을 사용할 수 있습니다.

1. SQL 문에 오류가 있으면 주석을 달고 SQL 문을 출력합니다. 주석을 달고 후속 SQL 문을 튜닝합니다.

변수가 비어 있으면 일반적으로 현장에서 전달되지 않습니다. 출력 변수를 확인하고 양식의 id 와 이름을 확인합니다.

3. 데이터베이스 연결에 오류가 있을 경우 내 SQL 이 제대로 열려 있고 연결 명령문이 누락되었는지 확인합니다.

4. 들여쓰기를 주의하여 괄호 불일치 오류를 제거합니다.

큰 웹 사이트를 만들 때, 내 생각은 먼저 데이터베이스를 만들어 각 필드의 기능과 테이블 사이의 관계를 결정하는 것이다. 그런 다음 데이터 추가부터 시작하여 백그라운드 인터페이스를 디자인합니다. 추가가 성공하면 데이터베이스에서 직접 확인할 수 있고, 추가가 완료된 후 표시되는 페이지, 마지막으로 두 페이지를 결합할 수 있기 때문입니다. (데이비드 아셀, Northern Exposure (미국 TV 드라마), 성공명언) 일반적으로 배경에는 추가, 제거, 수정 및 표시가 포함됩니다. 무대 뒤에는 문제가 없고 프런트에도 큰 문제가 없다. 프런트에서는 보안과 내결함성, 출력 형식도 주의해야 합니다.

PHP 로 파일을 업로드하고 메일을 보내는 법을 배웁니다.

업로드 파일 양식에는 enctype="multipart/form-data "를 추가해야 합니다.

그리고

코드를 살펴 보겠습니다.

$ f =& $ http _ post _ files ['file'];

$ dest _ dir =' uploads// 업로드 디렉토리 설정

$dest=$dest_dir 입니다. /'.날짜 ("ymd") 입니다. "_". $ f ['이름']; //파일 이름을 날짜로 설정하고 여기에 파일 이름을 추가하여 중복을 피하겠습니다.

$ r = move _ uploaded _ file ($ f ['tmp _ name'], $ dest);

Chmod($dest, 0755); //업로드된 파일의 속성을 설정합니다.

업로드된 파일 이름은 date ('ymd') 입니다. "_". $ f ['이름'], 나중에 데이터베이스를 삽입할 때 사용할 수 있습니다. PHP 는 실제로 업로드된 파일을 임시 디렉토리에서 지정된 디렉토리로 이동합니다. Move _ uploaded _ file ($ f ['tmp _ name'], $ dest); 이것이 핵심입니다.

메일을 보내는 것은 더 간단하다. Mail () 함수를 사용할 수 있습니다.

메일 ("받는 사람 주소", "제목", "본문", "보낸 사람: 보낸 사람 \ r \ 회신: 보낸 사람 주소");

그러나 mail () 에는 서버 지원이 필요하고 SMTP 서버는 WINDOWS 에서 구성해야 합니다. 일반적으로 외부 리눅스 공간은 괜찮습니다.

파일을 업로드하는 것 같아요. ASP 보다 메일을 보내는 것이 훨씬 쉬워요. 함수를 호출하면 돼요. ASP 는 또한 FSO 및 JMAIL 과 같은 서버의 다양한 구성 요소를 사용해야 합니다.

을 눌러 섹션을 인쇄할 수도 있습니다