Errore inserimento immagine

mauro81

Nuovo Utente
29 Nov 2013
15
0
0
Ciao, non riesco ad inserire le immagini un un DB con questo codice:

CODICE DEL FORM:

HTML:
<div id="insert">
 <form action="" method="post" > 
<table>
<tbody>
<tr><td><label for="titolo">Titolo:</label></td>
<td><input type="text" name="titolo" maxlength="255"></td></tr>
<tr>
<td>
<label for="descrizione">Descrivi attività:</label> </td>
<td><textarea type="text" cols="40" rows="3" name="descrizione"> </textarea></td>
</tr>
<tr>
<td><label for="addFile">Choose File:</label> </td>
<td><input type="file" id="upload" name="addFile"></td>
</tr>
<tr><td>
<input type="hidden" name="action" value="addAttivita">
<input type="submit" id="submit" class="option" value="Inserisci"></td>
<td><div class="option" onclick="addNews()">Annulla</div></td></tr>
</tbody>
</table>
</form>
</div>

CODICE PHP:

PHP:
if(isset($_POST['action']) and $_POST['action'] == 'addAttivita') 
{

$upFile = $_FILES['addFile']['tmp_name'];
$upName = $_FILES['addFile']['name'];
$upType = $_FILES['addFile']['type'];
$upTitle = $_POST['titolo'];
$upDesc = $_POST['descrizione'];
$upData = file_get_contents($upFile);
	
include_once '../includes/db.inc.php';
	  
try
{
$aFile = $pdo->prepare("INSERT INTO attivita SET
titolo = :titolo,
descrizione = :descrizione,
imgTitle = :imgTitle,
mimeType = :mimeType,
imgData = :imgData");
$aFile->bindValue(':mimeType' , $upType);
$aFile->bindValue(':titolo' , $upTitle);
$aFile->bindValue(':imgTitle' , $upName);
$aFile->bindValue(':imgData' , $upData);
$aFile->bindValue(':descrizione', $upDesc);
$aFile->execute();
}
catch (PDOException $e)
{
 $error = 'Error during data upload.'  . $e;
    include '../includes/error.html.php' ;
    exit();
}
header('Location: ?attivita'); 
}

Mi risponde con questo errore:

'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'imgTitle' cannot be null' in /var/www/viale/reserved/request.inc.php:199 Stack trace: #0 /var/www/viale/reserved/request.inc.php(199): PDOStatement->execute() #1 /var/www/viale/reserved/gestione.php(50): include('/var/www/viale/...') #2 {main}

Il bello è che lo stesso codice lo uso in un'altra pagina e funziona perfettamente.
In quella pagina però non ci sono i campi 'titolo' e 'descrizione'....
Help please!
 
...

nessuna idea?
Sto guardando gli altri post...il codice mi sembra corretto.
Devo sbagliare qualcosa nell'uso della variabile $_FILES[]
 
[risolto]

Fatto da solo...
avevo dimenticato
enctype="multipart/form-data"
nel tag <form>
:quote:
 

Discussioni simili