$.ajax({
type: "post",
url: 'http://127.*.*.*/test.php',
data: 'name=john',
dataType: "json",
})
$a=$_POST[name];
$con=mysqli_connect('localhost', 'root', '******');
mysqli_select_db($con,'test);
$sql="INSERT INTO testsjb (name) values ($a)";
mysqli_query($con,$sql);
$uid=mysqli_insert_id($con);
echo $uid;
经测试$a如果是普通字符串就可以插入成功,一旦换成POST就不行了~
data: 'name=john'
这个不是json
应该是 name:'john'
看下$_POST[name];里面是什么,是否有特殊字符,
$sql="INSERT INTO testsjb (name) values ('" + $a +"')";
这样看看
dataType限制为json了,所以造成
$_POST[name];
为空了
你试试json字符串格式对不,按道理说,json不应该是下面这样的么?
data: { 'name':'john'},
不行的话,试试
data: '{ 'name':'john'}',
注意别使用中文的单引号和逗号,冒号
print_r($_POST) 先打印所有post 看看
你试试
data: { 'name':'john'},
不行的话,试试
data: '{ 'name':'john'}',
注意别使用中文的单引号和逗号,冒号
然后下面这样,
$a = $_POST['name'];
大兄弟:
$a=$_POST[name];
改为
$a=$_POST["name"];
dataType的原因
符号,格式有问题,还有中文支持
$.ajax({
cache:false,
type:"post",
url:"test.php",
datatype:'json',
data:'name=john',
success:function(data) {
alert(data);
}
});
php里面使用
print_r($_POST);
确保$_POST[name]这个有值,可能是没有取到值;
data换成这个
data: { 'name':'john'}
data: 'name=john' 这是字符串啊,哪里是json格式
data: 'name=john' 你编写有误,经过调试后,在试下,哪有直接入库的。都是经过处理后,才会入库的。