很好用的資料庫管理工具,而且是免費的。
介紹:
http://www.digitalker.com.tw/archives/3112
下載:
http://www.dbschema.com/download.html
2013年12月30日 星期一
【php】產生 token
totken 像是連線的身分證是不能重複
一般產生方法
$token = md5 (uniqid ("")); // 簡單的
$better_token = md5 (uniqid (rand())); // 亂數的
*uniqid() : 是取得百萬分之一秒如: 52c0eb94765b9
加解密可以自己定義
一般產生方法
$token = md5 (uniqid ("")); // 簡單的
$better_token = md5 (uniqid (rand())); // 亂數的
*uniqid() : 是取得百萬分之一秒如: 52c0eb94765b9
加解密可以自己定義
【HTML】meta Cache Control
文章:https://blog.othree.net/log/2012/12/22/cache-control-and-etag/
如php:header("Cache-Control: no-cache, no-store, must-revalidate");
如php:header("Cache-Control: no-cache, no-store, must-revalidate");
- no-store, 完全不存下來,所以完全沒有 cache
- no-cache, 雖然會 cache,但還是會每次都問有沒有新內容,就是三個判斷點的第一個
- private, 限制在只有現在這個使用者可以用,通常用於敏感資料
- public, cache 公開讓不同使用者用,如果是有 HTTP Auth 的網頁,預設會是 private cache
- must-revalidate, 在一些情形下會去檢查內容是否有更新,像是使用者自己重新造訪頁面時,也是第一個判斷點
2013年12月27日 星期五
2013年12月26日 星期四
【php】include_path
include_path 是 php.ini 的一個設定值,
一般在 include 或是 require 的時候都要打路徑,
例如: include("../func/func.php");
如果將 include_path 設定為 include_path = ".;../func"
這樣就能直接 include("func.php");
也可以設定很多層的路徑 include_path = ".;../func;../../func"
PHP中也可直接修改php.ini的值:
@ini_set('include_path', ini_get('include_path'). '.;../func;../../func');
ini_get('include_path') 是取得目前的值
一般在 include 或是 require 的時候都要打路徑,
例如: include("../func/func.php");
如果將 include_path 設定為 include_path = ".;../func"
這樣就能直接 include("func.php");
也可以設定很多層的路徑 include_path = ".;../func;../../func"
PHP中也可直接修改php.ini的值:
@ini_set('include_path', ini_get('include_path'). '.;../func;../../func');
ini_get('include_path') 是取得目前的值
2013年12月20日 星期五
【php】window自行安裝apache2.2.25 php5.2.16
1.apache只有分 no_ssl 和 openssl,就看需不需要用到,
載點 http://archive.apache.org/dist/httpd/binaries/win32/
修改httpd.conf
DirectoryIndex index.html index.php 加入index.php
<Directory />
Options FollowSymLinks
AllowOverride all
Order deny,allow
allow from all
</Directory>
安裝:先用dos到apache/bin的目錄
下httpd.exe -k install
反安裝 httpd.exe -k uninstall
2.php版本就五花八門了
載點 http://windows.php.net/downloads/releases/archives/
*nts Non Thread Safe:線程安全
*沒有nts:什麼ISAPI要使用這個 比較安全
*vc6:主機是 apache
*vc9:編碼適用VisualStudio邊的 要先安裝 VisualC++RedistributableforVisualStudio2008SP1
*vc11:需安裝 VisualC++RedistributableforVisualStudio2012.
http://www.cnblogs.com/sytxxzl/p/3297636.html:
http://hi.baidu.com/it198/item/bc03bce0aafa0d2e5a7cfb13
3.我挑了
httpd-2.2.25-win32-x86-openssl-0.9.8y.msi
php-5.2.16-Win32-VC6-x86.msi
兩個都裝好改httpd.conf就好
在LoadModule加入
LoadModule php5_module "C:/www/php/php5apache2_2.dll"
PHPIniDir "C:/www/php"
AddType application/x-httpd-php .php
在開啟要用的.so檔
在修改ext的路徑
extension_dir = "D:/www/php/ext"
前兩行需修改PHP的路徑就完成了
因為是連MSSQL所以沒灌MYSQL
如果連到不到mssql或mysql要將
php_mysql、php_mssql複製到system32裡
http.conf
修改
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
3.安裝mysql
載點 http://phpbb-tw.net/phpbb/viewtopic.php?t=54723
下載自動安裝檔就step by step
服務
regedit
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
參考網站:
http://blog.xuite.net/louis.cheng/blog/50852218-WindowsXP%E5%AE%89%E8%A3%9DApache+2.2.17+%2B+PHP5.3.5+%2B+MySQL+5.5.8+%2B+phpMyAdmin+3.3.10.4
http://phpbb-tw.net/phpbb/viewtopic.php?t=54723
載點 http://archive.apache.org/dist/httpd/binaries/win32/
修改httpd.conf
DirectoryIndex index.html index.php 加入index.php
<Directory />
Options FollowSymLinks
AllowOverride all
Order deny,allow
allow from all
</Directory>
安裝:先用dos到apache/bin的目錄
下httpd.exe -k install
反安裝 httpd.exe -k uninstall
2.php版本就五花八門了
載點 http://windows.php.net/downloads/releases/archives/
*nts Non Thread Safe:線程安全
*沒有nts:什麼ISAPI要使用這個 比較安全
*vc6:主機是 apache
*vc9:編碼適用VisualStudio邊的 要先安裝 VisualC++RedistributableforVisualStudio2008SP1
*vc11:需安裝 VisualC++RedistributableforVisualStudio2012.
http://www.cnblogs.com/sytxxzl/p/3297636.html:
PHP的線程安全ZTS與非線程(NTS)安全版本的區別
Windows版的PHP從版本5.2.1開始有Thread Safe(線程安全)和None Thread Safe(NTS,非線程安全)之分,這兩者不同在於何處?到底應該用哪種?這裡做一個簡單的介紹。
從2000年10月20日發布的第一個Windows版的PHP3.0.17開始的都是線程安全的版本,這是由於與Linux/Unix系統是採用多進程的工作方式不同的是Windows系統是採用多線程的工作方式。如果在IIS下以CGI方式運行PHP會非常慢,這是由於CGI模式是建立在多進程的基礎之上的,而非多線程。一般我們會把PHP配置成以ISAPI的方式來運行,ISAPI是多線程的方式,這樣就快多了。但存在一個問題,很多常用的PHP擴展是以Linux/Unix的多進程思想來開發的,這些擴展在ISAPI的方式運行時就會出錯搞垮IIS。因此在IIS下CGI模式才是PHP運行的最安全方式,但CGI模式對於每個HTTP請求都需要重新加載和卸載整個PHP環境,其消耗是巨大的。
為了兼顧IIS下PHP的效率和安全,微軟給出了FastCGI的解決方案。FastCGI可以讓PHP的進程重複利用而不是每一個新的請求就重開一個進程。同時FastCGI也可以允許幾個進程同時執行。這樣既解決了CGI進程模式消耗太大的問題,又利用上了CGI進程模式不存在線程安全問題的優勢。
因此,如果是使用ISAPI的方式來運行PHP就必須用Thread Safe(線程安全)的版本;而用FastCGI模式運行PHP的話就沒有必要用線程安全檢查了,用None Thread Safe(NTS,非線程安全)的版本能夠更好的提高效率。
從2000年10月20日發布的第一個Windows版的PHP3.0.17開始的都是線程安全的版本,這是由於與Linux/Unix系統是採用多進程的工作方式不同的是Windows系統是採用多線程的工作方式。如果在IIS下以CGI方式運行PHP會非常慢,這是由於CGI模式是建立在多進程的基礎之上的,而非多線程。一般我們會把PHP配置成以ISAPI的方式來運行,ISAPI是多線程的方式,這樣就快多了。但存在一個問題,很多常用的PHP擴展是以Linux/Unix的多進程思想來開發的,這些擴展在ISAPI的方式運行時就會出錯搞垮IIS。因此在IIS下CGI模式才是PHP運行的最安全方式,但CGI模式對於每個HTTP請求都需要重新加載和卸載整個PHP環境,其消耗是巨大的。
為了兼顧IIS下PHP的效率和安全,微軟給出了FastCGI的解決方案。FastCGI可以讓PHP的進程重複利用而不是每一個新的請求就重開一個進程。同時FastCGI也可以允許幾個進程同時執行。這樣既解決了CGI進程模式消耗太大的問題,又利用上了CGI進程模式不存在線程安全問題的優勢。
因此,如果是使用ISAPI的方式來運行PHP就必須用Thread Safe(線程安全)的版本;而用FastCGI模式運行PHP的話就沒有必要用線程安全檢查了,用None Thread Safe(NTS,非線程安全)的版本能夠更好的提高效率。
在windows環境下,如果你使用的web server 是apchae 或者iis 7以下版本,則應該選擇線程安全的安裝文件,而如果你使用Fast-cgi模式時,可以選擇非線程安全,因為web sever 本身能保證線程安全。
php ts nts v6 v9的區別
VC6:legacy Visual Studio 6 compiler,就是使用這個編譯器編譯的。VC9:Visual Studio 2008 compiler,就是用微軟的VS編輯器編譯的
由於apache.org只提供VC6的版本,所以使用原版apache時只能使用VC6。(www.apachelounge.com上有apache VC9的版本提供,應該可以和PHP VC9配合,沒用過)
TS:Thread Safe線程安全,執行時會進行線程(Thread)安全檢查,以防止有新要求就啟動新線程的CGI執行方式而耗盡系統資源
NTS:Non Thread Safe非線程安全,在執行時不進行線程(Thread)安全檢查
PHP的兩種執行方式:ISAPI和FastCGI。
ISAPI(Internet Server Application Programming Interface)執行方式是以DLL動態庫的形式使用,可以在被用戶請求後執行,在處理完一個用戶請求後不會馬上消失,所以需要進行線程安全檢查,這樣來提高程序的執行效率,所以如果是以ISAPI來執行PHP,建議選擇Thread Safe版本apache中的配置方式:LoadModule php5_module “xxx/php5apache2_2.dll”AddType application/x-httpd-php-source .phpsAddType application/x-httpd -php .php .php5 .php4 .php3 .phtml .phpt
FastCGI執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執行效率,所以,如果是以FastCGI來執行PHP,建議選擇Non Thread Safe版本。apache中的配置方式:ScriptAlias /php/ “D:/php/”Action application/x-httpd-php “/php/php-cgi.exe”
官方並不建議你將Non Thread Safe應用於生產環境,所以我們選擇Thread Safe版本的PHP來使用。
由於apache.org只提供VC6的版本,所以使用原版apache時只能使用VC6。(www.apachelounge.com上有apache VC9的版本提供,應該可以和PHP VC9配合,沒用過)
TS:Thread Safe線程安全,執行時會進行線程(Thread)安全檢查,以防止有新要求就啟動新線程的CGI執行方式而耗盡系統資源
NTS:Non Thread Safe非線程安全,在執行時不進行線程(Thread)安全檢查
PHP的兩種執行方式:ISAPI和FastCGI。
ISAPI(Internet Server Application Programming Interface)執行方式是以DLL動態庫的形式使用,可以在被用戶請求後執行,在處理完一個用戶請求後不會馬上消失,所以需要進行線程安全檢查,這樣來提高程序的執行效率,所以如果是以ISAPI來執行PHP,建議選擇Thread Safe版本apache中的配置方式:LoadModule php5_module “xxx/php5apache2_2.dll”AddType application/x-httpd-php-source .phpsAddType application/x-httpd -php .php .php5 .php4 .php3 .phtml .phpt
FastCGI執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去線程安全檢查的防護反而可以提高執行效率,所以,如果是以FastCGI來執行PHP,建議選擇Non Thread Safe版本。apache中的配置方式:ScriptAlias /php/ “D:/php/”Action application/x-httpd-php “/php/php-cgi.exe”
官方並不建議你將Non Thread Safe應用於生產環境,所以我們選擇Thread Safe版本的PHP來使用。
3.我挑了
httpd-2.2.25-win32-x86-openssl-0.9.8y.msi
php-5.2.16-Win32-VC6-x86.msi
兩個都裝好改httpd.conf就好
在LoadModule加入
LoadModule php5_module "C:/www/php/php5apache2_2.dll"
PHPIniDir "C:/www/php"
AddType application/x-httpd-php .php
在開啟要用的.so檔
在修改ext的路徑
extension_dir = "D:/www/php/ext"
前兩行需修改PHP的路徑就完成了
因為是連MSSQL所以沒灌MYSQL
如果連到不到mssql或mysql要將
php_mysql、php_mssql複製到system32裡
http.conf
修改
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
3.安裝mysql
載點 http://phpbb-tw.net/phpbb/viewtopic.php?t=54723
下載自動安裝檔就step by step
服務
regedit
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
參考網站:
http://blog.xuite.net/louis.cheng/blog/50852218-WindowsXP%E5%AE%89%E8%A3%9DApache+2.2.17+%2B+PHP5.3.5+%2B+MySQL+5.5.8+%2B+phpMyAdmin+3.3.10.4
http://phpbb-tw.net/phpbb/viewtopic.php?t=54723
2013年12月18日 星期三
【php】連線 sql server 2005
今天搞了好久終於連上mssql
首先我是用xampp1.7.1
載點 http://sourceforge.net/projects/xampp/files/
安裝後發現本身就有開啟php_mssql但連線總是失敗,出現:
Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server:
後來找了很久更新一個檔案就成功ntwdblib.dll,
上網找下載後先停止apache將檔案複製到apache/bin中,再啟動就成功。
如果還是不行:
1. 開啟php.ini檔後,將extension=php_mssql.dll 前面的註解拿掉。
2. 將C:\AppServ\php5
C:\Windows\System32 底下。
4.重新啟動Apache即可。
// mssql.secure_connection = Off 改為on
http://hi.baidu.com/mvp_xuan/item/795d6d52bd4acb3094eb05f8
首先我是用xampp1.7.1
載點 http://sourceforge.net/projects/xampp/files/
安裝後發現本身就有開啟php_mssql但連線總是失敗,出現:
Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server:
後來找了很久更新一個檔案就成功ntwdblib.dll,
上網找下載後先停止apache將檔案複製到apache/bin中,再啟動就成功。
如果還是不行:
1. 開啟php.ini檔後,將extension=php_mssql.dll 前面的註解拿掉。
2. 將C:\AppServ\php5
\ntwdblib.dll 檔案複製到
C:\Windows\System32 底下。
3.將C:\AppServ\php5\ext\php_mssql.dll 檔案複製到
C:\Windows\System32 底下。
4.重新啟動Apache即可。
// mssql.secure_connection = Off 改為on
http://hi.baidu.com/mvp_xuan/item/795d6d52bd4acb3094eb05f8
訂閱:
文章 (Atom)