Time of Update: 2016-07-21
最近項目不是很大,所以時間比較的空間,昨天琢磨著寫點東西,想起了前幾天電信公司投票選微笑天使的活動,投票是要填寫驗證碼的,想了下想寫個投票作弊程式,可是等我放假回來,人家活動已經結束了,昨天突然想起來,就寫了一個擷取驗證碼圖片到本地的PHP程式,以備今後有類似的投票活動可以直接拿來使用。程式採用了PHP的GD庫,原理很簡單,就是先建立一張空白圖片,然後把驗證碼的圖片使用PHP
Time of Update: 2016-07-21
1. 取得請求行:Method、URI、協議 可以從超級變數$_SERVER中獲得,三個變數的值如下: $_SERVER['REQUEST_METHOD'].' '.$_SERVER['REQUEST_URI'].' '.$_SERVER['SERVER_PROTOCOL']."\r\n"; 2. 取得所有Header
Time of Update: 2016-07-21
如何開啟OpenSSL和mcrypt支援? 1,要想開啟mcrypt支援,系統需要安裝了libmcrypt.dll庫。 這個一般使用者是沒有安裝過的,但不用擔心,PHP的windows發行包裡已經給我們附帶了此檔案,在PHP壓縮包的根目錄下即可找到,然後將其複製到%system%/system32目錄下即可。 2,要想開啟OpenSSL支援,系統需要安裝libeay32.dll和ssleay32.dll兩個庫。 如果你以前安裝過OpenSSL,那麼你的系統目錄中應該已經存在這兩個檔案
Time of Update: 2016-07-21
thinkphp是什麼就不用多說了,一個輕量級的PHP MVC架構;前幾天搞搞這個東西,做了個相簿,發現,它的分頁很讓我糾結,特別是帶參分頁。 按照它的手冊來吧,沒多大效果;後來,直接看它的分頁類,也不是很複雜。搞明白了它的原理,只不過就是將$where數組中的參數,分離,以GET的方式,傳遞到分頁類中,然後再將這些參數又組合到查詢語句中,實現帶參分頁。然後,才發現,在$where數組中傳遞的,和表單中的name值要一致,才能這樣做。否則的話,傳遞過來,到了下一頁,是收不到的。 還有一個問題,$
Time of Update: 2016-07-21
用php substr函數截取字串一部分,但是字串中含有漢字時,結果就出現了亂碼,導致網頁標籤混亂,顯示不完整。 找到函數一個,分享一下。Copy to Clipboard引用的內容:[www.bkjia.com]function msubstr($str, $start, $len) { $tmpstr = “”; $strlen = $start + $len; for($i = 0; $i if(ord(substr($str, $i, 1)) > 0xa0) {
Time of Update: 2016-07-21
我把error_reporting設成 E_ALL了. 在讀資料時 如$row['name']時 會出現很多Notice: Undefined index: 錯誤, 應該怎麼辦? error_reporting(E_ALL & ~ E_NOTICE ) 這樣嗎? Undefined
Time of Update: 2016-07-21
有時候我們不想讓,一個網頁地址給人看到,簡單的方法就是將它加密成一串字元,函數如下:function encrypt($key, $plain_text) {$plain_text = trim($plain_text);$iv = substr(md5($key), 0,mcrypt_get_iv_size(MCRYPT_CAST_256,MCRYPT_MODE_CFB));$c_t = mcrypt_cfb (MCRYPT_CAST_256, $key, $plain_text,
Time of Update: 2016-07-21
在調試一個PHP程式時,報了這個錯誤, could not find driver 在網上搜一下,有解決方案如下,原來我的這個程式中用到了PDO對象,串連mysql 5. 在PHP的預設設定中,只開啟了PHP_pdo 模組, 沒有開啟PHP_pdo_mysql模組.所以才會出現找不到驅動程式的錯誤. 把這個模組開啟,重啟apache就可以了. 當然了,如果你用別的資料庫,開啟對應的模組就OK了。 但是,我這樣操作後依然提示 could not find driver
Time of Update: 2016-07-21
xdebug是PHP的一個擴充應用,有了xdebug就可以輕鬆的調試PHP程式,有了它,我們就不用使用var_dump(),print_r()之類的傻瓜調試函數了。Xdebug則提供了更多的功能,能全方位的對PHP指令碼進行調試。Xdebug主要的功能如下: 堆棧追蹤和函數追蹤; 錯誤資訊; 記憶體配置; 剖析php指令碼的資訊; 程式碼涵蓋範圍分析; 遠端偵錯分析;
Time of Update: 2016-07-21
curl()、file_get_contents()、snoopy.class.php這三個遠程頁面抓取或採集中用到的工具,默跡還是侵向於用snoopy.class.php,因為他效率比較高且不需要伺服器特定配置支援,在普通虛擬機器主機中即可使用,file_get_contents()效率稍低些,常用失敗的情況、curl()效率挺高的,支援多線程,不過需要開啟下curl擴充。下面是curl擴充開啟的步驟: 1、將PHP檔案夾下的三個檔案php_curl.dll,libeay32.dll,s
Time of Update: 2016-07-21
關於PHP下字串亂碼的問題,當一個頁面存在兩種編碼的時候,無論你乍麼選擇都會出現亂碼,那麼如何才能解決這個問題呢?烈火小編給大家提供的辦法:一。首先按國際慣例,檢查你的檔案編碼與資料庫、頁面編碼是否一致。二。如果“一”沒有問題,那麼就需要先判斷字串的編碼了,我們只要判斷一種就可以了,關於檢測是否為utf8編碼的問題,幫客之家以前發表過相關文章,但是不太好用,今天在網上找到一個比較完美的函數,代碼如下:Copy to
Time of Update: 2016-07-21
php擷取用戶端ip,簡單實用function getOnlineIP() { $cip = getenv ( 'HTTP_CLIENT_IP' ); $xip = getenv ( 'HTTP_X_FORWARDED_FOR' ); $rip = getenv ( 'REMOTE_ADDR' ); $srip = $_SERVER ['REMOTE_ADDR']; if ($cip && strcasecmp ( $cip, 'unknown' )) { $onlineip = $cip; }
Time of Update: 2016-07-21
UTF-8編碼的檔案分為帶Bom和不帶Bom兩種,帶Bom的大家都很容易處理,不帶Bom的會有點麻煩,所以寫了一個函數去判斷,代碼如下://返回 1 表示純 ASCII(即是所有字元都不大於127) //返回 2 表示UTF8 //返回 0 表示正常gb編碼function TestUtf8($text) { if(strlen($text) $lastch = 0; $begin = 0; $BOM = true; $BOMchs = array(0xEF, 0xBB, 0xBF);
Time of Update: 2016-07-21
PHP計劃任務、定時執行任務的實現用到的函數 ignore_user_abort(),set_time_limit(0),sleep($interval) 此代碼只要運行一次後關閉瀏覽器即可。 不知道能程式的效能會不會影響很大!ignore_user_abort();//關掉瀏覽器,PHP指令碼也可以繼續執行. set_time_limit(0);// 通過set_time_limit(0)可以讓程式無限制的執行下去 $interval=60*30;// 每隔半小時運行 do{
Time of Update: 2016-07-21
由於struts架構對request對象做了封裝,原來處理上傳圖片的upload_json.jsp檔案無法使用了,於是對kindeditor中處理上傳圖片的upload_json.jsp檔案進行重寫,通過多次測試後,成功實現了圖片的上傳。 //檔案儲存目錄路徑 img_upload是伺服器儲存上傳圖片的目錄名 String savePath =
Time of Update: 2016-07-21
在使用短串連方式時,每個HTTP請求對應一個TCP串連,請求完成後串連立即斷開,伺服器返回EOF。所以根據EOF就可判斷一次請求的結束,下面的代碼(PHP)很常見:Copy to Clipboard引用的內容:[www.bkjia.com]// $fp是由fsockopen()產生的控制代碼 while(!feof($fp)) { echo fgets($fp); }(註:短串連模式是在頭部用”Connection:
Time of Update: 2016-07-21
PHP限制IP段訪問、禁止IP提交表單的代碼最近,小編髮現有一個雲南的網友經常在幫客之家發表一些垃圾資訊的評論,由於www.bkjia.com系DEDECMS構架,系統本身並無禁止IP功能,每天看到這些垃圾評論,儘管不多,但是讓人感覺不爽,那麼如何來限制呢?我們只要在feedback.php中添加下面的代碼進行判斷就可以了。注意:下邊只是一個PHP限制IP的執行個體代碼,如果您打算應用到CMS中,請自行修改,或者如果您正在使用DEDECMS,可以聯絡本站。Copy to
Time of Update: 2016-07-21
一個PHP緩衝類,附三個執行個體Demo代碼,本文由烈火小編收集於網路,首先我們看到的是cache.inc.php檔案,請大家將以下代碼儲存為: cache.inc.php。Copy to Clipboard引用的內容:[www.bkjia.com]class Cache { /** * $dir : 快取檔案存放目錄 * $lifetime : 快取檔案有效期間,單位為秒 * $cacheid : 快取檔案路徑,包含檔案名稱 * $ext :
Time of Update: 2016-07-21
目前網上有很多第三方的飛信介面。缺點是都不太穩定,很多到現在都失效無法使用了,另外我們還會擔心資訊的外泄。其實我們可以自己動手實現一個這樣的一個介面,我這裡給出的思路非常簡單:通過類比登入WAP版飛信,來實現發飛信等操作。選擇WAP飛信主要是因為其介面比較簡單,容易分析,並且沒有驗證碼。1.
Time of Update: 2016-07-21
PHP運行時強制顯示出錯資訊,將出錯資訊輸出到一個文字檔error_reporting(E_ALL);ini_set('display_errors', '1'); //將出錯資訊輸出到一個文字檔ini_set('error_log', dirname(__FILE__) . '/error_log.txt');