. : : 雅 舍 小 築 : : .

分類文章 [PHP]

在PHP用post方式傳送表單

PHP 2006-08-03 11:39

我們知道表單如果是get,要用PHP來傳表單資料一點都不難,把網址加上問號,就可以在後面附加資料,如 http://your.domain/form.php?data1=1&data2=2。可是,萬一接收表單那支程式只收POST怎麼辦?

我們知道PHP現在可以用$_POST[]這種變數來接收POST表單資料,那我們該如何從PHP中傳送表單資料給它呢?

有一種方法是用開socket的方式,模仿瀏覽器與伺服器溝通的行為,去傳送資料。但這邊介紹另一種更簡單的方式,用CURL。

首先,你必須確認你的PHP在編譯時有加入CURL支援,接者,我們看一下以下的程式碼:

$url = "http://your.domain/form.php";
$data = "data1=1&data2=2";
$data = urlencode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
curl_close($ch);

像這樣,我們就可以透過POST方法傳送data1值為1且data2為2的資料給form.php這支程式囉。而如果在畫面上,不想要該程式傳回的畫面的話,我習慣在前後加上ob_start()及ob_end_clean()。

[迴響: 0]

用imagemagick取代GD產生縮圖

PHP 2005-06-02 22:37

剛剛大量在傳圖片上這裡的相簿,忽然發現GD產生出來的縮圖根本就不能看,邊邊都花掉了,一縮圖直線就變一格一格的。

於是去找了一些別人產生縮圖的方法,就在PHP5網管實驗室找到用imagemagick產生縮圖的方法

花了一點時間在FreeBSD裝起來後,試用一下發現結果很令我滿意,也意外解決了 GD 沒辦法縮大檔的問題。之前即使將 php.ini 的 memory_limit 調大到 32M,GD依然沒辦法處理3M以上的大圖。我的底片機照出來去掃都超過3M,這樣勢必我要在我電腦先縮圖才能傳,真是不方便。現在換了imagemagick後這個問題也解決了。

[迴響: 0]
Logo 關於這裡的大小事 | Licenses | Contact Me | ©2008 Rical's Personal Studio