【发布时间】:2011-11-04 19:59:17
【问题描述】:
我通常使用 .NET,但我有一个 php 页面,它通过另一个带参数的 php 脚本调用 ajax 帖子,然后调用存储过程。但是在尝试写入 mysql 数据库时它不起作用。谁能告诉我我做错了什么,感谢您的帮助。
jquery 调用
$(document).ready(function () {
$('#ValidateTest').hide();
$('#cf_submit').click(function () {
if ($('#cf_message').val() == '' || $('# cf_name').val() == '') {
$('#ValidateTest').html('Please complete.').css({ 'color': 'red' }).show();
return;
}
var parameters = {
'name': $('#cf_name').val(),
'message': $('#cf_message').val()
}; //Use JSON to pass parameters into ajax calls
//Make ajax call to post to database
$.ajax({
type: 'POST',
url: 'SendTest.php',
datatype: 'json',
data: parameters,
success: function () {
$('#ValidateTest').html('Thank-you!').css({ 'color': 'green' }).show();
}
});
}); //End button click
}); //end jquery call
php 脚本
<?php
$con = mysql_connect('host', 'username', 'passw');
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("", $con);
mysql_query("CALL sp_CreateTestimony("$_POST['message']", "$_POST['name']")");
mysql_close($con);
?>
【问题讨论】:
-
IT 不会发布到数据库。我不确定出了什么问题。我还检查了 firebug 控制台,即使成功函数运行,它甚至看起来都不像调用 ajax 调用。
-
你从 mysql 得到什么mysql_error?另外,我假设
host之前缺少的引号只是一个错字,但您应该修复它。 -
我不知道如何阅读我得到的任何错误,但我上面的内容没有返回错误。
-
第一步是在你的ajax调用中添加一个
error函数,这样你就可以看到问题了。比如:error: function(jqXHR, textStatus, errorThrown) {alert(textStatus + ":" + errorThrown);} -
添加了错误,仍然没有,它仍然运行成功函数