il db genera un errore? non so che db usi ma usa un attimo una veste grafica e prova la query, al limite assegna prima i valori ad altre variabili in questo modo:

Codice PHP:
if (isset($_POST["Submit"]))
{

if (isset(
$_POST["category"]) && isset($_POST["title"]) && isset($_POST["description"]))

{

if (
is_uploaded_file($_FILES["file"]["tmp_name"])) {
$eventPicture strtolower(rand(1,999)."_".basename($_FILES["file"]["name"]));
move_uploaded_file($_FILES["file"]["tmp_name"], "system/cache/temp/{$eventPicture}");
rename("system/cache/temp/{$eventPicture}""system/cache/pictures/{$eventPicture}");
} else 
$eventPicture NULL;


$a time();
$b $_POST['category'];
$c $_POST['title'];
$d $_POST['description'];
$e1 "id";
$e2 me($e1);
myQ("
INSERT INTO `[x]articoli` // il nome della tabella con le quadre non l'avevo mai visto
(`articleid`,`date`,`category`,`title`,`description`,`user` ,`mainpicture`)
VALUES ('
$a','$b','$c','$d','$e2','$eventPicture')");

$foto_up_ok true;

}
}