如何使用PDO執行3個不同的表插入操作,以便通過for循環生成SQL查詢。使用PDO將多個INSERT插入到3個表中
我的腳本非常龐大,所以要把它縮小到代碼的主要因素。
$date_sql = '';
for($i = 0; $i < count($_POST['date_range']); $i++)
{
// codez
$date_sql .= " INSERT INTO dates (date_one, date_two) VALUES('" . $_POST['date_range'][$i] . "', '" . $_POST['date_range_end'][$i] . "'); ";
// more codez
}
我有 for循環是相同的,因爲這圈我已經給了,但不同的$_POST
的價值觀和不同的表:months
,years
。它會從$*_sql
變量生成一個多行SQL查詢。
3個循環完成後,我加入了3個SQL變量轉換成字符串:
$main_sql = $date_sql . $month_sql . $year_sql;
然後,我希望它來執行處理,並插入值到表中,像這樣的SQL:
$dbh->beginTransaction();
$sth = $dbh->exec($main_sql);
$dbh->commit();
但是,這是正確的,這樣做的有效途徑?
使用`:one`,`:two`等鏈接時是否安全?值必須先逃脫嗎? – MacMac 2011-04-15 14:50:15