我擅长php,mysql编程.我写了一个php,mysql脚本,用户可以登录,注册,有配置文件等等。我只是个android程序的初学者..。我编写了一个android应用程序,它为我的站点的移动显示版本提供了一个网页视图。
我想知道:如何检查登录/不登录的用户(当用户登录成功时用php创建的会话)?(实际上,我希望在我的android应用程序中检查$_ session‘’logged‘,以显示特定的活动(如果会话存在,则显示activity1,如果不退出,则显示activity2)
重要的注意事项:我是android系统中最大的用户!
对不起我的英语(英语不是我的母语!)
我的问题解决了!你可以用这个教程.这很容易理解. Android和使用PHP、MySQL和SQLite注册
发布于 2013-05-20 06:44:42
我不是专业人士。希望我能解决你的问题。我有两种方法来做会员制度。
首先,我将创建一个像User.java这样的数据模型
-> User.java
class User{
private String username = "";
private String password = "";
// Getter and Setter..
}当用户登录时,创建一个新的用户对象。
User user = new User();
user.setPassword(...);
user.setUsername(...);当您需要通过httprequest从服务器获取信息时。您需要做的是从用户对象获取信息。
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);
?>安卓系统
if(isValid){
startActicity(....)
}https://stackoverflow.com/questions/16643795
复制相似问题