问题描述
我很困惑……我遇到一个小问题,使我发疯。 我要插入到sql表中的数组中有数组。 我的问题是我不知道如何在数组中插入数组...
数组: Array([1] => Array([diploma] => Master [institut] => IAE)[2] => Array([diploma] => License [institut] =>Université))
欢迎任何建议:)非常感谢法国!
<input id="mytext-{cid}" type="text" name="training[{cid}][diploma]" placeholder="Diplôme" value="">
<input name="training[{cid}][institut]" placeholder="Institut">
try
{
$pdo = new PDO('MysqL:host='.$host.';dbname='.$bd,$login,$password);
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_OBJ);
}
catch (Exception $e) //Le catch est chargé d’intercepter une éventuelle erreur
{
die ($e->getMessage());
}
global $pdo;
// INSERT MysqL
if (empty($_POST['training'])){
}
else {
$sql = "INSERT INTO user_resume (Diplome,Institut) VALUES (?,?)";
$stmt= $pdo->prepare($sql);
$stmt->execute($_POST['training']);
}
解决方法
您需要遍历多维数组并使用命名的占位符,以使值匹配。
$sql = "INSERT INTO user_resume (Diplome,Institut) VALUES (:diploma,:institut)";
$stmt= $pdo->prepare($sql);
foreach($_POST['training'] as $params){
$stmt->execute($params);
}