點閱: 5
short_open_tag 將它改為 On => 啟用 php 縮寫能節省一些寫法,看起來也比較好辨識
如 php 腳本一開頭需要加上 php 字樣
<?php echo $data; ?>
開了簡寫後
<?=$data;?>
是不是短了呢!雖然沒差多少,但一個PHP寫下來,若有用很多<?開頭的時候,那就一定很有用了!
DOS PHP JAVASCRIPT HTML CSS jQuery ASP VB6 …等相關的資源、資訊 分享
點閱: 5
short_open_tag 將它改為 On => 啟用 php 縮寫能節省一些寫法,看起來也比較好辨識
如 php 腳本一開頭需要加上 php 字樣
<?php echo $data; ?>
開了簡寫後
<?=$data;?>
是不是短了呢!雖然沒差多少,但一個PHP寫下來,若有用很多<?開頭的時候,那就一定很有用了!
點閱: 143
.NET Framework 4 可以與舊版的 .NET Framework 並存安裝在單一電腦上。 如果先前已在電腦上啟用 IIS,.NET Framework 的安裝程序就會自動在 IIS 註冊 ASP.NET 4。 不過,如果在啟用 IIS 之前安裝 .NET Framework 4,您必須執行 ASP.NET IIS 註冊工具,才能在 IIS 註冊 .NET Framework,並建立使用 .NET Framework 4 的應用程式集區。
錯誤範例動作:先安裝了.NET Framework4.0 => 安裝IIS角色又裝了.NET Framework 3.5,然後網站就出現:
無法從組件 ‘System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089’ 載入型別 ‘System.ServiceModel.Activation.HttpModule’。
解決步驟如下:
1.開啟命令提示字元視窗。
2.然後指定作業路徑至C:\Windows\Microsoft.NET\Framework\v4.0.30319。
3.輸入【aspnet_regiis -i】後按ENTER。
4.再到IIS重新啟動 (iisreset)!
點閱: 50
php is_numberic函式造成的SQL隱碼攻擊漏洞
is_numberic 函式結構 bool is_numeric (mixed $var)
如果 var 是數字和數字字串則返回 TRUE,否則返回 FALSE。
接下來看個例子,說明這個函式是否安全。
複製程式碼 程式碼如下:
$s = is_numeric($_GET[‘s’])?$_GET[‘s’]:0;
$sql=”insert into test(type)values($s);”; //是 values($s) 不是values(‘$s’)
mysql_query($sql);
這個片段程式是判斷引數s是否為數字,是則返回數字,不是則返回0,然後帶入資料庫查詢。(這樣就構造不了sql語句)
我們把‘1 or 1′ 轉換為16進位制 0x31206f722031 為s引數的值,程式執行後,再重新查詢這個表的欄位出來,不做過濾帶入另一個SQL語句,將會造成2次注入。
總結
儘量不要使用這函式,如果要使用這個函式,建議使用規範的sql語句,條件加入單引號,這樣16進位制0x31206f722031就會在資料庫裡顯示出來。而不會出現1 or 1。
點閱: 43
PHP7已經不支援MySQL系列函數,而是改用MySQLi,或者PDO物件。
PDO是PHP5新加入的一個重大功能,因為在PHP5以前的php4/php3都是一堆的數據庫擴展來跟各個數據庫的連接和處理,無比煩瑣和低效。
mysql()指令集在php5.5之後是建議不要使用,而php7正式移除。
你現在如果還在用那個指令集未來可能會遇到不支援或無法維護,所以強烈建議無論如何改使用pdo。雖然會多花一些學習時間,但對未來是好的。
點閱: 160
Google早已宣告將於2017年1月開始,在Google Chrome瀏覽器第56版,直接將沒有採用SSL安全認證的網站標示為「不安全」,並且在2014年就宣告,網站有導入SSL安全認證(HTTPS)服務,將會獲得優先收錄與優先排名,這就確定了未來網站都要導入SSL安全認證(HTTPS)服務,這更是搜尋引擎行銷必備條件之一。
所以網站的頁面,我們需要強制使用者使用https加密連線,也可來保護使用者輸入的資料。
這時可利用以下兩種檢查方式加上重新導向來達到:
檢查$_SERVER[“HTTPS”]
if(empty($_SERVER["HTTPS"])) {
$https_login = "https://" . $_SERVER["SERVER_NAME"] . '/login' ;
header("Location: $https_login");
exit();
}
檢查$_SERVER[“SERVER_PORT”]
if($_SERVER["SERVER_PORT"] != '443' ) {
$https_login = "https://" . $_SERVER["SERVER_NAME"] . '/login' ;
header("Location: $https_login");
exit();
}