English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

以前我發生mysql資料庫無法接收form傳來的post表單的問題,
後來請虛擬空間業者打開php.ini的全域變數為on,
但如果基於安全考量,依舊設為off,
使用$_REQUEST的用法,該怎麼寫才會讓表單資料順利傳給form action=  的那個php???
表單那頁的程式碼:




///////////////////////////////
process.php的程式碼:
$name = $_REQUEST[\'name\'];
$SQLStr = \"INSERT INTO test_abc (name)\" ;
$SQLStr .= \"VALUES($name)\";
$res=mysql_query($SQLStr);
//////////////////我測試結果是資料庫一點動靜也沒有,除非我把
$SQLStr .= \"VALUES(\'test\')\";當然就INSERT test的字串進去了,請問問題出在哪??請高手協助

2006-06-01 06:56:15 · 1 個解答 · 發問者 ? 2 in 電腦與網際網路 程式設計

還是不行,資料庫沒一點動靜,除非我$SQLStr .= \"VALUES(\'test\')\";才能把資料寫進去,因此原因應該是前一頁的表單無法傳資料過來,如果php.ini權限無法開放的話,還有沒有解決方法???

2006-06-01 09:42:12 · update #1

我解決了  原來是我自己犯了小錯誤,你的方法可以解決我的問題,謝謝

2006-06-01 10:11:32 · update #2

1 個解答

$_REQUEST改用$_POST取得變數
$_REQUEST是全域變得在用的
基於安全還是將$_POST 和 $_GET 分清楚會好一些


$name = $_REQUEST['name'];
改成
$name=addslashes(trim($_POST[name]));

2006-06-01 07:22:05 · answer #1 · answered by ? 2 · 0 0

fedest.com, questions and answers