Prima di tutto, il codice html perchè lo scrivi da PHP?
Fai molta più fatica.... cmq... non fa niente...
In grassetto ti ho scritto la parte che mancava!
codice:
<FORM METHOD=\"POST\" ACTION=\"insert_text.php\">
[...]
<td width=\"100%\" valign=\"middle\"><font face=\"Verdana\" size=\"1\">";
//elenco argomenti
$sql= "SELECT * FROM envo_textnews_top";
$risultati_mysql=mysql_query($sql);
echo "<select name=\"topicname\">
<option value=\"\" selected>";
while ($riga = mysql_fetch_array($risultati_mysql))
{
$topicid=$riga["topicid"];
$topicname=$riga["topicname"];
$topicimage=$riga["topicimage"];
echo"<option value=\"$topicname\">$topicname</option> ";
}
echo" </select></td>";
echo "<INPUT TYPE=\"hidden\" NAME=\"topicid\" value=\"$topicid\"> ";
<INPUT TYPE=\"SUBMIT\" VALUE=\"Invia\" name=\"submit\"><INPUT TYPE=\"reset\" VALUE=\"Cancella\">
[...]
</FORM>
Nel file non serve dichiarare nulli gli autoincrement, quindi omettili direttamente
codice:
$sql="INSERT INTO envo_textnews (data, topicid, title, text, posted)
VALUES ('$data', '$topicid', '$title', '$text', '$posted')";
prova a vedere se già ti funziona... se no ci sono altri errori....