Di solido la sintassi:
Codice:
INSERT INTO tabella ( nomi_campi ) VALUES ( valori_campi )
si usa quando non devi valorizzare tutti i campi, nel tuo caso potresti utilizzare, visto che valorizzi tutti i campi, questa sintassi:
Codice:
INSERT INTO tabella VALUES (valori campi)
Ma credo sia la stessa cosa, l'errore credo sia quel null.
Cmq, l'id suppongo che lo metti null perché è un autoincrement, giusto? se si prova a definire la query senza definire il campo id:
Codice PHP:
mysql_query("INSERT INTO immagini (img, desc, email)
VALUES ('$immagine', '$desc', '$email')");
Cosi dovrebbe funzionare, al meno che i campi non siano tutti di tipo testo.