Allora c'è qualcosa che non va nel passargli l'id: puoi postare il tag <img> con il link a mostra.php (lo puoi prendere da filrefox -> ctrl-u)

PS: Adesso che ci faccio caso, ma perchè stai facendo tutto questo giro per visualizzare la foto ?

nella visualizza prodotti fai
$query = mysql_query("SELECT * FROM prodotti ORDER BY data DESC LIMIT 18");

Nel mostra.php
$sql = mysql_query("SELECT immagine FROM prodotti WHERE id = $id"

In pratica lavorano sulla stessa tabella. Potresti semplicemente fare nella visualizza

Codice PHP:
<?php
...
while(
$row=mysql_fetch_array($query))
{
?>
<div class="quadro">
// Facendo attenzione se il path è corretto, visto che è relativo
<div id="immagini"><? echo '[img]'.$row['immagine'].'[/img] '?></div>
<div id="barra"></div>
<div id="titolo"> <? print $row['titolo'];?></div>


ecc....
</div>
<?
}