2013-05-12 17 views
0

有沒有人知道mysqli類的short(short是關鍵詞)擴展來準備,bind_param,執行並關閉與一個函數的連接?擴展到mysqli類來結合mysqli_stmt函數

+0

這將是一個功能,完成這些步驟,不再。到目前爲止,你試圖做些什麼來解決這個問題? – 2013-05-12 09:43:52

回答

0

這是個不錯的主意,除了關閉連接。

但是,返回的結果類型存在問題(雖然不是很大)。當然,人們總是可以返回一排行,並獲得一行$row[0]和一個單一的字段使用current($row[0]) - 但事實證明,這是相當不方便。

此外,除了傻整數和字符串以外的數據類型也存在問題。

因此,事實證明,我們需要一個類。所以,你在這裏 - 一個class, which methods are the very functions you're asking for

看看這個例子:

$db = new safeMysql(); 

$name = $db->getOne('SELECT name FROM table WHERE id = ?i', $_GET['id']); 
$data = $db->getInd('id','SELECT * FROM ?n WHERE id IN (?a)', $table, array(1,2)); 
$data = $db->getAll("SELECT * FROM ?n WHERE mod=?s LIMIT ?i", $table, $mod, $limit); 

這些方法你問什麼:把你的變量,然後裝訂成查詢並返回結果(如果有的話)。

+0

謝謝!我喜歡這門課,它很輕便,並具有所有必需的功能。 – user1603038 2013-05-12 10:03:21

+0

請注意,它實際上並未使用bind_param,只是正確地格式化數據並將其插入到查詢中。它與本地準備的聲明同樣安全,但更方便 – 2013-05-12 10:26:16