⑴ php怎麼讓後台修改文欄位落識別空格鍵和回車鍵
使用 str_replace 函數。
下面程序段就是我自己的網站上用的,功能是把表達成了 L 行數組的一篇文章(每行是一維數組的一個元素)每行後面的「回車」和「換行」去掉,然後用統一的格式來進行換行。
for($i=0;$i<$L;$i++)
{
$F[$i]=str_replace('\r', '', $F[$i]);
$F[$i]=str_replace('\n', '', $F[$i]);
}
因為客戶使用Window時,換行符號是「回車+換行」;使用蘋果系統發來的文欄位換行符號是「回車」;使用Unix/Linux的來訪者送來的文欄位換行符號是「換行」;我們用這方法把它們通通去掉,再用一種統一的格式來供後續處理。
⑵ php如何防止網站內容被採集
1、限制IP地址單位時間的訪問次數
分析:沒有哪個常人一秒鍾內能訪問相同網站5次,除非是程序訪問,而有這種喜好的,就剩下搜索引擎爬蟲和討厭的採集器了。
弊端:一刀切,這同樣會阻止搜索引擎對網站的收錄
適用網站:不太依靠搜索引擎的網站
採集器會怎麼做:減少單位時間的訪問次數,減低採集效率
2、屏蔽ip
分析:通過後台計數器,記錄來訪者ip和訪問頻率,人為分析來訪記錄,屏蔽可疑Ip。
弊端:似乎沒什麼弊端,就是站長忙了點
適用網站:所有網站,且站長能夠知道哪些是google或者網路的機器人
採集器會怎麼做:打游擊戰唄!利用ip代理採集一次換一次,不過會降低採集器的效率和網速(用代理嘛)。
3、利用js加密網頁內容
Note:這個方法我沒接觸過,只是從別處看來
分析:不用分析了,搜索引擎爬蟲和採集器通殺
適用網站:極度討厭搜索引擎和採集器的網站
採集器會這么做:你那麼牛,都豁出去了,他就不來采你了
4、網頁里隱藏網站版權或者一些隨機垃圾文字,這些文字風格寫在css文件中
分析:雖然不能防止採集,但是會讓採集後的內容充滿了你網站的版權說明或者一些垃圾文字,因為一般採集器不會同時採集你的css文件,那些文字沒了風格,就顯示出來了。
適用網站:所有網站
採集器會怎麼做:對於版權文字,好辦,替換掉。對於隨機的垃圾文字,沒辦法,勤快點了。
5、用戶登錄才能訪問網站內容
分析:搜索引擎爬蟲不會對每個這樣類型的網站設計登錄程序。聽說採集器可以針對某個網站設計模擬用戶登錄提交表單行為。
適用網站:極度討厭搜索引擎,且想阻止大部分採集器的網站
採集器會怎麼做:製作擬用戶登錄提交表單行為的模塊
⑶ 求一段PHP記錄來訪者IP、計算機環境信息。
//獲取在線IP
function getonlineip($format=0) {
global $_SGLOBAL;
if(empty($_SGLOBAL['onlineip'])) {
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$onlineip = getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$onlineip = $_SERVER['REMOTE_ADDR'];
}
preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches);
$_SGLOBAL['onlineip'] = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown';
}
if($format) {
$ips = explode('.', $_SGLOBAL['onlineip']);
for($i=0;$i<3;$i++) {
$ips[$i] = intval($ips[$i]);
}
return sprintf('%03d%03d%03d', $ips[0], $ips[1], $ips[2]);
} else {
return $_SGLOBAL['onlineip'];
}
}
⑷ 如何使用php得到來訪者和伺服器的相關信息
你可以實用 _SERVER變數和_ENV變數
下面是我的phpinfo中的php變數:
_SERVER["SCRIPT_NAME"] /php/index.php
_SERVER["HTTP_COOKIE"] cdb_sid=tcSZ7o
_SERVER["AUTH_PASSWORD"] no value
_SERVER["AUTH_TYPE"] no value
_SERVER["AUTH_USER"] no value
_SERVER["CONTENT_LENGTH"] 0
_SERVER["CONTENT_TYPE"] no value
_SERVER["PATH_TRANSLATED"] c:\inetpub\wwwroot
_SERVER["QUERY_STRING"] (url中問號後邊的部分)
_SERVER["REMOTE_ADDR"] 127.0.0.1
_SERVER["REMOTE_HOST"] 127.0.0.1
_SERVER["REMOTE_USER"] no value
_SERVER["REQUEST_METHOD"] GET
_SERVER["SERVER_NAME"] localhost
_SERVER["SERVER_PORT"] 80
_SERVER["SERVER_PROTOCOL"] HTTP/1.1
_SERVER["SERVER_SOFTWARE"] Microsoft-IIS/6.0
_SERVER["APPL_MD_PATH"] /LM/W3SVC/1/Root/php
_SERVER["APPL_PHYSICAL_PATH"] E:\web\php\
_SERVER["INSTANCE_ID"] 1
_SERVER["INSTANCE_META_PATH"] /LM/W3SVC/1
_SERVER["LOGON_USER"] no value
_SERVER["REQUEST_URI"] /php/index.php
_SERVER["URL"] /php/index.php
_SERVER["SCRIPT_FILENAME"] E:\web\php\index.php
_SERVER["ORIG_PATH_INFO"] /php/index.php
_SERVER["PATH_INFO"] no value
_SERVER["ORIG_PATH_TRANSLATED"] E:\web\php\index.php
_SERVER["DOCUMENT_ROOT"] c:\inetpub\wwwroot
_SERVER["PHP_SELF"] /php/index.php
_SERVER["HTTP_CONNECTION"] keep-alive
_SERVER["HTTP_KEEP_ALIVE"] 300
_SERVER["HTTP_HOST"] localhost
_SERVER["HTTP_USER_AGENT"] Mozilla/5.0 (Windows; U; Windows NT 5.2; zh-CN; rv:1.8.0.2) Gecko/20060308 Firefox/1.5.0.2
_SERVER["REQUEST_TIME"] 1146214357
_SERVER["argv"]
Array
(
)
_SERVER["argc"] 0
_ENV["ALLUSERSPROFILE"] C:\Documents and Settings\All Users
_ENV["ClusterLog"] C:\WINDOWS\Cluster\cluster.log
_ENV["CommonProgramFiles"] C:\Program Files\Common Files
_ENV["COMPUTERNAME"] LIUBO
_ENV["ComSpec"] C:\WINDOWS\system32\cmd.exe
_ENV["FP_NO_HOST_CHECK"] NO
_ENV["NUMBER_OF_PROCESSORS"] 1
_ENV["OS"] Windows_NT
_ENV["Path"] C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;E:\Program Files\MySQL\MySQL Server 5.0\bin;c:\php;c:\php\ext
_ENV["PATHEXT"] .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
_ENV["PROCESSOR_ARCHITECTURE"] x86
_ENV["PROCESSOR_IDENTIFIER"] x86 Family 15 Model 4 Stepping 1, GenuineIntel
_ENV["PROCESSOR_LEVEL"] 15
_ENV["PROCESSOR_REVISION"] 0401
_ENV["ProgramFiles"] C:\Program Files
_ENV["SystemDrive"] C:
_ENV["SystemRoot"] C:\WINDOWS
_ENV["TEMP"] d:\
_ENV["TMP"] d:\
_ENV["USERPROFILE"] C:\Documents and Settings\Default User
_ENV["windir"] C:\WINDOWS
相信很容易能看懂的,如果還有不懂,可以查php手冊