도로 위의 운전 초보자 도로 위의 PHP 초보자 (6)

WBOY
풀어 주다: 2016-07-29 08:34:56
원래의
962명이 탐색했습니다.

간단한 인터랙티브 웹사이트 구축하기 (2)
5.5 카운터
홈페이지에 카운터를 추가해 보겠습니다. 이 예제는 여러 번 설명되었지만 파일을 읽고 쓰는 방법과 자신만의 함수를 만드는 방법을 보여 주는 데 여전히 유용합니다. counter.inc에는 다음 코드가 포함되어 있습니다:
/*
|| 간단한 카운터
*/
function get_hitcount($counter_file)
{
/* 카운터를 0으로 재설정
이렇게 하면 카운터를 사용하지 않은 경우 초기 값은 1이 됩니다.
물론 초기 값을 20000으로 설정하여 사람들을 속일 수도 있습니다
*/
$ count=0;
// 카운터 파일이 이미 존재하는 경우 내용을 읽습니다.
if ( file_exists($counter_file) )
{
$fp=fopen($counter_file,"r");
// 상위 20개만 선택했습니다. 귀하의 사이트가 너무 인기가 없기를 바랍니다.
$count=0 fgets($fp,20)
// fgets() 함수는 문자열을 반환하므로 , 우리는 0을 추가하여 자동으로 정수로 변환할 수 있습니다.
fclose($fp);
// 파일 작업이 완료되었습니다
}
// 카운트 값을 한 번 늘립니다
$ count;
//파일에 새 카운트 값 쓰기
$fp=fopen($counter_file,"w")
fputs($fp,$count)
fclose($fp );
# 카운트 값 반환
return ($count)
}
?> 그런 다음 front.php3 파일을 변경하여 이 카운터를 표시합니다.
< ?
include ("include/counter.inc")
// counter.txt 파일에 카운터 값을 넣고 읽어서 출력합니다
printf ("

< B> d

n",
get_hitcount("counter.txt"));
include("include/footer.inc");
? >
새로운 front.php3을 살펴보세요
5.6 피드백 양식
방문자가 작성하여 이메일을 보낼 수 있는 또 다른 피드백 양식을 추가해 보겠습니다. 예를 들어, 우리는 이를 구현하기 위해 매우 간단한 방법을 사용합니다. 하나는 뷰어에게 입력 양식을 제공하고 다른 하나는 양식 데이터를 가져와 처리하여 사용자에게 메일로 보냅니다.
PHP에서 양식 데이터를 얻는 것은 매우 간단합니다. 양식이 전송되면 양식에 포함된 각 요소에 해당 값이 할당되며 일반 변수에 대한 참조처럼 사용할 수 있습니다.

🎜>

process_form.php3에서 $mytext 변수에 입력된 값이 할당됩니다. 매우 간단합니다! 마찬가지로 목록 상자, 체크 상자, 라디오 상자, 버튼 등과 같은 양식 요소에서 변수 값을 가져올 수 있습니다. 여러분이 해야 할 유일한 일은 나중에 참조할 수 있도록 양식의 각 요소에 이름을 지정하는 것입니다.
이 방법을 기반으로 이름, 이메일 주소, 메시지의 세 가지 요소가 포함된 간단한 양식을 생성할 수 있습니다. 방문자가 양식을 보내면 해당 양식을 처리하는 PHP 페이지(sendfdbk.php3)가 데이터를 읽어 이름이 비어 있는지 확인한 후 최종적으로 해당 데이터를 이메일로 보냅니다.
表单:form.php3
include("include/common.inc");
$title = "피드백";
include("include/header.inc");
?>













include("include/footer.inc");
?>
处理表单:sendfdbk.php3
include("include/common.inc");
$title = "피드백";
include("include/header.inc");
if ( $name == "" )  
{
// 现在我很讨厌匿name的留言!
echo "어? 왜 익명이신가요?";
}  
elseif ($name == "이름")  
{
// 这个浏览者真是不想透露姓name啊!
echo "안녕하세요 ? 이름< /B>는
실제 이름!
으로 대체되어야 합니다.";
}  
else  
{
// 输ude一段礼貌的感谢语
echo "
안녕하세요, $name님.


감사합니다.


감사합니다


$MyEmailLink
";
// 最后mail出去
mail($MyEmail, "Feedback.","
이름 : $name
E-mail : $email
댓글 : $comment  
") ;
}
include("include/footer.inc");
?>
  注의의: 如果你的测试过程中,该程序末能正常工業,请查看你的PHP配置文件(PHP3为php3.ini,PHP4为php.in)이 있습니다置好。因为本程序需要您적PHP配置文件作如下的设置:
  首先,사용NotePad打开你的php3.ini或是php.ini文件,查看一下[메일 기능]有没有设置好,默认的情况如下所示:
SMTP = localhost  
sendmail_from = me@localhost.com
지금 sendmail_from의 좋은 소식 이메일 주소, 例如可以改成这样:
SMTP = smtp.21cn.com
sendmail_from = pert@21cn.com  
修改后不要忘了启Apache,IIS或PWS服务哦.  
5.7 简单의 站内搜索引擎
  PHP는 以调외부에서 사용됩니다. Unix에서는 현재 grep을 사용하고 있습니다.索引擎。我们可以做的稍微复杂一些:使用一个页face既输流一个表单供用户输入搜索字串又输流查询结果.
include("include/common.inc");
$title = "검색"
include("include/header.inc")
?


" METHOD="POST">
"
SIZE="20" MAXLENGTH="30">


<
if ( !empty($searchstr) )
{
// 쿼리 문자열이 비어 있는지 확인
// 그렇지 않은 경우 grep 쿼리 호출
echo "
n"
// 대소문자 구분 모드에서 모든 파일을 쿼리하려면 grep 호출
$ cmdstr = "grep -i $searchstr *";
$fp = popen( $cmdstr, "r" ); // 명령을 실행하고 파이프를 출력합니다.
$myresult = array(); 쿼리 결과
while( $buffer = fgetss ($fp, 4096))
{
// grep은 다음 형식을 반환합니다. 파일 이름: 문자열과 일치하는 줄 수
// 따라서 The를 사용합니다. 함수 Split()은 데이터를 분리하고 처리합니다
list($fname, $fline) = Split(":",$buffer, 2)
// 첫 번째 일치 결과만 출력합니다
( !definated($myresult[$fname]))
$myresult[$fname] = $fline;
}
// 이제 결과를 배열에 저장하고 아래에서 처리하고 출력할 수 있습니다.
if ( count($myresult) )
{
echo "
    n"
    while(list($fname,$fline) = Each($myresult))
    echo "

  1. $fname : $fline
  2. n"
    echo "
n";

else 
{
// 검색 결과가 없는 경우
echo "죄송합니다. $searchstr에서 검색
결과가 없습니다.< ;BR> n";
}
pclose($fp);
}
?>
include("include/footer.inc");
? >
참고:
PHP_SELF는 PHP에 내장된 변수입니다. 현재 파일 이름을 포함합니다.
fgets()는 파일을 한 줄씩 읽으며 최대 길이는 4096(지정)자입니다.
fgetss()는 출력 HTML 태그를 구문 분석한다는 점을 제외하면 fgets()와 유사합니다.
split()의 매개변수는 2입니다. 출력을 두 부분으로만 분할하면 되기 때문입니다. ":"도 생략해야 합니다.
each()는 전체 배열을 보다 편리하게 순회하는 데 사용되는 배열 연산 함수입니다.
popen() 및 pclose()의 기능은 파이프라인 처리가 추가된다는 점을 제외하면 fopen() 및 fclose()와 매우 유사합니다.
위 코드는 검색 엔진을 구현하는 좋은 방법이 아니라는 점에 유의하세요. 이것은 우리가 PHP를 더 잘 배우는 데 도움이 되는 예일 뿐입니다. 이상적으로는 키워드 데이터베이스를 구축한 다음 검색해야 합니다. 

이상 도로 위 운전 초보와 도로 위 PHP 초보자(6)를 소개했는데, 도로 위 운전 초보의 내용도 포함되어 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿