Thứ Bảy, 12 tháng 1, 2013

một form login đơn giản

có vẻ như bài này không có liên quan gì đến bài trước cả, và cũng đừng có nghĩ là tôi đang chuyển qua nói về lập trình web. Chỉ là có những thứ cần thiết cho quá trình lập trình mà chúng ta cần biết. Chúng ta sẽ có một trang như thế này, code của nó tôi sẽ post cuối bài: http://holyeyed.99k.org/game/reg.html http://holyeyed.99k.org/game/login.html http://holyeyed.99k.org/game/get.html http://holyeyed.99k.org/game/send.html trong một lúc chúng ta sẽ phải gửi dữ liệu từ ứng dụng lên server đồng thời cũng nhận từ server về thông tin về những người chơi khác. Chúng ta sẽ tạo một form đăng nhập đơn giản, còn phần đăng kí các bạn tự viết nhé. bây giờ chúng ta hãy chú ý tới midlet của chúng ta. trong một lúc chúng ta sẽ phải gửi dữ liệu từ ứng dụng lên server đồng thời cũng nhận từ server về thông tin về những người chơi khác. Chúng ta sẽ tạo một form đăng nhập đơn giản, còn phần đăng kí các bạn tự viết nhé. File mog.java của chúng ta sẽ như thế này: mog.java
C:\Users\thanhliem\Documents\NetBeansProjects\mog\src\mog.java
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.*;
import java.io.*;
import javax.microedition.io.*;

public class mog extends MIDlet implements Runnable{
    //tạo biến nhận giá trị của user và pass
    String user,pass;
    //id là giá trị của trả về ứng với mỗi user có một số id riêng biệt
    int id,mode=0;
public void startApp(){
    //chúng ta cho hiển thị form login là một class mở rộng từ class Form
Display.getDisplay(this).setCurrent(new login(this));}
public void destroyApp(boolean t){}
public void pauseApp(){}
//hàm cv này dùng để nhận giá trị từ login.java sau khi đã thực hiện nhấn lệnh ok 
public void cv(String user,String pass){
    this.user=user;
    this.pass=pass;
    //hàm send trả về dữ liệu lấy từ server là id nhưng có kèm theo mã BOM của utf-8
   String st= send("http://holyeyed.99k.org/game/server.php","submit=2&user="+user+"&pass="+pass);
   if(st!=null)
Display.getDisplay(this).setCurrent(new canvas());}
public void run(){
switch(mode){
    case 1:
break;
    case 2:
break;}}
//hàm send dùng thực hiện kết nối, nhận 2 tham số là địa chỉ web và các thông số gửi đi
String send(String add,String para){
try{
HttpConnection hc=(HttpConnection)Connector.open(add);
//set method giống với form trên server
hc.setRequestMethod(HttpConnection.POST);
//khi method là POST thì phải có content-type
hc.setRequestProperty("Content-Type", 
           "application/x-www-form-urlencoded");
//phần sau là đọc và trả về chuỗi
OutputStream os=hc.openOutputStream();
os.write(para.getBytes());
InputStream is=hc.openDataInputStream();
int c;
StringBuffer sb=new StringBuffer();
while((c=is.read())!=-1){sb.append((char)c);}
is.close();
os.close();
hc.close();
System.out.println(sb.toString());
return sb.toString();
}catch(Exception e){}
return null;}}
Đó là trong mog.java, còn một file nữa đó là login.java, đây là class mở rộng từ Form và được tạo dựng sẵn có các field và command theo ý mình, khi sử dụng chỉ cần cho khởi tạo và hiện thị, như các bạn thấy ở trong class mog ở trên: login.java
C:\Users\thanhliem\Documents\NetBeansProjects\mog\src\login.java
import javax.microedition.lcdui.*;
//class login là một Form được tạo dựng sẵn
public class login extends Form implements CommandListener {
    //nó chứa 2 textfield và một command
    TextField user=new TextField("use","",15,0);
    TextField pass=new TextField("pass","",15,TextField.PASSWORD);
    Command ok=new Command("ok",Command.OK,2);
    mog m;
public login(mog m){
    //do mở rộng từ Form nên khi khởi tạo phải cho nó tiêu đề qua hàm super
    super("đăng nhập");
this.m=m;
//thêm và các field và command
append(user);
append(pass);
addCommand(ok);
setCommandListener(this);}    
public void commandAction(Command c,Displayable d){
    //khi nhấn phím ok thì nó sẽ chạy hàm cv trong class mog.java và nhận các giá trị từ các field
if(c==ok){m.cv(user.getString(),pass.getString());}}
}

• Do càng về sau bài càng phức tạp nên tôi sẽ nói ít thôi, hãy đọc là chính và rồi sẽ hiểu. • Như trên là chúng ta đã tạo ra một ứng dụng login đơn giản với việc đăng kí trên server rồi. http://holyeyed.99k.org/function/up/mog-74430.zip
http://holyeyed.99k.org/function/up/mog-38525.jar
source html

Không có nhận xét nào: