Joomla.it Forum

Joomla! 3 => Joomla! 3 => : Il_maca 01 Jun 2013, 20:09:07

: [RISOLTO] setRedirect con messaggio di errore
: Il_maca 01 Jun 2013, 20:09:07
Salve a tutti ragazzi :)
Stavo riadattando un componente per la nuova versione di joomla, la 3.1 e sono incappato in un piccolo problema che non riesco proprio a risolvere:
in pratica il componente manda una mail, in seguito con un setredirect mi rimanda alla pagina stessa mostrandomi un messaggio. Fino alla 2.5 funziona... ma sulla 3.1 mi reindirizza correttamente ma non mi fa visualizzare il messaggio... posto il codice:

:

$link = JRoute::_('index.php?option=com_digicontacts', false);
$msg = JText::_('DIGICONTACT_JS_WRONGCAPTCHA');
$this->setRedirect($link, $msg, 'error');
Ho cercato nella documentazione, ma non ho trovato nulla... può dipendere dal template utilizzato?
: Re:setRedirect con messaggio di errore
: giovi 02 Jun 2013, 02:07:24
ciao, sicuro che esista nella 2.5?
Qui leggo che si tratta di un riferimento "storico" della 1.5, potrebbe essere una funzione che già nella 1.6 continuava ad esserci solo per comodità ma che non era supportata in modo effettivo!
http://docs.joomla.org/API15:JController/setRedirect (http://docs.joomla.org/API15:JController/setRedirect)
 
Ad ogni modo se inserisci il messaggio in buffer e subito dopo effettui il redirect il problema persiste?
: Re:setRedirect con messaggio di errore
: mau_develop 02 Jun 2013, 09:39:16
$this->setMessage(JText::_('DIGICONTACT_JS_WRONGCAPTCHA'), 'error');
$this->setRedirect($link, false);
: Re:setRedirect con messaggio di errore
: Il_maca 02 Jun 2013, 10:54:12
Era quello che temevo, perchè effettivamente non trovavo nulla nella documentazione...
ho provato a caricarlo con il setMessage ma nulla.
Provo con la enqueueMessage(http://docs.joomla.org/Display_error_messages_and_notices (http://docs.joomla.org/Display_error_messages_and_notices))
e vi faccio sapere...

Aggiornamento
nulla... ho provato a fare in questo modo:
:
$link = JRoute::_('index.php?option=com_digicontacts', false);
JFactory::getApplication()->enqueueMessage(JText::_('DIGICONTACT_JS_WRONGCAPTCHA'), 'error');
$this->setRedirect($link, false);

ma non funziona...
ho provato anche in quest'altro modo:
:

$link = JRoute::_('index.php?option=com_digicontacts', false);
$this->setMessage(JText::_('DIGICONTACT_JS_WRONGCAPTCHA'), 'error');
$this->setRedirect($link, false);

ma niente mmm


AGGIORNAMENTO DEFINITIVO:
Allora, ringrazio tutti per le risposte, che mi hanno illuminato :D La funzione setMessage Sembra non funzionare... al contrario funziona benissimo questo:
:
$link = JRoute::_('index.php?option=com_digicontacts', false);
JFactory::getApplication()->enqueueMessage(JText::_('DIGICONTACT_JS_WRONGCAPTCHA'), 'error');
$this->setRedirect($link, false);

Però non veniva visualizzato il messaggio perchè per la prima volta ho utilizzato un template scaricato... e nell'index.php mancava l'inclusione del messaggio:
:
<jdoc:include type="message" />Purtroppo è la prima volta che utilizzo un template già pronto e avevo dato per scontato che ci fosse! Grazie mille ;)
: Re:[RISOLTO] setRedirect con messaggio di errore
: giovi 02 Jun 2013, 23:23:50
Avendo aggiunto il tag necessario sei riuscito a testare comunque anche il metodo iniziale?
: Re:[RISOLTO] setRedirect con messaggio di errore
: Il_maca 03 Jun 2013, 06:41:01
Impostando il messaggio nel setRedirect? a dire il vero no... non ci ho pensato proprio! Stasera lo provo e vi faccio sapere ;)