I want to pass a value from my controller to a .php file which is inside public folder. This is my controller part
<?php namespace App\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class DashboardController extends Controller {
public function barChart(){
$barChart= DB::table('clients')
->select('clients.ClientName','clients.Price')
->get();
//want to pass this $barChart variable
}
Location of .php file is
/dist/chart/clients.php
I want to have this $barChart variable in clients.php file and perform further operation.
update 1: this is the view part
<div class="panel-body" id="barChart">
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$.ajax({
//url: "{{URL::asset('/dist/chart/clients.txt')}}", //this works, I saved the json_encode($bar) at client.txt file
data: [{{$bar}}], //this does not work
dataType:"JSON",
success: function(result){
google.charts.load('current',{
'packages':['corechart']
});
google.charts.setOnLoadCallback(function(){
drawChart(result);
});
}
});
function drawChart(result) {server.
var data = new google.visualization.DataTable();
data.addColumn('string' , 'ClientName');
data.addColumn('number', 'Price');
var dataArray=[];
$.each(result, function(i, obj){
dataArray.push([obj.ClientName, parseInt(obj.Price)]);
});
data.addRows(dataArray);
var barChart_options = {
title: 'hoise??',
is3D: 'true',
width: 400,
height: 300
};
var barChart = new google.visualization.BarChart(document.getElementById('barChart'));
barChart.draw(data, barChart_options);
}
});
</script>
update 2
controller update
<?php namespace App\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class DashboardController extends Controller {
public function index()
{
try{
$val=DB::connection()->getDatabaseName();
if(DB::connection()->getDatabaseName()) {
$barChart= DB::table('clients')
->select('clients.ClientName','clients.Price')
->get();
$bar = json_encode($barChart);
return view('home')
->with('bar', $bar);
}else{
$er="/connection status: database error";
return view('errors/503')->with('error',$er);
}
}catch (\Exception $e){
$er="/connection status: database error";
return view('errors/503')->with('error',$er);
}
}
public function barChart(){
$barChart= DB::table('clients')
->select('clients.ClientName','clients.Price')
->get();
echo json_encode($barChart);
}
public function create()
{
//
}
public function store()
{
//
}
public function show($id)
{
//
}
public function edit($id)
{
//
}
public function update($id)
{
//
}
public function destroy($id)
{
//
}
}