[Risolto] Problema con form e ckeditor

6 contenuti / 0 new
Ultimo contenuto
[Risolto] Problema con form e ckeditor

Salve a tutti!
Sto sviluppando un modulo drupal, e sto combattendo con un problema a cui non trovo soluzione.
In breve ho creato un funzione che mi genera un form per modificare dei valori; questa funziona correttamente, però con le textarea si genera un loop infinito, e non ne capisco il perché.
Il bello è che mi succede solo con le textarea, non con i textfield o con select. Ho notato che se disabilito ckeditor funziona solo con le textarea.

Dove sbaglio??

Vi posto i frammenti di codice che riguardano il problema:

<?php
// -- Codice che richiama la funzione. --
case GET_MODIFICA_VALORE_CAMPO: // Si tratta di una modifica!
   
$node->body = drupal_get_form('_gomp_xml_module_form_modifica');  // Qui richiamo la funzione genera il form.
   
break;
?>

<?php
// -- Codice di _gomp_xml_module_form_modifica() --
   
$form['modifica'] = array(
       
'#type' => 'fieldset',
       
'#title' => "Modifica l'informazione",
       
'#tree' => TRUE,
    );
   
$form['modifica']['form_modifica'] = array(
       
'#type' => 'textarea',
       
'#default_value' => $valore_di_default,
       
'#cols' => $cols,
       
'#rows' => $rows,
       
'#description' => t('Inserisci qui il nuovo valore'),
       
'#required' => true,
    );
   
$form['modifica']['invia'] = array('#type' => 'submit', '#value' => t('Save') . '!');
?>

$cols, $row e $valore_di_default sono inizializzate corretamente.

vi prego aiutatemi!!! Graazie :)

In effetti da un frammento di codice non si capisce proprio tutto... A me sembra sia corretto tranne che per quanto riguarda il submit io metterei:

$form['modifica']['invia'] = array(
'#type' => 'submit',
'#value' => t('Save!'),
);
$form['#submit'][] = '_gomp_xml_module_form_modifica_submit';

E poi costruisco la funzione submit appunto.

Ciao

Ciao!!
Grazie mille per avermi risposto!

Si lo so purtroppo non posso postare tutto il codice, si tratta di quasi 1000 righe di codice!! :)
Ok allora provo a sistemare il codice così.

Ti faccio sapere! ;)

--
Marco

Risolto!!! Avevo implementato male hook_nodeapi() e mi iterava lì, solo con la textarea. Ora ho modificato i case aggiungendo 'alter' e funzione bene!! ^^

Grazie mille per la risposta danzisiweb!! :)

--
Marco

Bene, bene però sono curiosa di sapere hook_nodeapi() che cosa fa con hook_form() e hook_form:submit() ? Cioè cosa ci fai con hook_nodeapi?

Niente, in pratica ho del contenuto che deve essere letto da dei file XML e messo formattato in una tabella; hook_nodeapi mi serve per mettere la tabella "on the fly"; ho scelto questa strada piuttosto che salvarmi tutto in vari nodi per vari motivi, uno dei quali perché ci sono vari file possono cambiare spesso; se salvassi tutto su dei singoli nodi si dovrebbe tenere traccia di ogni nodo generato, in modo da eliminarlo ogni volta che cambia il file XML.

hook_form invece mi serve per generare un form di modifica di alcune di queste informazioni (quelle del file XML) per soli utenti autenticati!!

Spero di essere stato chiaro!! :)

--
Marco