Joomla.it Forum
Joomla! 1.5.x (versione con supporto terminato) => Joomla! 1.5 => : lucaguida 29 Aug 2011, 12:07:23
-
la domanda è: da un controller è possibile usare setRedirect per passare dei parametri in post alla pagina verso la quale si è reindirizzati?
il comando in generale è: $this->setRedirect($link, $msg);
per i parametri in get basta aggiungerli nel primo parametro della funzione ($link) ma per quelli in post?
grazie
ciao
-
ummhh... perchè ti trovi in questa condizione? Qual'è lo scopo di quello che vuoi fare?
M.
-
ho una pagina con un form che manda i dati in post
all'invio dei dati i campi vengono validati e se il codice di controllo non è corretto si ritorna alla pagina del form altrimenti invia una mail.
il passaggio alla pagina del form vorrei con fosse con i dati in post e non nel get
-
appunto, allora perchè usi redirect?
Seguendo il tuo ragionamento:
funzione form() -> view form
il form si porta il post e chiama la task salva() del controller
Il controller si occuperà di far bindare ( :):) .. speriamo che mmleoni nn legga mai) i dati con la table dal model che ritornerà al controller true o false
se true sei a posto... se false....
rientri nella view di prima col post
ovvio che sei costretto a vedere se la variabile c'è o non c'è altrimenti ti da un errore.
M.
-
ok, questo è il codice del mio construct, ma come si scrive quello che dici tu?... ???
class RdControllerScrivi extends JController
{
# ----------------------------------------------------------------------
function __construct()
{
parent::__construct();
}
# ----------------------------------------------------------------------
function display()
{
parent::display();
}
# ----------------------------------------------------------------------
function invia()
{
$model = $this->getModel('scrivi');
if($model->invia())
{
$msg = "Segnalazione inviata correttamente.";
} else {
$msg = "Segnalazione non inviata: " . $model->getError();
}
$link = 'index.php?option=com_rd&view=scrivi';
$this->setRedirect($link, $msg);
}
}
-
come entri nel form? con default? default chiama comunque una view, se non gli dici nulla userà il default della view che passerà i dati al template (form) di default anch'esso....
sul fallimento del salvataggio devi rientrare in quella view che alla fine ti ripresenterà il form...
è ovvio che il defaul della view in cui entri non potrà essere vuoto ma dovrà gestire la presenza o meno del post, creare un oggetto da passare al template.
L'oggetto dovrà vedere se c'è una var nel post altrimenti dovrà assegnare un default o cmq inizializzarla altrimenti quando la richiami nel template hai un errore....
M.