0
所以我在客戶端頁面上訪問服務器並執行了AJAX調用。但是,對於每一個提交我得到2插入語句。我無法弄清楚第二次插入是從哪裏來的。也許一組新的眼睛可以揭示它。爲什麼我的SQL插入複製
表格(.blade.php):
{!! Form::open(array('action'=>'[email protected]')) !!}
{!! Form::label('projectNameText','Project Name: ') !!}
{!! Form::text('projectNameText',null,array('name'=>'projectNameText')) !!}
{!! Form::label('projectAssigneeText','Project Assignee') !!}
{!! Form::text('projectAssigneeText',null,array('name'=>'projectAssigneeText')) !!}
{!! Form::submit('Submit',array('id'=>'submitButton')) !!}
{!! Form::close() !!}
PHP控制器:
$projectName = $request->input('projectNameText');
$projectAssignee = $request->input('projectAssigneeText');
$date = date("Y-m-d");
$db = $this->openDatabaseDefault();
$sql = "INSERT INTO database.table(PRJ_ProjectId,PRJ_ProjectName,PRJ_ProjectAssignee,PRJ_ProjectStart,
PRJ_ProjectLastActive,PRJ_ProjectStatus,PRJ_ProjectTotalUsers,PRJ_EmailViews,PRJ_WebsiteViews,
PRJ_ProjectTotalReports) VALUES (null,'$projectName','$projectAssignee','$date','$date','Inactive',0,0,0,0);";
if(!$projects = $db->query($sql)) {
echo "Sorry, the website is experiencing technical difficulties.";
echo "Error: Our query failed to execute and here is why: \n";
echo "Query: " . $sql . "\n";
echo "Errno: " . $db->errno . "\n";
echo "Error: " . $db->error . "\n";
exit;
}
$db->close();
return redirect()->to('http://localhost:8888/generateEmails');
AJAX:
$('document').ready(function() {
$('#submitButton').click(function(e) {
$.ajaxSetup({
headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') }
});
console.log("clicked");
var projectName = $('#projectNameText').val();
var projectAssignee = $('#projectAssigneeText').val();
$.ajax({
method: "POST",
//url: "http://localhost:8888/projects/create",
data: {projectNameText: projectName, projectAssigneeText: projectAssignee}
})
});
});
任何在此點認識。
在JS控制檯多少點擊消息你每次點擊看? 1或2? – Shadow
只有一個點擊通過。有一次,我甚至在控制器上發佈了一條Else語句,以查看If語句是否雙重執行。它只回響一次。 – Trojan404
你調用'return redirect() - >('http:// localhost:8888/generateEmails');'在ajax相關的php文件中?對我來說這部分看起來很奇怪 – Alex