mmm per l'integrazione col forum non so cosa dirti....

Per quanto riguarda, i dati ottenuti dal server, hai due opzioni:

1. Ritorni esattamente l'HTML che deve essere visualizzato, cioè lo generi lato server, poi lo inserisci nell'elemento contenitore apposito.

Un esempio:
codice:
<ul id = "Thumbs">[*]
      [img]image.thumb.php?id=1[/img]
   [*]
      [img]image.thumb.php?id=2[/img]
   [*]
      [img]image.thumb.php?id=3[/img]
   [/list]
<div id = "ImageData">

</div>
Tramite JS blocchi l'esecuzione di quei link e lanci la richiesta AJAX sullo stesso url.

La pagina imaga.data.php ritorna l'HTML che verrà contenuto nel div#ImageData.

Un Semplice esempio:
Codice PHP:
<?php
   $id 
intval($_GET['id']);
   if(
$id == 0) exit(0);
   
$db = new PDO("mysql:dbname=ImageDB;host=localhost""user""password");
   
$query "SELECT * FROM Images WHERE id = $id";
   
$st $db->query($query);
   
$row $st->fetch(PDO::FETCH_ASSOC);
?>
<img src = "<?php echo $row['src']?>" align = "left" />
<h3>Titolo</h3>



   <?php echo $row['title'?>
</p>
<h3>Autore</h3>



   <?php echo $row['author'?>
</p>
....

<form action = "image.update.php" method = "post" id = "UpdateForm">
   <input type = "hidden" name = "id" value = "<?php echo $row['id'?>" />
   ...
   
</form>
Poi quando ottieni la risposta AJAX devi solo sostituire il contenuto del div#ImageData con quello che ti ha passato il server.