標籤

4GL (1) 人才發展 (10) 人物 (3) 太陽能 (4) 心理 (3) 心靈 (10) 文學 (31) 生活常識 (14) 光學 (1) 名句 (10) 即時通訊軟體 (2) 奇狐 (2) 音樂 (2) 產業 (5) 郭語錄 (3) 無聊 (3) 統計 (4) 新聞 (1) 經濟學 (1) 經營管理 (42) 解析度 (1) 遊戲 (5) 電學 (1) 網管 (10) 廣告 (1) 數學 (1) 機率 (1) 雜趣 (1) 證券 (4) 證券期貨 (1) ABAP (15) AD (1) agentflow (4) AJAX (1) Android (1) AnyChart (1) Apache (14) BASIS (4) BDL (1) C# (1) Church (1) CIE (1) CO (38) Converter (1) cron (1) CSS (23) DMS (1) DVD (1) Eclipse (1) English (1) excel (5) Exchange (4) Failover (1) FI (57) File Transfer (1) Firefox (2) FM (2) fourjs (1) gladiatus (1) google (1) Google Maps API (2) grep (1) Grub (1) HR (2) html (23) HTS (8) IE (1) IE 8 (1) IIS (1) IMAP (3) Internet Explorer (1) java (3) JavaScript (22) jQuery (6) JSON (1) K3b (1) LED (3) Linux (112) Linux Mint (4) Load Balance (1) Microsoft (2) MIS (2) MM (51) MSSQL (1) MySQL (27) Network (1) NFS (1) Office (1) Oracle (125) Outlook (3) PDF (6) Perl (59) PHP (33) PL/SQL (1) PL/SQL Developer (1) PM (3) Postfix (2) postfwd (1) PostgreSQL (1) PP (50) python (1) QM (1) Red Hat (4) Reporting Service (28) ruby (11) SAP (234) scp (1) SD (16) sed (1) Selenium-WebDriver (5) shell (5) SQL (4) SQL server (8) SQuirreL SQL Client (1) SSH (2) SWOT (3) Symantec (2) T-SQL (7) Tera Term (2) tip (1) tiptop (22) Tomcat (6) Trouble Shooting (1) Tuning (5) Ubuntu (33) ufw (1) utf-8 (1) VIM (11) Virtual Machine (2) vnc (3) Web Service (2) wget (1) Windows (19) Windows (1) WM (6) youtube (1) yum (2)

2015年1月29日 星期四

PHP在不同頁面之間傳值的三種常見方式

http://fanli7.net/a/bianchengyuyan/PHP/20140531/510971.html

      接觸PHP也有幾個月了,本文總結一下這段日子中,在編程過程裏常用的3種不同頁面傳值方法,希望可以给大家参考。有什麼意見也希望大家一起討論。   &
      接觸PHP也有幾個月了,本文總結一下這段日子中,在編程過程裏常用的3種不同頁面傳值方法,希望可以给大家参考。有什麼意見也希望大家一起討論。
      一. POST傳值
      post傳值是用於html的<form>表單跳轉的方法,很方便使用。例如:
 <html>
 <form action='' method=''>
 <input type='text' name='name1'>
 <input type='hidden' name='name2' value='value'>
 <input type='submit' value='提交'>
 </form>
 </html>
      form中的action填入的是跳轉頁面的url路徑,method填入post方法。form表單中的提交按鈕按下後,就會把form中有name的內容都傳到填入的url中,可以通過$_POST['name']獲取,例如:
<?php
$a=$_POST['name1'];
$b=$_POST['name2'];
?>
      這裏有個很方便的小技巧,在input標簽中把type選为'hidden'時,這個input標簽會隱藏起來,不在頁面顯示,但這input標簽在 form中,並且有name值和value值,同样會跟隨提交按鈕傳遞過去,這種隱藏標簽可以傳遞一些不想顯示出來的內容。
    二.GET傳值
     GET傳值是通過跟隨url傳遞的,在頁面跳轉時,跟着url跳轉。常用於<a>標簽的使用。例如:
<a href='delete.php?id=value'>點我跳轉</a>
   跳轉進入xxx.php後,就能通過$_GET['id']獲取傳遞的值。GET方法常用於URL的目的是刪除或讀取某個id的php文件。
   三.SESSION傳值
   SESSION是全局變量的一種,經常用於用戶登陆後保存用戶id之類的常用數據。一旦保存到SESSION中,其他頁面都可以通過SESSION獲取,SESSION的使用要開启session:
<?php
//session賦值
   session_start();
   $_SESSION['one']=value1;
   $_SESSION['two']=value2;

//session值的讀取:
   $one = $_SESSION['one'];
   
   //session值的銷毀
   unset($_SESSION['one']);
?>
   以上三種方式是常用方式,大家可以参考使用。

2015年1月28日 星期三

請問不使用< input type="submit"> 如何傳值?

http://www.programmer-club.com.tw/ShowSameTitleN/php/9872.html

請問不使用<input type="submit">如何傳值? 更改我的閱讀文章字型大小
作者 : shanesss(JJM)
[ 貼文 51 | 人氣 9379 | 評價 0 | 評價/貼文 0 | 送出評價 16 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2009/5/22 下午 07:56:23
請問各位大大
select可以不透過<input type="submit">就傳值到其他網頁嗎?

code如下:
//-------------------------------------------------------------------------
<form name="form1" method="post" action="card.php">
     <p align="left">
     <select name="color" size="1">
     <option selected value="0">請選擇</option>
     <option value="white">白</option>
     <option value="red">紅</option>
     </select>
     </p>
</form>
//-------------------------------------------------------------------------
有方法可以把值傳遞到card.php嗎?

謝謝
作者 : davidsets(勇ㄚ)
[ 貼文 32 | 人氣 705 | 評價 80 | 評價/貼文 2.5 | 送出評價 2 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2009/5/23 上午 07:11:11
純粹是Javascript的問題,不要submit按鈕,甚至不要form也可以給你傳
<script language=javascript>
function link(obj){
location.href="abc.php?color="+obj;
}
</script>
     <select name="color" size="1" onchange=link(this.value)>
     <option selected value="0">請選擇</option>
     <option value="white">白</option>
     <option value="red">紅</option>
     </select>
最後在abc.php,用$_GET或$_REQUEST去接收color這個變數即可
作者 : davidsets(勇ㄚ)
[ 貼文 32 | 人氣 705 | 評價 80 | 評價/貼文 2.5 | 送出評價 2 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2009/5/23 上午 07:18:18
囧"~這個討論區沒有重新編輯的功能
不知道你已經假設card.php這個檔名了

即然發了文章,再雞婆多跟你講一些
除了剛剛的方法外,你還可以偷偷的送
<script language=javascript>
function link(obj){
obj.submit;
}
</script>
<form name="form1" method="post" action="card.php">
     <p align="left">
     <select name="color" size="1 onchange=link(this.form)>
     <option selected value="0">請選擇</option>
     <option value="white">白</option>
     <option value="red">紅</option>
     </select>
     </p>
</form>

第一個方法你還要傳另一個值的話會比較麻煩
第二個方法,你要傳多少表單都沒關係,只要在同一個form的資料都會送出
作者 : shanesss(JJM)
[ 貼文 51 | 人氣 9379 | 評價 0 | 評價/貼文 0 | 送出評價 16 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2009/5/25 上午 10:00:47
謝謝大大指導~

2015年1月12日 星期一

解决PHP下载乱码问题,word doc 文件等


header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . $docno);
ob_clean();
flush();

readfile('http://xxx/cgi-bin/fglccgi/topprod/topcust/help/0/aim/download_doc/' . $docno);

2015年1月8日 星期四

遠端無法連線到MySQL Server ERROR 2003 (HY000)

http://blog.lyhdev.com/2006/07/mysql-server-error-2003-hy000.html

MySQL安裝後可能預設關閉遠端連線,因此在遠端進行連線時會出現這個錯誤:
ERROR 2003 (HY000): Can't connect to MySQL server on '***.***.***.***' (###)

如果必須透過遠端檢視或操作MySQL Server,需要修改一下設定檔,將bind-address、skip-networking的選項取消(如果被開啟的話)。

若這些設定沒有問題,仍沒辦法連線,再做一些其他檢查:
  1. netstat -nl grep 3306 (此數字是MySQL預設的連接埠)是否有0.0.0.0:3306出現,若沒有則表示MySQL server未啟動或仍未允許遠端連線
  2. iptables -L 檢視一下是否被防火牆擋掉

Excel開啟CSV檔的花式技巧

http://wen198599.pixnet.net/blog/post/22314819-%5B%E5%BC%95%E7%94%A8%5Dexcel%E9%96%8B%E5%95%9Fcsv%E6%AA%94%E7%9A%84%E8%8A%B1%E5%BC%8F%E6%8A%80%E5%B7%A7

CSV檔是很普遍的Grid式資料匯出格式,而很多人也都知道Excel可以直接將CSV檔開啟成試算表。不過稱作Comma Separated Value的CSV,除了"用逗號將值隔開"之外,還有一些進階的花式技巧。例如:

1. 如果是內含逗號的字串值,可以用雙引號將字串包起來,例如: 886,"Taipei, Taiwan"
2. 如果在雙引號中的字串中又包含了雙引號,則可以遵循VB/VBScript的慣例,用兩個雙引號代替。例如: "12'30"""-->12'30"
3. 用Excel開啟CSV時,Excel會自動判斷值的性質,進行資料轉換。比較煩的是,明明編號是007,就算用了雙引號包夾成"007",Excel還是會將它轉換成7,即使在Excel中重新調整它的儲存格式為字串,也無法還原回007。
這裡分享一個小技巧,我們可以用="007"的宣告方式,強制指定字串值,Excel就不會雞婆將它轉成數字。而這個技巧還可以再延伸,甚至可以用=SUM(B2:B5)的寫法,指定儲存格的運算式。範例如下:

[Updated 2007/02/01]
在公司分享這篇KB後,同事Daniel也提供了他的寶貴經驗: 看來Excel只接受ANSI/BIG5編碼的CSV檔,如果將CSV檔存成Unicode編碼,Excel就無法識別出逗號,而會將整列資料視為同一個值。
謝謝Daniel的分享!


另外…Excel不默認支持UTF8的CSV文件
因此excel打開utf-8中文的csv百分百會發生這種問題。

有兩種解決辦法:
1. 可以先用notepad打開csv,另存為ANSI編碼,再用Excel打開
2. 先打開空的Excel,然後在料->取得外部資料->從文字檔→選擇csv文件,在導入資料對話框中選好UTF-8的編碼(你會發現默認是ANSI),就可以了。

Perl 解決Wide character in print with UTF-8 mode

use utf8;
binmode(STDIN, ':encoding(utf8)');
binmode(STDOUT, ':encoding(utf8)');
binmode(STDERR, ':encoding(utf8)');
 
但是如果要寫入FILE,則是
open FILE ,">:encoding(utf8)","tpca.csv";
print FILE ...;
close FILE;