wordpress网站的手机客户端的登陆实现

做大创项目时的一些经验,为了今后不忘记所以就在这里记录一下实现的过程。

android端程序

LoginActivity内容

	protected void postRequestWithHttpClient() {
		new Thread(new Runnable(){
			@Override	
			public void run(){
			    String Resultms = null;
				String lines;
				StringBuffer response = new StringBuffer("");
				HttpURLConnection connection=null;
				try{
					URL url = new URL("http://192.168.56.101/app_login.php");	//服务器php文件的位置
					 String username = inputUsername.getText().toString(); 					
				     String password = inputPassword.getText().toString();		
				     //连接服务器
					connection=(HttpURLConnection) url.openConnection();					
					//上传服务器内容
				connection.setRequestMethod("POST");				
				connection.setConnectTimeout(8000);
				connection.setDoInput(true);//允许输入		
				connection.setDoOutput(true);//允许输出				
				connection.setUseCaches(false);
   				connection.setRequestProperty("Accept-Charset", "UTF-8");
				connection.setRequestProperty("Content-type", "application/x-www-form-urlencoded");
				connection.connect();					
				DataOutputStream outStream = new DataOutputStream(connection.getOutputStream());  
				outStream.writeBytes("username="+ username+"&password="+password);
				outStream.flush();  
		        outStream.close();  		               
		        //读取响应
                BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); 
                //读数据
                while ((lines = reader.readLine()) != null) {
                      lines = new String(lines.getBytes(), "utf-8");
                      response.append(lines);
                   }
                Log.v("HelloWorldActivity", response.toString());
                reader.close();        
                //去掉response的空白字符
                Resultms=response.toString().trim();
                // 将服务器返回的结果存放到Message中
                Log.v("HelloWorldActivity",Resultms);                      
                if(Resultms.equals("error"))  
                  {  
             		message.what = PASSD_FAIL;  
                    handler.sendMessage(message); 
                   }             
                if(Resultms.equals("success"))  
                  {  
           	 		message.what = SUCCESS; 
           	 		handler.sendMessage(message); 
                  }
          //     Log.v("HelloWorldActivity", response.toString());             
                 if(Resultms.equals("empty"))  
                  {  
               		message.what = EMPTY_FAIL;  
                    handler.sendMessage(message);                           
                  }
                 //不存在用户
             //   Log.v("HelloWorldActivity",String.valueOf(Resultms.equals("nouser")));                
                if(Resultms.equals("nouser"))  
             	{  
                    message.what = NO_USER;  
                    handler.sendMessage(message);                     
          		}                   	
				} 
				catch (Exception e) {				
				e.printStackTrace();
				Log.d("HelloWorldActivity",e.toString());
					message.what=CANNOT_CONNECT;
					handler.sendMessage(message); 
				}
			finally {
				if (connection != null) {
					connection.disconnect();
				}
			}
		}
		}).start();

服务器端程序

app_conn.php

//链接数据库
 ” ” 双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。
‘ ‘ 单引号里面的不进行解释,直接输出。

app_login,php

CheckPassword($password,$pass_user);	
	if($flag){
		echo "success";
                  }   		
	else{
	echo "error";
                    }    
               }
	else{
		echo "nouser";
            }  
	}
else 
{ 
 echo "empty";
}
?> 

下面一些坑真的让我很难受

1.     在用readline()函数时,最后得到的结果会有一个空格符,弄了我好久,一直失败。经过同学的帮忙,才有成功了。通过java的黑科技,trim()。所以在进行密码或者字符串匹配的时候,要考虑一下,是否需要用trim()。该方法的作用是将空格等一些字符去掉。

2.     Wordpress 密码是加密的,要进行验证必须进行解密 关于wordpress 可以参考一下这篇博客

http://blog.csdn.net/chengfei112233/article/details/6939144/



你可能感兴趣的:(wordpress)