如何解决如何在安卓浏览器如计算机浏览器上启用网络应用登录
这只是一个一般性问题,因为我找不到任何答案(或为 google 想出正确的关键字)。问题是我最近刚刚在我的网站上启用了谷歌登录,它在我的笔记本电脑浏览器上就像一个魅力一样,但由于某种原因在我的安卓手机上它不起作用。就像我可以看到该按钮一样,但是当我在手机上按下它时,它会将我带到另一个浏览器选项卡,然后它关闭了,什么也没有发生。
<div class="btn mr-16pt g-signin2" data-onsuccess="onSignIn"></div>
<script>
function onSignIn(googleUser) {
var profile = googleUser.getBasicProfile();
if (profile) {
$.ajax({
type: 'POST',url: 'login_g.PHP',data: {
id: profile.getId(),name: profile.getName(),email: profile.getEmail(),image: profile.getimageUrl()
}
}).done(function(data) {
console.log(data);
if (data == 1) {
window.location.href = '../profile';
} else {
location.href = "../register/step-2.PHP?id=" + profile.getId();
}
}).fail(function() {
alert("Posting Failed.");
});
}
}
</script>
这是唱歌的代码,它会带您进入个人资料,或者如果您是新人,那么它会保存您的详细信息并带您进入注册过程的其余部分。
$email = $_POST['email'];
$name = $_POST['name'];
$image = $_POST['image'];
$id = $_POST['id'];
$stu_id = $_POST['id'];
$pwdCheck = "SELECT * FROM `login` WHERE email=?";
$stmt = MysqLi_stmt_init($conn);
if(MysqLi_stmt_prepare($stmt,$pwdCheck)){
MysqLi_stmt_bind_param($stmt,"s",$email);
MysqLi_stmt_execute($stmt);
$result = MysqLi_stmt_get_result($stmt);
$row = MysqLi_fetch_array($result);
MysqLi_stmt_close($stmt);
if (MysqLi_num_rows($result) > 0) {
include "../session/session.PHP";
$_SESSION['email'] = $email;
$_SESSION['token'] = $token;
$_SESSION['image'] = $image;
echo 1;
}else{
$login = MysqLi_query($conn,"SELECT * FROM `login` WHERE email='$email'");
if (!MysqLi_num_rows($login) > 0) {
$reg = "INSERT INTO `login`(`name`,`stu_id`,`email`,`google_id`) VALUES ('$name','$id','$email','$id')";
$query = MysqLi_query($conn,$reg);
}
}
}
您可以避免使用变量名称(如 pwdcheck),因为我从当前登录系统中选择了这些名称并且没有更改它们
让我知道我在这里做错了什么,我的意思是它在计算机浏览器上运行良好,但在移动设备上运行得很好。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。