所以我試圖用 fav_id 輸入每個便利設施,但每次我遇到這兩個錯誤時,我都嘗試過 if 在 foreach() 之前,但仍然遇到相同的兩個錯誤
$inserted_id = $PDO->lastInsertId();
$amenity_name = ['wifi', 'amenity kit'];
$sql = "INSERT INTO user_fav (fav_id, amenity_name) VALUES (:LASTINSERTID, :AMENITY)";
$stmt = $PDO->prepare($sql);
$stmt->bindParam(':LASTINSERTID', $inserted_id);
$stmt->bindParam(':AMENITY', $amenity_name); --- line 54
foreach($amenity_name as $item) { --- line 57
$stmt->execute($item);
}
我得到這兩個錯誤
注意:第 54 行的陣列到字串的轉換
警告:第 57 行為 foreach() 提供的引數無效
uj5u.com熱心網友回復:
這條線
$stmt->bindParam(':AMENITY', $amenity_name);
改變$amenity_name從陣列到的字串:
注意:陣列到字串的轉換
然后你不能迭代它(因為它是一個字串,不可分割)所以你也會收到:
警告:為 foreach() 提供的引數無效
你應該系結在foreach:
$inserted_id = $PDO->lastInsertId();
$amenity_name = ['wifi', 'amenity kit'];
$sql = "INSERT INTO user_fav (fav_id, amenity_name) VALUES (:LASTINSERTID, :AMENITY)";
$stmt = $PDO->prepare($sql);
foreach($amenity_name as $item) {
$stmt->execute(array('LASTINSERTID' => $inserted_id, 'AMENITY' =>$item));
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/393646.html
上一篇:選擇列只顯示第一列
