{PT} - 3.5.3.2 Fluxo de controle
O método de controle de fluxo que você vai usar com maior freqüência é o redirect(). Esse método pega seu primeiro parâmetro na forma de uma URL relativa CakePHP. Quando um usuário fez uma compra com sucesso, você provavelmente irá redirecioná-lo para a tela de recibo.
<?php
function comprar() {
// A lógica para finalizar a compra vai aqui...
if($sucesso) {
$this->redirect('/compras/obrigado');
} else {
$this->redirect('/compras/confirmar');
}
}
?>
<?phpfunction comprar() {// A lógica para finalizar a compra vai aqui...if($sucesso) {$this->redirect('/compras/obrigado');} else {$this->redirect('/compras/confirmar');}}?>
O segundo parâmetro do redirect() lhe permite definir um código de status HTTP para acompanhar o redirecionamento. Você pode querer usar 301 (movido permanentemente) ou 303 (veja outro), dependendo da natureza do redirecionamento.
Esse método não chama exit() depois de redirecionar a menos que você configure o terceiro parâmetro para true.
Similarmente, o método flash() é usado para direcionar o usuário para uma nova página depois de uma operação. O método flash() é diferente pelo fato de mostrar uma mensagem antes de passar o usuário para uma outra URL.
O primeiro parâmetro deve guardar a mensagem a ser mostrada, e o segundo parâmetro é uma URL relativa CakePHP. CakePHP vai mostrar a mensagem na variável $message, por um tempo definido em segundos na variável $pause antes de direcionar o usuário.
Para mensagens flash dentro da página, dê uma olhada no método setFlash() do component Session.
{EN} - 3.5.3.2 Flow Control
Differences
| Lines: 1-2 | Lines: 1-29 | ||
| - | <title>Flow Control</title> <p></p> |
+ | <title>Fluxo de controle</title> <div class="method"> redirect(string $url, integer $status, boolean $exit) </div> <p>O método de controle de fluxo que você vai usar com maior freqüência é o redirect(). Esse método pega seu primeiro parâmetro na forma de uma URL relativa CakePHP. Quando um usuário fez uma compra com sucesso, você provavelmente irá redirecioná-lo para a tela de recibo.</p> <pre> <?php function comprar() { // A lógica para finalizar a compra vai aqui... if($sucesso) { $this->redirect('/compras/obrigado'); } else { $this-&gt;redirect('/compras/confirmar'); } } ?> </pre> <p>O segundo parâmetro do redirect() lhe permite definir um código de status HTTP para acompanhar o redirecionamento. Você pode querer usar 301 (movido permanentemente) ou 303 (veja outro), dependendo da natureza do redirecionamento.</p> <p>Esse método não chama exit() depois de redirecionar a menos que você configure o terceiro parâmetro para true.</p> <div class="method"> flash(string $message, string $url, integer $pause) </div> <p>Similarmente, o método flash() é usado para direcionar o usuário para uma nova página depois de uma operação. O método flash() é diferente pelo fato de mostrar uma mensagem antes de passar o usuário para uma outra URL.</p> <p>O primeiro parâmetro deve guardar a mensagem a ser mostrada, e o segundo parâmetro é uma URL relativa CakePHP. CakePHP vai mostrar a mensagem na variável $message, por um tempo definido em segundos na variável $pause antes de direcionar o usuário.</p> <p>Para mensagens flash dentro da página, dê uma olhada no método setFlash() do component Session.</p> |
