我擅长PHP, mysql编程…我写了一个php,mysql脚本,用户可以登录,注册,有个人资料和这么多…我只是android编程的初学者…我写了一个android应用程序,有一个webview显示我的网站的移动版本..
i want know:我如何检查用户登录/或不(会话创建与PHP当用户登录成功)?(真的我想检查,例如$_SESSION['logged']在我的android应用程序中显示一个特定的活动(如果会话存在,显示activity1,如果不退出显示activity2)
重要提示:我是一个更大的在android!
对不起我的英语(英语,不是我的母语!)
我的问题解决了!您可以使用本教程......这是非常非常容易理解的……Android登录和注册PHP, MySQL和SQLite
我不是专业的。希望我能解决你的问题。我有两种方法来做成员系统。
首先,我将创建一个类似User.java
的数据模型-> User.java
class User{
private String username = "";
private String password = "";
// Getter and Setter..
}
当用户登录时,创建一个新的user对象。
User user = new User();
user.setPassword(...);
user.setUsername(...);
当您需要通过httprequest从服务器获取信息时。你需要做的是从User对象
中获取信息 Url url = new Url("http://your.server/index.php?username=" + user.getUsername() + "&password=" + user.getPassword());
HttpURLRequest conn = url.openConnection();
.......
进一步信息。我通常在登录过程中保存cookie。
ArrayList<String> cookiesList = new ArrayList<String>();
Map<String, List<String>> mHeaderMap = mConnection.getHeaderFields();
String headername = "";
for(int i = 0; (headername = mConnection.getHeaderFieldKey(i)) != null; i++){
if(headername.equals("Set-Cookie")){
cookiesList.add(mConnection.getHeaderField(i));
}
}
然后如果您发送另一个登录请求。您再次使用cookie并将其发送到服务器。
mConnection.setRequestProperty("Cookie", cookie);
更多信息请点击此处。
服务器端
<?php
session_start();
if($_GET.count() > 0)
$username = $_GET['username'];
if($_GET.count() > 0)
$password = $_GET['password'];
$arr = array();
if($_SESSION['username'] == $username && $_SESSION['password'] == password){
$arr = array("isValid" => true, "message" => "");
}else{
$arr = array("isValid" => false, "message" => "");
}
echo json_encode($arr);
?>
android上的if(isValid){
startActicity(....)
}