我有一个包含表单的模式,当我尝试使用 ajax 发送我的数据时失败了。这是我的控制器:
public function server()
{
$name = $_REQUEST['nom'];
$ip = $_REQUEST['ip'];
$ftp = $_REQUEST['ftp'];
$user = $_REQUEST['user'];
$pass = $_REQUEST['pass'];
$sql = "INSERT INTO servers (id, name, ip, ftp, user, pass, active) VALUES (NULL, '$name', '$ip', '$ftp', '$user', '$pass', '1');";
echo $sql;
$this->db->query($sql);
}
从我的浏览器控制台我没有错误。另外,当我试图展示发生了什么时,就像是在告诉我一切都好。
这是我的观点:
<!-- BEGIN FORM MODAL MARKUP -->
<div class="modal fade" id="newserver" tabindex="-1" role="dialog" aria-labelledby="newserverLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="newserverLabel">Ajoute nouveau serveur :</h4>
</div>
<form class="form-horizontal" role="form" method="get" action="" id="newserverfrm" >
<div class="modal-body">
<div class="form-group">
<div class="col-sm-3">
<label for="nom" class="control-label">Nom</label>
</div>
<div class="col-sm-9">
<input type="text" name="nom" id="nom" class="form-control" placeholder="Nom">
</div>
</div>
<div class="form-group">
<div class="col-sm-3">
<label for="ip" class="control-label">IP</label>
</div>
<div class="col-sm-9">
<input type="text" name="ip" id="ip" class="form-control" placeholder="IP">
</div>
</div>
<div class="form-group">
<div class="col-sm-3">
<label for="ftp" class="control-label">FTP</label>
</div>
<div class="col-sm-9">
<input type="text" name="ftp" id="ftp" class="form-control" placeholder="ex : ftpback-rbx{X}-{XX}.ovh.net">
</div>
</div>
<div class="form-group">
<div class="col-sm-3">
<label for="user" class="control-label">Nom d'utilisateur</label>
</div>
<div class="col-sm-9">
<input type="text" name="user" id="user" class="form-control" placeholder="ex : nsXXXXXX.ip-YY-YY-YY.eu">
</div>
</div>
<div class="form-group">
<div class="col-sm-3">
<label for="pass" class="control-label">Mot de passe</label>
</div>
<div class="col-sm-9">
<input type="password" name="pass" id="pass" class="form-control" placeholder="Mot de passe">
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Annule</button>
<input type="submit" class="btn btn-primary" name="newserver" value="Ajoute" />
</div>
</form>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
<!-- END FORM MODAL MARKUP -->
</div><!--end #base-->
<!-- END BASE -->
<!-- BEGIN JAVASCRIPT -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="assets/js/libs/jquery/jquery-migrate-1.2.1.min.js"></script>
<script src="assets/js/libs/bootstrap/bootstrap.min.js"></script>
<script src="assets/js/libs/spin.js/spin.min.js"></script>
<script src="assets/js/libs/autosize/jquery.autosize.min.js"></script>
<script src="assets/js/libs/nanoscroller/jquery.nanoscroller.min.js"></script>
<script src="assets/js/core/source/App.js"></script>
<script src="assets/js/core/source/AppNavigation.js"></script>
<script src="assets/js/core/source/AppOffcanvas.js"></script>
<script src="assets/js/core/source/AppCard.js"></script>
<script src="assets/js/core/source/AppForm.js"></script>
<script src="assets/js/core/source/AppNavSearch.js"></script>
<script src="assets/js/core/source/AppVendor.js"></script>
<script src="assets/js/core/demo/Demo.js"></script>
<!-- END JAVASCRIPT -->
<script type="text/javascript">
$(document).ready(function(){
$('form.newserverfrm').on('submit', function(form){
form.preventDefault();
$.post('/add/server', $('form.newserverfrm').serialize(), function(data){
alert(data);
});
});
});
</script>
你可以改变:
$.post('/add/server', $('form.newserverfrm').serialize(), function(data){...
到
$.post('<?php site_url("add/server") ?>', $('form.newserverfrm').serialize(), function(data){...
请用这些代码替换您的代码
查看页面
!-- 开始表单模态标记 --> × Ajoute nouveau serveur : 名义 知识产权 文件传输协议 名义上的使用人 过时 年轮
<!-- BEGIN JAVASCRIPT -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="assets/js/libs/jquery/jquery-migrate-1.2.1.min.js"></script>
<script src="assets/js/libs/bootstrap/bootstrap.min.js"></script>
<script src="assets/js/libs/spin.js/spin.min.js"></script>
<script src="assets/js/libs/autosize/jquery.autosize.min.js"></script>
<script src="assets/js/libs/nanoscroller/jquery.nanoscroller.min.js"></script>
<script src="assets/js/core/source/App.js"></script>
<script src="assets/js/core/source/AppNavigation.js"></script>
<script src="assets/js/core/source/AppOffcanvas.js"></script>
<script src="assets/js/core/source/AppCard.js"></script>
<script src="assets/js/core/source/AppForm.js"></script>
<script src="assets/js/core/source/AppNavSearch.js"></script>
<script src="assets/js/core/source/AppVendor.js"></script>
<script src="assets/js/core/demo/Demo.js"></script>
<!-- END JAVASCRIPT -->
<script type="text/javascript">
功能测试() {
$.ajax({
type : 'POST',
url : 'server.php',
data : { },
async : false,
success : function(data)
{
alert(data);
}
});
}
</script>
你应该采取行动
即 ,
改变
$.post('/add/server', $('form.newserverfrm').serialize(), function(data){...
到
$.post('server', $('form.newserverfrm').serialize(), function(data){...