[英]How to display: “Error: no connection” in php when there's no internet connection?
因此,我正在使用php登录/注册系统,该系统可用于我的Android应用程序(与Android Studio 2.3.1一起使用)。
我已经可以通过手机注册了。 但是我发现,如果关闭wifi和我的数据,然后尝试注册一个空消息,则会显示该消息。 我想用文本填充此空消息:“错误:无连接”,但我真的不知道如何。
我的代码是:
<?php
if($_SERVER['REQUEST_METHOD']=='POST')
{
$hostname = "hostname";
$username = "username";
$password = "password";
$dbname = "databasename";
$conn = mysql_connect($hostname, $username, $password);
if (!$conn)
{ die('Could not connect: ' . mysql_error()); }
mysql_select_db($dbname, $conn);
$name = $_POST["name"];
$username = $_POST["username"];
$password = $_POST["password"];
$email = $_POST["email"];
$repeatpassword = $_POST["repeatpassword"];
if($name == '' || $username == '' || $password == '' || $email == ''){
echo 'Please fill in the missing fields';
}else{
$checkusername = mysql_query("SELECT * FROM users WHERE
username='$username'");
$checkemail = mysql_query("SELECT * FROM users WHERE email='$email'");
$testusername = mysql_fetch_array($checkusername);
$testemail = mysql_fetch_array($checkemail);
if($testemail) {
echo 'Email is already used';
}else {
if ($testusername){
echo 'Username already exists';
} else{
if ($_POST["password"] <> $_POST["repeatpassword"]) {
echo 'Passwords do not match';
}else {
if (mysql_query("INSERT INTO users (name, username, password, email) VALUES
('$name','$username', '$password','$email')")){
echo 'Successfully registered. Now try logging in.';
}else{
echo 'Oops! Please try again!';
}
}
}
}
}
mysqli_close($conn);
}
我对php及其功能,或者关于stackoverflow的经验还不是很丰富,因此我自己还无法弄清解决方案,也无法在线找到它,因为我得到的只是人无法连接到wifi,但我没有。 如果没有可用的互联网连接,我只想显示一条消息。
您应该在客户端使用javascript进行检查,因为php是服务器端的,只有在线时才会执行
<script> $.ajax({ url: "http://www.google.com", context: document.body, error: function(jqXHR, exception) { alert('offline') }, success: function() { alert('ONline') } }) </script>
如果没有连接,应该如何加载PHP页面? 您必须检查客户端是否可以访问Internet,例如通过ping服务器。
另外,如果您要处理网站输出(“用户名已存在”等),则可以检查
if(answer = "") {
//seems to have no connection
//your code goes here
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.