Adicionando vários arquivos com o PDO
Eu tenho um formulário em uma página chamadagallery.php
e o código é o seguinte:
<form action="upload_image.php" method="POST" class="form-horizontal" enctype="multipart/form-data">
<div class="form-group">
<div class="col-md-12">
<div align="center"><a href="#" class="btn btn-default" id="image_alt"><span class="glyphicon glyphicon-ok"></span>  Seleziona immagini</a></div>
<input id="image" name="files[]" type="file" multiple="multiple" required="required" style="margin-left:50%;" class="btn btn-default">
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label" for="btn_add_img"></label>
<div class="col-md-12">
, <div align="center">
<button id="btn_add_img" name="btn_add_img" class="btn btn-primary">Carica</button>
</div>
</div>
</div>
</form>
Em seguida, tenho a página chamada upload_image.php com o seguinte código:
<?php
session_start();
$where = dirname(__FILE__);
include($where . "/config/db.php");
$categoria_img = '1';
$id_album = '1';
// Loop $_FILES to exeicute all files
foreach ($_FILES as $file) {
$nome_file_temporaneo = $file["tmp_name"];
$nome_file_vero = $file["name"];
$tipo_file = $file["type"];
for($i=0;$i<sizeof($tipo_file);$i++) {
echo "<br>Nome:" . $nome_file_temporaneo[$i]."<br>";
$dati_file = file_get_contents($nome_file_temporaneo[$i]);
$query = "INSERT INTO images (category_id,image_big,image_type,id_album) values (:categoria_img,:data,:img_type,:id_album)";
echo "<br>".$query;
$stmt = $dbh->prepare($query);
$stmt->bindParam(":categoria_img", $categoria_img, PDO::PARAM_INT);
$stmt->bindParam(":data", $dati_file, PDO::PARAM_STR);
$stmt->bindParam(":img_type", $tipo_file[$i],PDO::PARAM_STR);
$stmt->bindParam(":id_album", $id_album, PDO::PARAM_INT);
$stmt->execute();
}
}
?>
O problema é queupload_image.php
não mostra nenhum erro .. e nada pode ser armazenado no banco de dados após passar o arquivo pelo formulário emgallery.php
página ... alguém poderia me ajudar?
ATUALIZAR
Erro fatal: exceção não capturada 'PDOException' com a mensagem 'SQLSTATE [HY093]: Número de parâmetro inválido: número de variáveis associadas não corresponde ao número de tokens 'em C: \ xampp \ htdocs \ castellazzo_theme \ Versão PHP \ upload_image.php: 31 Rastreio de pilha: # 0 C: \ xampp \ htdocs \ castellazzo_theme \ Versão PHP \ upload_image.php (31): PDOStatement-> execute () # 1 {main} lançado em C: \ xampp \ htdocs \ castellazzo_theme \ Versão PHP \ upload_image.php na linha 31