Created
December 21, 2015 19:06
-
-
Save talha08/ff1bb58ac438db8f1a04 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1. Go to | |
............................................... | |
app/config/mail.php | |
............................................... | |
Change ‘drive’ from ‘smtp’ to ‘mail’ | |
'driver' => 'mail', | |
Next, make ‘host’ name from ‘smtp.mailgun.org’ to nothing, so make it blank. | |
'host' => '', | |
............................................... | |
2 Create Route | |
Go to your ‘routes.php’ and add | |
............................................... | |
//Contact Page | |
Route::get('contact', 'ContactController@getContact'); | |
//Form request:: POST action will trigger to controller | |
Route::post('contact_request','ContactController@getContactUsForm'); | |
............................................... | |
3 Create Controller to server Route request | |
Create new file inside ‘app/controller’: ContactController.php | |
............................................... | |
class ContactController extends BaseController { | |
//Server Contact view:: we will create view in next step | |
public function getContact(){ | |
return View::make('contact'); | |
} | |
//Contact Form | |
public function getContactUsForm(){ | |
//Get all the data and store it inside Store Variable | |
$data = Input::all(); | |
//Validation rules | |
$rules = array ( | |
'first_name' => 'required|alpha', | |
'last_name' => 'required|alpha', | |
'phone_number'=>'numeric|min:8', | |
'email' => 'required|email', | |
'message' => 'required|min:25' | |
); | |
//Validate data | |
$validator = Validator::make ($data, $rules); | |
//If everything is correct than run passes. | |
if ($validator -> passes()){ | |
//Send email using Laravel send function | |
Mail::send('emails.hello', $data, function($message) use ($data) | |
{ | |
//email 'From' field: Get users email add and name | |
$message->from($data['email'] , $data['first_name']); | |
//email 'To' field: cahnge this to emails that you want to be notified. | |
$message->to('[email protected]', 'my name')->cc('[email protected]')->subject('contact request'); | |
}); | |
return View::make('contact'); | |
}else{ | |
//return contact form with errors | |
return Redirect::to('/contact')->withErrors($validator); | |
} | |
} | |
} | |
............................................... | |
4 Create a View inside ‘view/contact.blade.php’ | |
............................................... | |
<html> | |
<body> | |
{{ Form:: open(array('url' => 'contact_request')) }} | |
@foreach($errors->all(' | |
:message | |
') as $message) {{ $message }} @endforeach | |
{{ Form:: label ('first_name', 'First Name*' )}} | |
{{ Form:: text ('first_name', '' )}} | |
{{ Form:: label ('last_name', 'Last Name*' )}} | |
{{ Form:: text ('last_name', '' )}} | |
{{ Form:: label ('phone_number', 'Phone Number' )}} | |
{{ Form:: text ('phone_number', '', array('placeholder' => '0280021xx')) }} | |
{{ Form:: label ('email', 'E-mail Address*') }} | |
{{ Form:: email ('email', '', array('placeholder' => '[email protected]')) }} | |
{{ Form:: label ('subject', 'Subject') }} | |
{{ Form:: select ('subject', array( | |
'1' => '1', | |
'2' => '2', | |
'3' => '3', | |
'4' => '4'), '1' ) }} | |
{{ Form:: label ('message', 'Message*' )}} | |
{{ Form:: textarea ('message', '')}} | |
{{ Form::reset('Clear', array('class' => 'you css class for button')) }} | |
{{ Form::submit('Send', array('class' => 'you css class for button')) }} | |
{{ Form:: close() }} | |
</body> | |
</html> | |
............................................... | |
5. Finally, we will create template to go with you email message | |
Go to ‘view/emails/’ and create new file ‘hello.blade.php’ | |
............................................... | |
<?!--This is a blade template that goes in email message to site administrator--> | |
<?php | |
//get the first name | |
$first_name = Input::get('first_name'); | |
$last_name = Input::get ('last_name'); | |
$phone_number = Input::get('phone_number'); | |
$email = Input::get ('email'); | |
$subject = Input::get ('subject'); | |
$message = Input::get ('message'); | |
$date_time = date("F j, Y, g:i a"); | |
$userIpAddress = Request::getClientIp(); | |
?> | |
<h1>We been contacted by.... </h1> | |
<p> | |
First name: <?php echo ($first_name); ?> | |
Last name: <?php echo($last_name);?> | |
Phone number: <?php echo($phone_number);?> | |
Email address: <?php echo ($email);?> | |
Subject: <?php echo ($subject); ?> | |
Message: <?php echo ($message);?> | |
Date: <?php echo($date_time);?> | |
User IP address: <?php echo($userIpAddress);?> | |
</p> | |
............................................... | |
12-22-2015(1.05 AM) TuesDay |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
did this code worked for you??
I try and try to get it to work but no luck
you can view the this link for more