Reputation: 73
I am new to Laravel. I am trying to insert some data into the table of the database at a particular time, say 12 am. What I have tried is:
QuoteController.php
use Illuminate\Http\Request;
use Anomaly\Streams\Platform\Http\Controller\ResourceController;
use GuzzleHttp\Client;
use App\Rating;
use DB;
//use Illuminate\Support\Facades\DB;
class QuoteController extends ResourceController
{
public function sendMessage(Request $request)
{
$current_date = date('Y-m-d H:i:s');
$from_id = $request->input('from_id');
$to_id = $request->input('to_id');
$msg = $request->input('msg');
$from_name = $request->input('from_name');
$to_name = $request->input('to_name');
DB::insert('insert into default_user_messages (from_id,to_id,message,from_name,to_name,time) values (?, ?, ?, ?, ?, ?)', [$from_id, $to_id, $msg, $from_name, $to_name, $current_date]);
return view('templates::pagetwigs/chatmessage')->with('message', 'Message send successfully!');
}
}
chatmessage.blade.php
<form method="post" action="/sendMessage" id="reviewForm">
<input type="hidden" name="from_id" value="" 1"/>
<input type="hidden" name="from_name" value="fdf"/>
<input type="hidden" name="to_id" value="2"/>
<input type="hidden" name="to_name" value="sgg"/
<div class="form-group row">
<div class="col-md-12">
<p id="c1" class="p-color" onclick="copyText('c1')">
Lorem Epsum?
</p>
<p id="c2" class="p-color" onclick="copyText('c2')">
dolor sit amet?
</p>
<textarea class="form-control" id="select-text" name="msg"></textarea>
</div>
</div>
<div class="form-group row">
<input type="submit" name="send" value="Send">
</div>
</form>
I want to insert this form data to table at a scheduled time of 12 am .How to do so?
Upvotes: 0
Views: 1407
Reputation: 900
You can use laravel Task Scheduling. When using the scheduler, only a single cron entry is needed on your server. Your task schedule is defined in the app/Console/Kernel.php file's schedule() method.
you can write your code inside shedule function
protected function schedule(Schedule $schedule)
{
$schedule->call(function () {
//DB Operation
})->dailyAt('24:00');
}
Upvotes: 1