Locaweb - Edição 45 - page 61

61
Eestecódigonapágina:
<form method="POST"
action="http://localhost/
laraveltest/public/contato"
accept-charset="UTF-8"
role="form"><input name="_
token" type="hidden" value=p
KuBfB643JSA6D2yq96yyrn
SycFxqIVeAgFQwZoq">
<label for="nome"
class="control-
label">Nome</label> <input
placeholder="Seu nome..."
class="form-control"
name="nome" type="text"
id="nome"><br>
<label for="email"
class="control-label">E-
mail</label> <input
placeholder="Seu e-mail..."
class="form-control"
name="email" type="text"
id="email"><br>
<label for="texto"
class="control-
label">Texto</label>
<textarea class="form-
control" name="texto"
cols="50" rows="10"
id="texto"></textarea><br>
<input class="btn btn-
default" type="submit"
value="Enviar Mensagem"></
form>
Notequeo template
“blade” criou inclusiveum
“token”, paramaior segurança
Em tradução simples, MVC é modelo–visão–controlador
Na web, há bastante documentação sobre o Laravel
do formulário. Agoraprecisa-se
deum “controller”, que trabalhe
comdadoseaçõesnecessárias
paraoenviodoe-mail pelo
formulário. Abraoblocodenotas
novamente, crieumnovoarquivo
embrancoe salvecomonomede
HomeController.PHP.
Depoisde realizar ospassos
acima, insiraocódigoabaixodele:
<?PHP
class HomeController extends
\BaseController {
public function
contato(){
return
View::make('contato');
}
public function
postContato() {
$rules =
array('nome' => 'required',
'email' => 'required|email',
'texto' => 'required');
$validation =
Validator::make
(Input::all(), $rules);
$data = array();
$data['nome'] =
Input::get("nome");
$data['email'] =
Input::get("email");
$data['texto'] =
Input::get("texto");
if($validation->passes()) {
Mail::send('contato', $data,
function($message) {
$message-
>from(Input::get('email'),
Input::get('nome'));
$message->to('homero@
atibaia.com.br')
->subject('Homero Ottoni');
});
return
Redirect::to('contato')
->with('message', 'Mensagem
enviada com sucesso!');
}
return
Redirect::to('contato')
->withInput()
->withErrors
($validation)
->with('message', 'Erro!
Preencha todos os campos
corretamente.');
Sobreoautor
HomeroOttoniéprogramadore
sócio-proprietáriodaempresaMake
Mediadedesenvolvimentoweb.
Naweb, hádiversossites
queabordamoMVC,
explicandode forma
detalhadacomoele
funcionaecomopodeser
extremamenteútil aoseu
projetoeademais tiposde
desenvolvimentoon-line.
Casoqueirasabermais,
acesseos linksabaixoe
encontre informaçõessobre
omodelo.
PARASABERMAIS
}
}
Se tudocorreubem, oque se
teméumanovapáginadecontato
(queusaumviewparaconstruir a
entradadedados), o formulárioe
umcontroller queatuanasações
necessáriasparaoenviodesses
dados. Épossívelmelhorar o
processoeenviar ousuáriopara
RXWUDS£JLQD GHFRQíUPD©¥R RX
LQIRUPD©¥RGHHUUR PRGLíFDQGR
esta linhadecódigodocontroller:
return
Redirect::to('contato')
->with('message', 'Mensagem
enviada com sucesso!');
Paraqueoexemploacima
funcionecorretamente, épreciso
DMXVWDU DFRQíJXUD©¥RGRDUTXLYR
DSS?FRQíJPDLO3+3 SDUDR
servidor smtpde suapreferência.
Como foi dito, para
explorar o Laravel seria
necessáriomuitomais espaço
doqueutilizadonesteartigo.
Entretanto, hámuita informação
disponível naweb. Então, além
depraticar comos tutoriais
desta reportagem, nãodeixede
pesquisarmais sobreoassunto
na internet. Depois, é colocar a
mãonamassaepraticar.
LARAVEL
LW
REVISTA LOCAWEB
1...,51,52,53,54,55,56,57,58,59,60 62,63,64,65,66,67,68
Powered by FlippingBook