In riguardo alla domanda #1 (quella sull'iFrame), puoi procedere in tal modo.
Costruisci l'iFrame, ad esempio:
codice:
<IFRAME NAME="testo" ID="testo" WIDTH="100%" HEIGHT="350" src='....'></IFRAME>
Ora supponiamo di avere un FORM che chiamiamo "userForm", nel quale mettiamo in tasto di inserimento di tipo BUTTON (non SUBMIT!!) ed un campo hidden da usare come campo di interscambio del testo presente nell'iFrame ed il FORM vero e proprio:
codice:
<form action="..." method="post" name="userForm">
<INPUT NAME="testo" TYPE="hidden">
<input type="button" onclick="javascript: submitRecord();" value="Registra">
</form>
Nota che sia all'iFrame, sia al campo HIDDEN ho dato il name="testo".
All'evento "onclick" del BUTTON associamo una funzione JavaScript chiamata "submitRecord()", che possiamo dichiarare in questo modo:
codice:
<script language="JavaScript">
<!--
function submitRecord() {
document.userForm.testo.value = frames.testo.document.body.innerHTML;
document.userForm.submit();
return;
}
//-->
</script>
Quello che fa la funzione JS è assegnare al campo HIDDEN del FORM il contenuto HTML dell'iFrame, e quindi fare il submit del FORM stesso (è per questo che ho usato un tasto di tipo BUTTON e non di tipo SUBMIT).
Tutto ciò dovrebbe funzionare.
Comunque ti consiglio di lasciare perdere l'iFrame e usare HTML Area http://www.htmlarea.com - un editor HTML WYSIWYG molto avanzato che non usa un iFrame ma un campo TEXTAREA che viene modificato e ampliato da un'applicazione JavaScript molto potente.