使用Ajax插入记录

时间:2013-07-18 18:27:36

标签: php jquery ajax

我试图使用jquery发布数据进行插入但不能这样做变量正确地计算值但我不认为这样php页面正在工作之后,我不认为php页面有任何错误。 这是我的代码

<script>
function print_this(){

var nit =$('#a').val();
var reg = $('#b').val();
var c = $('#csa').val();
var d = $('#dc').val();
var e = $('#Ee').val();
var f = $('#Er').val();
var w = $('#w').val();
var h = $('#w').val();
var i = $('#i').val();
PostValue(a,b,c,d,e,f,w,h,i)}

function PostValue(a,b,c,d,e,f,w,h,i){
 $.ajax({
type: "POST",
url: "print.php",
data: {a:a,b:b,c:c,d:d,e:e,f:f,w:w,h:h,i:i},
success:function(data){
$("#print").printThis();
}
})

}

这是我的php页面

$conn = mysql_connect('localhost','','') or die ("Connection Problem");
mysql_select_db("") or die ("Database Problem");
function print_this(){
$a = $_POST['a'];
$b = $_POST['b'];
$c = $_POST['c'];
$d = $_POST['d'];
$query = "select * from print where a = $a and b = $b and c = $c and d = $d";
$result = mysql_query($query);
if(mysql_num_rows($result) == 0)
{
 $query = "INSERT INTO print (id ,a,b,c,d,e,f,w,h,i) VAUES 
(NULL, '".$_POST['a']."','".$_POST['b']."','".$_POST['c']."','".$_POST['d']."','".$_POST['e']."','".$_POST['f']."','".$_POST['w']."','".$_POST['h']."','".$_POST['i']."')";
$result = mysql_query($query) or die();}

2 个答案:

答案 0 :(得分:0)

您需要在ajax帖子上设置内容类型并将JSON字符串化。

$.ajax({
    type: "POST",
    url: "print.php",
    contentType: "application/json",
    data: JSON.stringify({a:a,b:b,c:c,d:d,e:e,f:f,w:w,h:h,i:i}),
    success: function (data) {
        $("#print").printThis();
    }
})

如果您支持旧浏览器,请务必添加JSON.js

答案 1 :(得分:0)

我注意到,当您向表中插入数据时,您将数据视为varchar,但是当您想要选择时,您没有将值放在单引号之间,有关详细信息,请在第一个mysql_query()之后添加,mysql_error ()函数来调试你的脚本。