發表文章

目前顯示的是 3月, 2010的文章

暫放

http://deerchao.net/tutorials/regex/regex.htm#introduction http://www.wljcz.com/html/PHPjiaocheng/phphanshu/2009/0818/1153.html

sql=" update dailyistics set pageNum=pageNum+1 where visitDate='" . $setDate .

sql=" update dailyistics set pageNum=pageNum+1 where visitDate='" . $setDate . "'"; update => 更新/異動 dailyistics ==> DB table set pageNum=pageNum+1 => pageNum 累加 where visitDate='" . $setDate . "'"  => 當visitDate=$setDate才做

[PHP] 投票系統如何防使用者重覆投票

function get_real_ip(){     $ip=false;     if(!empty($_SERVER["HTTP_CLIENT_IP"])) {         $ip = $_SERVER["HTTP_CLIENT_IP"];     }     if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {         $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);         if ($ip) {             array_unshift($ips, $ip);             $ip = FALSE;         }         for ($i = 0; $i < count($ips); $i++) {             if (!eregi ("^(10|172\.16|192\.168)\.", $ips[$i])) {                 $ip = $ips[$i];                 break;             }         }     }     return ($ip ? $ip : $_SERVER['REMOTE_ADDR']); } 2. 投票時,存到資料庫         $ip = get_real_ip(); // 取得真實 IP         if (!empty($ip)) { // 假使 真實 IP 存在,就檢查資料庫是否已有這個 IP             $sql = "select ip from ip_vote_pool where ip = '$ip'";             $result = mysql_query($sql) or die(mysql_error());             $arr = mysql_fetch_array($result);             if (!$arr) { /...

PHP常用函數

addSlashes --- 將字串加上反斜線 stripslashes --- 去除addslashes()引用的斜線 chop --- 移除多餘的空白 ltrim --- 去除字串起始處的空白 rtrim --- 移除多餘的空白 trim --- 去除字串開始處與結束處的空白 Chr --- 傳回指定的字元 Ord --- 傳回字元的ASCII碼 crypt --- 使用DES將字串碥碼 md5 --- 計算字串的MD5拼湊 sha1 -- Calculate the sha1 hash of a string echo --- 輸出字串 print --- 輸出字串 printf --- 輸出格式化字串 sprintf --- 傳回格式化字串 nl2br --- 轉換新行成為HTML的 strip_tags --- 去除字串中的HTML和PHP標籤 htmlentities --- 轉換所有字元成為HTML實體 htmlspecialchars --- 轉換特殊字元成為HTML實體 strlen --- 取得字串長度 strcmp --- 字串比對 strcasecmp --- 不分大小寫字串比對 explode --- 切開字串 strtok --- 切開字串 implode --- 將陣列的元素連結起來成為字串 str_repeat --- 重複字串 strstr --- 找出字串第一次出現的地方 stristr --- 不分大小寫找出字串第一次出現的地方 strpos --- 找出字串第一次出現的位置 strrpos --- 找出字元最後一次出現的位置 substr_count --- 計算字串的出現次數 strtolower --- 將字串轉成小寫 strtoupper --- 將字串轉成大寫 substr_replace --- 取代字串的一部份字串 substr --- 取得部份字串 strrev --- 顛倒字串  引用 http://phorum.study-area.org/index.php?topic=35839.0

PHP涵數getenv()

getenv 取得系統的環境變量 語法: string getenv(string varname); 返回值: 字符串 函數種類: PHP 系統功能 內容說明 若正確取得環境變量 varname,則返回變量值。失敗則返回 false。 使用范例 下例可以取得用戶瀏覽器所在機器的網址 <? $ip = getenv("REMOTE_ADDR"); ?>

php 如何限制只能公司IP才能進入公司網站

將以下程式碼載入所有有限制的頁面裡面即可 並修改紅色字眼開放的IP位置 --------------------------------------------------------------------------------------- // 是否鎖定IP位置 $cfg['iplock'] = True; // 開放的IP位置,請以|做區分 $cfg['WanIPList'] = "110.0.0.1|111.0.0.1";//外部IP $cfg['LanIPList'] = "192.168.0";//內部IP //取得使用者IP --- Start function GetIP(){    if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))    $ip = getenv("HTTP_CLIENT_IP");    else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))    $ip = getenv("HTTP_X_FORWARDED_FOR");    else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))    $ip = getenv("REMOTE_ADDR");    else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR...

問題:取得訪客IP

function getIP() {  global $_SERVER;  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'];  }  $onlineip = preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches);  return $onlineipmatches[0]; 問題如下 1、if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown'))     ...

return ($v_total&gt;0)?$v_total:0;

//取得頁面總訪問數 function getDailyTotalPageNum(){   //建立資料連結   $mylink = mysql_connect($this-> hostName, $this-> userName, $this-> password);   //選擇資料庫     mysql_select_db("visitdata", $mylink);    //指定提取資料的校對字元表     mysql_query("set character set big5");  $sql="select sum(pageNum) as v_total from dailyistics";  $dataList=mysql_query($sql);  $arr_result=mysql_fetch_array($dataList,MYSQL_BOTH);  $v_total=$arr_result['v_total'];  return ($v_total>0)?$v_total:0; =============================================== 把這行 return ($v_total>0)?$v_total:0; 改寫成如下,會更好 if ($v_total>0) return  $v_total else return 0

PHP 單引號,跟雙引號的用法

單引號內的變號,是不會被PHP解譯的。 因為PHP會當成字串處理!   PHP 會解譯「雙引號」字串內的變數,而「單引號」則視為純字串出,PHP 不會再處理單引號內的內容。 PHP5&MySQL 程式設計 p2-4頁 以單引號 (') 表示字串時,字串會被視為純的文字,當以雙引號 (") 表示字串時,php會做一些相關的處理, 例如進行變數剖析 ( 以變數的值取代變數) 或解譯「逸脫字元」 (escaped character)。

$sql=&quot;insert into dailyistics (pageNum,visitNum,visitDate) value(1,0,&#39;&quot; . $setD

$sql="insert into dailyistics (pageNum,visitNum,visitDate) value(1,0,'" . $setDate . "')" 這句是指我要新增一筆資料到 dailyistics 這個 table 去, 他有三各欄位 pageNum,visitNum,visitDate 分別值為 1,0,$setDate 也就是pageNum=1,visitNum=0,visitDate=$setDate

setTextFormat () 方法

public function setTextFormat(format:TextFormat, beginIndex:int= -1, endIndex:int= -1):void my_textField.setTextFormat(textFormat:TextFormat)  將 textFormat 的屬性套用到文字欄位中的所有文字。   my_textField.setTextFormat(beginIndex:Number, textFormat:TextFormat)  將 textFormat 的屬性套用到位於 beginIndex 位置的字元。   my_textField.setTextFormat(beginIndex:Number, endIndex:Number, textFormat:TextFormat)  將 textFormat 參數的屬性套用到從 beginIndex 位置到 endIndex 位置的文字 -------------------------------------------------------------------------------------------------------------------------------- 英文版 my_textField.setTextFormat(textFormat:TextFormat)  Applies the properties of textFormat to all text in the text field.   my_textField.setTextFormat(beginIndex:Number, textFormat:TextFormat)  Applies the properties of textFormat to the character at the beginIndex position.   my_textField.setTextFormat(beginIndex:Number, endIndex:Number, textFormat:TextFormat)  Applies the properties of th...

進度卡在這邊

$sql="update dailyistics set pageNum=pageNum+1 where visitDate='" . $setDate . "'"; $sql="insert into dailyistics (pageNum,visitNum,visitDate) value(1,0,'" . $setDate . "')"; $sql="select * from dailyistics where visitDate='" . $setDate . "'"; 最常看的使用方法,我還搞不太懂 點的用法 這個visitDate='" . $setDate . "'"; 裏的$setDate到底又是啥? 看到了,原來是一開始代入的變數 function setDailyPageNum($setDate)

PHP/MySQL相關函數

一、連接資料庫 在連接資料庫時,使用以下的函式: mysql_connect ([string server [, string username [, string password]]]) //持續性的資料庫連接 mysql_pconnect ([string server [, string username [, string password]]]) 函式執行成功時,會傳回一個 MySQL link 的辨識資源,執行失敗則傳回 FALSE。函式的參數:(主機名稱或位址 ,使用者的帳號, 使用者的密碼) 例如: $link = mysql_pconnect("localhost","root","4321");   二、選擇資料庫 取得資料庫連線之後,接下來便是選擇所要選取的資料庫。選擇資料庫的函式如下: mysql_select_db (string database_name [, resource link_id]) 函式執行成功,會傳回 True 值,否則傳回 False 值。函式的參數:資料庫名稱,MySQL link 的辨識資源。通常第二個參數可以省略。 例如: mysql_select_db("std");   三、執行查詢  資料庫選擇完畢之後,便可以針對資料庫執行查詢的動作。以下是執行查詢所使用的函式: mysql_query (string query [, resource link_id]) 函式接受 SQL 命令,作為對資料庫執行查詢的命令。如果 SQL 命令是 SELECT類型,執行成功時,就會傳回資源辯識物件,作為之後處理查詢結果之用;否則,則傳回 False 值。其他類型的 SQL 命令,執行成功,會傳回 True 值,否則傳回 False 值。函式的參數:SQL 命令句、MySQL link 的辨識資源。通常第二個參數可以省略。 例如: $result = mysql_query("select * from user ");   四、處理查詢結果 如果之前所執行的查詢是 SELECT 類型,會傳回查詢結果。我們通常會利用執行查詢所得的資源物件,取得查詢結果,並逐筆處理其中的每一筆記錄。最...

MYSQL_BOTH

mysql_fetch_assoc( ) (PHP 4 >= 4.0.3, PHP 5) mysql_fetch_assoc() --  從結果集中取得一行作為關聯數組 說明array mysql_fetch_assoc ( resource result ) 返回根據從結果集取得的行生成的關聯數組,如果沒有更多行則返回 FALSE。 mysql_fetch_array( ) 中可選的第二個參數 result_type 是一個常量, 可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。本特性是 PHP 3.0.7 起新加的。本參數的默認值是 MYSQL_BOTH。 如果用了 MYSQL _ BOTH,將得到一個同時包含關聯和數字索引的數組。用 MYSQL_ASSOC 只得到關聯索引(如同 mysql_fetch_assoc() 那樣),用 MYSQL_NUM 只得到數字索引(如同 mysql_fetch_row() 那樣)。

Responder () 建構函式

Responder () 建構函式 public function Responder(result: Function , status: Function = null)   語言版本 :  ActionScript 3.0 Player 版本 :  Flash Player 9 會建立新的 Responder 物件。 您可以將 Responder 物件傳遞給 NetConnection.call() ,以便處理伺服器的傳回值。 您可以針對上述任一或兩個參數傳遞 null 。 參數 result : Function — 在呼叫伺服器成功並傳回結果時叫用的函數。   status : Function (default = null ) — 在伺服器傳回錯誤時叫用的函數。

訪客計數器

<?php class visitData { var $userName = "root"; //帳號 var $password = "12345";  //密碼 var $hostName = "localhost"; //主機(Server)名稱 //設定目前頁面訪問數 function setDailyPageNum($setDate) {   //建立資料連結   $mylink = mysql_connect($this-> hostName, $this-> userName, $this-> password);   //選擇資料庫     mysql_select_db("visitdata", $mylink);    //指定提取資料的校對字元表     mysql_query("set character set big5");     $sql="select * from dailyistics where visitDate='" . $setDate . "'";  $dataList=mysql_query($sql);   if ($arr_result=mysql_fetch_array($dataList,MYSQL_BOTH))  {   $sql="update dailyistics set pageNum=pageNum+1 where visitDate='" . $setDate . "'";   mysql_query($sql);  }else{   $sql="insert into dailyistics (pageNum,visitNum,visitDate) value(...

$Fields 這個在做什麼的?

  if ($Fields=mysql_fetch_array($RS)){    if($Fields["memId"]==$ID){ if($Fields["memPsw"]==$password){  return "yes"; }    }else{ return "no"; }   }else{    return "no";   }  第一段的等號 是把mysql_fetch_array($RS)放到$Fields嗎 => yes  第一段也有 if ,應該也有判斷,查一下  第二段做判斷  => yes

英文單子

result= 結果 connect = 連接 query = 請求 Developers= 開發 weather=天氣 content=內容 current=湧流 Attributes=屬性 resul=

$SQL=&quot;Select * From memberdata Where memId= &#39;&quot; . $ID . &quot;&#39;&quot;;

Select * From memberdata 是到 memberdata  撈資料。 Where memId= '" . $ID . "' 代表查詢條件,過濾條件。 那個單引號,跟  '" . $ID . " 的豆號? 作用是幹麻的

mysql_select_db() 函數

<h1> mysql_select_db </h1> 選擇一個數據庫。 語法: int mysql_select_db(string database_name, int [link_identifier]); 返回值: 整數 函數種類: 數據庫功能 內容說明 本函數選擇 MySQL 服務器中的數據庫以供之后的資料查詢作業 (query) 處理。成功返回 true,失敗則返回 false。 參考 mysql_connect()   mysql_pconnect()   mysql_query()  

mysql_fetch_array() 函數

<h1> mysql_fetch_array </h1> 返回數組資料。 語法: array mysql_fetch_array(int result, int [result_typ]); 返回值: 數組 函數種類: 數據庫功能   內容說明 本函數用來將查詢結果 result 拆到數組變量中。若 result 沒有資料,則返回 false 值。而本函數可以說是 mysql_fetch_row() 的加強函數,除可以將返回列及數字索引放入數組之外,還可以將文字索引放入數組中。若是好几個返回字段都是相同的文字名稱,則最后一個置入的字段有效,解決方法是使用數字索引或者為這些同名的字段 (column) 取別名 (alias)。注意的是使用本函數的處理速度其實不會比 mysql_fetch_row() 函數慢,要用哪個函數還是看使用的需求決定。參數 result_typ 是一個常量值,有以下几種常量 MYSQL_ASSOC、MYSQL_NUM 與 MYSQL_BOTH。   使用范例 <?php mysql_connect ( $host , $user , $password ); $result  =  mysql_db_query ( "database" , "select ...

mysql_query() 函數

mysql_query 送出一個 query 字符串。 語法: int mysql_query(string query, int [link_identifier]); 返回值: 整數 函數種類: 數據庫功能 內容說明 本函數送出 query 字符串供 MySQL 做相關的處理或者執行。若沒有指定 link_identifier 參數,則程序會自動尋找最近打開的 ID。當 query 查詢字符串是 UPDATE、INSERT 及 DELETE 時,返回的可能是 true 或者 false﹔查詢的字符串是 SELECT 則返回新的 ID 值。joey@samaritan.com (09-Feb-1999) 指出,當返回 false 時,并不是執行成功但無返回值,而是查詢的字符串有錯誤。 參考 mysql_db_query()   mysql_select_db()   mysql_connect()  

mysql_connect() 函數

mysql_connect() 函數 resource mysql_connect(string [hostname] [:port] , string [username] , string [password], bool [new_link], int client_flags); 開啟與 MySQL 的連接 (link),例如: $link = mysql_connect("localhost:7000", "guest", "guest123"); 連接成功時則傳回一個正整數的 link 變數,否則傳回 false。 如果沒有傳入參數的話,則使用預設參數。當 PHP 執行完時,會自動關閉這個 link,或者使用 mysql_close() 來關閉。 PHP 4.2.0 與之後的版本才能指定 new_link 參數,new_link 參數為 bool 型態,可指定 TRUE 或 FALSE。傳入 TRUE 的話可限定 mysql_connect() 一定要開啟新的連線。 PHP 4.3.0 與之後的版本增加 client_flags 參數,client_flags 可指定 3 個常數值如下: 1. MYSQL_CLIENT_COMPRESS 2. MYSQL_CLIENT_IGNORE_SPACE 3. MYSQL_CLIENT_INTERACTIVE 相關函數:mysql_pconnect(), and mysql_close().

google可以查訊php指令

忘了有google可以查訊php指令 果然,是好用

撰寫Remote Service程式

=========================================================== 一堆搞不懂的語法,到底是涵數,還是指令 $mylink = mysql_connect($this-> hostName, $this-> userName, $this-> password); mysql_connect是指令?涵數? mysql_select_db("webmember", $mylink); mysql_select_db是指令?涵數? mysql_query("set character set big5"); mysql_query是指令?涵數? $SQL = "Select * From memberdata Where memId='" . $ID . "'"; 中間那段長長的英文,作用是? =========================================================== //程式如下 <?php class chkMem {  var $userName = "root"; //帳號  var $password = "12345";  //密碼  var $hostName = "localhost"; //主機(Server)名稱  function logTest($ID,$Password){  //建立資料連結  $mylink = mysql_connect($this-> hostName, $this-> userName, $this-> password);  //選擇資料庫  mysql_select_db("webmember", $mylink);  //指定提取資料的校對字元表     mysql_query("set character set big5");   ...

使用者登入介面

現在連結資料庫沒問題了 今天學習新的章節,使用者登入介面, 一開始搞不太懂他的動畫是如何出來的,不在時間軸裏, 原來是在影片片段裏面 有個問題就是,作者有新增一個測試帳號Admin/test12345 打開webmember.sql檔,沒記錄這個資料 有夠奇怪的,後來發現是自己眼睛不清楚,在最後一排字就是了

Error #2044: 未處理的 NetStatusEvent

配備如下 flash資料庫應用即戰力,flash player9,amfphp 1.9 最新版的,flash9 跟  flash10 今天遇到問題就是  Error #2044: 未處理的 NetStatusEvent:。 level=error, code=NetConnection.Call.BadVersion  at test_fla::MainTimeline/frame1() ---------------------------------------------------------------------------------------------------- 寫信給作者,回應是說: 根據該Po文中的錯誤訊息,表示是 BadVersion 也就是您使用的FLASH版本可能不對。 請注意本書的 ActionScript 為 3.0 版, Flash Player 則需更新至 9 以上版本 (建議更新至最新版)。 ---------------------------------------------------------------------------------------------------- 網友討論說是amfphp,的問題 http://blog.ring.idv.tw/comment.ser?i=1 雖然,作者回應的速度很快,感覺上卻是標準的官方說法。 但是透過http協定來執行swf,就沒問題了,格式如下 http://localhost/xxxx/xxxx.swf --------------------------------------------------------------------------------------------------- 第二次回應時就顯得很好 由於作者測試了兩台機器,都沒發生您遇到的問題, 推測會不是會是修改PHP檔案後,存檔時的存檔編碼類型不對? 請確認是存成 big5 編碼, 再測試看看。 至於 Flash Player 版本問題,建議你測試範例檔時,先將 .swf 檔複製到硬碟中, 然後用瀏覽器開啟該 .swf 檔來測試看看。 因為在網路上更新Flash Player 時,更新的是瀏覽器裡的Flash Player , 而非雙按 .swf 檔...

Flash的點點滴滴

開始了,希望大家可以一起交流