Rumah > pembangunan bahagian belakang > tutorial php > 为什么jQuery的$.get()收不到php的返回信息?

为什么jQuery的$.get()收不到php的返回信息?

WBOY
Lepaskan: 2016-07-06 13:54:12
asal
1314 orang telah melayarinya

HTML部分

<code>    <p>姓名<input type="text" name="name"></p>
    <p>性别<input type="radio" name="sex" value="m">男<input type="radio" name="sex" value="f">女</p>
    <p>手机号码<input type="text" name="mobile"></p>
    <button id="sub">提交</button>
    <script type="text/javascript">
        $("#sub").click(function() {
            var name = $("input[name='name']").val();
            var sex = $("input[name='sex']:checked").attr('value');
            var mobile = $("input[name='mobile']").val();
            if (name&&sex&&mobile) {
                alert(name+sex+mobile);
                $.get('user_info_save.php',{name: name,sex: sex,mobile: mobile},function(data){console.log(data);});
            }
            else{alert("信息未填写完整");}
        });
    </script></code>
Salin selepas log masuk
Salin selepas log masuk

服务器的php

<code>$db=mysqli_connect($host,$user,$password,$database);
if($db){
        $db->query("set names utf8");//设置UTF-8编码(JSON的唯一编码)
}else{
        echo 'DATABASE_CONNECTION_DIE';//数据库连接失败
        exit;
}
$name = $_REQUEST['name'];
$sex = $_REQUEST['sex'];
$mobile = $_REQUEST['mobile'];
$sql = "insert `customer`(`name`,`sex`,`mobile`) values('".$name."','".$sex."','".$mobile."')";
$result=$db->query($sql);
echo "ok";
</code>
Salin selepas log masuk
Salin selepas log masuk

结果是数据库已经录入数据了,但是function似乎无效了,到底为什么呢?

这个问题已被关闭,原因:无法获得确切结果的问题

回复内容:

HTML部分

<code>    <p>姓名<input type="text" name="name"></p>
    <p>性别<input type="radio" name="sex" value="m">男<input type="radio" name="sex" value="f">女</p>
    <p>手机号码<input type="text" name="mobile"></p>
    <button id="sub">提交</button>
    <script type="text/javascript">
        $("#sub").click(function() {
            var name = $("input[name='name']").val();
            var sex = $("input[name='sex']:checked").attr('value');
            var mobile = $("input[name='mobile']").val();
            if (name&&sex&&mobile) {
                alert(name+sex+mobile);
                $.get('user_info_save.php',{name: name,sex: sex,mobile: mobile},function(data){console.log(data);});
            }
            else{alert("信息未填写完整");}
        });
    </script></code>
Salin selepas log masuk
Salin selepas log masuk

服务器的php

<code>$db=mysqli_connect($host,$user,$password,$database);
if($db){
        $db->query("set names utf8");//设置UTF-8编码(JSON的唯一编码)
}else{
        echo 'DATABASE_CONNECTION_DIE';//数据库连接失败
        exit;
}
$name = $_REQUEST['name'];
$sex = $_REQUEST['sex'];
$mobile = $_REQUEST['mobile'];
$sql = "insert `customer`(`name`,`sex`,`mobile`) values('".$name."','".$sex."','".$mobile."')";
$result=$db->query($sql);
echo "ok";
</code>
Salin selepas log masuk
Salin selepas log masuk

结果是数据库已经录入数据了,但是function似乎无效了,到底为什么呢?

if 里面 && 是不是要有空格 ?
这样呢?
name && sex && mobile

还有,$.get有四个参数,一般最后的那个参数设置为json
你php文件中相应也要改
echo json_encode(array('status' => 1, 'info' => 'ok'));

打开控制台看看返回的什么结果

<code>$.get('user_info_save.php',{name: name,sex: sex,mobile: mobile},function(data){console.log(data);},'JSON')</code>
Salin selepas log masuk

申明返回的数据类型

先看看后台有没有返回数据,然后再看看PHP后台返回的数据是不是json数据,然后百度下$.get的用法,然后看看有没有报什么提示信息,一步一步的检测,或者你直接调试代码,监测看看是哪里的问题,单纯的看你发的代码,很难找准问题的所在,建议使用Phpstorm调试下看看

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan