Usar un FORM > SELECT para cambiar la tabla de la consulta
Publicado por Sebastian (8 intervenciones) el 18/06/2019 23:30:15
Saludos, me encuentro aprendiendo Laravel y como ejercicio estoy creando unas graficas a partir de MySQL. Mi pregunta surge cuando necesito cambiar la tabla que me esta trayendo los datos que dibujan los gráficos, si tuviera varias tablas con la misma estructura, pero diferentes datos y un FORM con un SELECT podría hacer que los datos cambien de acuerdo a la tabla que seleccione. La pregunta concretamente es ¿Puedo poner un input en la vista y pasar como variable la tabla que quiero usar al controlador? o si no es posible ¿Cómo puedo hacerlo?
Vista (index.blade.php):
Controlador (BurnoutController.php)
Vista (index.blade.php):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
@extends('layouts.main')
@section('contenido')
<section class="contenido mx-auto">
<div id="presencia-burnout" class="mx-auto grafico"></div>
<script type="text/javascript">
// Build the chart
Highcharts.chart('presencia-burnout', {
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false,
type: 'pie'
},
title: {
text: 'Presencia Burnout'
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: false
},
showInLegend: true
}
},
series: [{
name: 'Total',
colorByPoint: true,
data: [{
name: 'Con Burnout',
y: {{$conBurnout}},
sliced: false,
selected: false
},
{
name: 'Sin Burnout',
y: {{$sinBurnout}},
sliced: false,
selected: false
}]
}]
});
</script>
</section>
@endsection
Controlador (BurnoutController.php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Input;
class BurnoutController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
//
$totalEncuestas = DB::table('lime_survey_883599')
->count('id');
$conBurnout = DB::table('lime_survey_883599')
->where([
['883599X3X77','=','cansancio emocional alto'],
['883599X3X78','=','despersonalizacion alta'],
['883599X3X79','=','realizacion baja']
])
->count('id');
$sinBurnout = DB::table('lime_survey_883599')
->where([
['883599X3X77','=','cansancio emocional bajo'],
['883599X3X78','=','despersonalizacion baja'],
['883599X3X79','=','realizacion alta']
])
->count('id');
return view('burnout.index', [
'conBurnout' => $conBurnout,
'sinBurnout' => $sinBurnout
]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}
Valora esta pregunta


0