-4

我正在尝试使用 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();}
4

2 回答 2

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。

于 2013-07-18T18:32:41.447 回答
0

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

于 2013-07-18T18:38:53.867 回答