点击保存按钮后,我试图在数据库中写入一些数据。
在我的开发过程中,我在我的视图中使用PHP代码在我的数据库中成功编写,但PHP代码在页面加载时运行,而不是在我的按钮被单击时运行。
我所做的是重定向到我的控制器中调用函数的地址,然后重定向到登录页面。
这是我的控制器代码:
<?php
namespace App\Http\Controllers;
use JavaScript;
use Illuminate\Support\Facades\DB;
class bus_confirmationController extends Controller{
public function test(){
$results = DB::select('select bus_direction from bus_line where card_uid = "0xcb009299"', array(1));
JavaScript::put([
'selectionData' => $results
]);
return view('bus_confirmation');
}
public function postRequest(){
DB::table('bus_line')->insert(
array('ID' => '', 'bus_direction' => '77t', 'card_uid' => '0xcb009299')
);
return view('home');
}
}
以下是我的观点代码:
[...]
<div class="panel panel-default" id="save" onclick="savedata()" >
SAVE
</div>
[...]
<script type="text/javascript">
function savedata() {
var toReturn = [];
var data = ["88t", "85t","77t","redLinet"];
for (i = 0; i < data.length; i++) {
var image = document.getElementById(data[i]).style.visibility;
if (image==="visible" || image===""){
toReturn.push([data[i], "visible"]);
}
}
window.location = 'Bus_confirmationSend';
//Where I used to do my request to write my data
/*DB::table('bus_line')->insert(
array('ID' => '', 'bus_direction' => '88t', 'card_uid' => '0xcb009299')
);*/
console.log(toReturn);
}
</script>
以下是web.php中的内容
Route::get('/bus_confirmationSend', 'bus_confirmationController@postRequest');
我知道我与数据库的联系正在起作用&#39; test&#39;从控制器工作,我可以从我的数据库中检索数据。我也知道我第一次重定向到&#39; bus_directionController&#39;作为第二次重定向到家庭&#39;作品。
我错过了什么吗?我真的不明白这里可能出现的问题。
答案 0 :(得分:1)
可能是因为您有window.location = 'Bus_confirmationSend';
,但您的路线以小写字母b开头