电子邮件ID和电话号码未经验证

时间:2014-10-14 09:10:16

标签: android validation

嗨在我的应用程序中检查电子邮件ID和电话号码的验证,但它没有验证两者,只是将其保存到数据库中。 我想查看电子邮件ID和电话号码,如果它们都正确我想要进行下一个流程 任何人都可以帮助我

ContactUs.java

public class ContactUs extends Activity 
{
    EditText fname1,lname1,mobile1,altmob1,email1,comment1;
    String data="";
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.contactus);        
        fname1=(EditText) findViewById(R.id.fname);

        lname1=(EditText) findViewById(R.id.lname);
        mobile1=(EditText) findViewById(R.id.mobile);
        altmob1=(EditText) findViewById(R.id.altno);
        email1=(EditText) findViewById(R.id.email);
        comment1=(EditText) findViewById(R.id.coment);

        Button Send = (Button) findViewById(R.id.Send); 

        Send.setOnClickListener(new OnClickListener() {             
            public void onClick(View v)
            {
                 String fname = fname1.getText().toString();
                 String lname = lname1.getText().toString(); 
                 String mobile = mobile1.getText().toString();
                 String altmob = altmob1.getText().toString(); 
                 String email = email1.getText().toString();
                 String comment = comment1.getText().toString(); 

                if(fname.equals(""))
                {           
                    fname1.setError( "Please Enter First Name" );
                }
                else if(lname.equals(""))
                {           
                    lname1.setError( "Please Enter Last Name" );
                }               
                else if(mobile.equals(""))
                {           
                    mobile1.setError( "Please Enter Mobile No." );
                    isValidMobile(mobile);
                }
                else if(altmob.equals(""))
                {           
                    altmob1.setError( "Please Enter Altenative Mobile No." );
                }
                else if(email.equals(""))
                {           
                    email1.setError( "Please Enter EmailId" );
                    isValidMail(email);

                }
                else if(comment.equals(""))
                {           
                    comment1.setError( "Please Enter Your Comments here" );
                }
                else
                {

                    try{

                        String queryString ="fname="+ fname
                                 +"&lname="+lname+"&mobile="+mobile+ "&altmob="+altmob+"&email="+email+"&comment="+comment;
                    data = DatabaseUtility.executeQueryPhp("Contactform",queryString);
                    fname1.setText("");
                    lname1.setText("");
                     mobile1.setText("");
                     altmob1.setText("");
                     email1.setText("");
                     comment1.setText("");
                    Toast.makeText(
                            ContactUs.this,
                            "Message:Records Saved Sucessfully",

                            Toast.LENGTH_SHORT).show();
                    }
                     catch (Exception e) {
                            e.printStackTrace();
                        }

                }   
            }           
        });
    }
    private boolean isValidMail(String email) 
    {
        boolean check;
        Pattern p;
        Matcher m;

        String EMAIL_STRING = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
                + "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";

        p = Pattern.compile(EMAIL_STRING);

        m = p.matcher(email);
        check = m.matches();

        if(!check)
        {
            email1.setError("Not Valid Email");
        }
        return check;
    }
    private boolean isValidMobile(String mobile) 
    {
        boolean check;
        if(mobile.length() < 6 || mobile.length() > 13)
        {
            check = false;
            mobile1.setError("Not Valid Number");
        }
        else
        {
            check = true;
        }
        return check;
    }

3 个答案:

答案 0 :(得分:4)

有包含属性电子邮件的edittext框

机器人:的inputType = “textEmailAddress”

代码

 else if(mobile.equals(""))
                {           
                    mobile1.setError( "Please Enter Mobile No." );
                    isValidMobile(mobile);
                }

检查电子邮件是否为空,然后转到isValidMobile

所以使用

 else if(mobile.equals(""))
                {           
                    mobile1.setError( "Please Enter Mobile No." );

                }
else if(!isValidMobile(mobile)){
 // do somting
}

和电子邮件类似

答案 1 :(得分:0)

请尝试检查电子邮件:

public final static boolean isValidEmail(CharSequence target) {
    if (target == null) {
        return false;
    } else {
        return android.util.Patterns.EMAIL_ADDRESS.matcher(target).matches();
    }
}

电话号码检查:

public final static boolean isValidPhone(CharSequence target) {
    if (target == null) {
        return false;
    } else {
        return android.util.Patterns.PHONE.matcher(target).matches();
    }
}

请使用as:

更新您的代码
    public class ContactUs extends Activity {
    EditText fname1, lname1, mobile1, altmob1, email1, comment1;
    String data = "";

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.contactus);
        fname1 = (EditText) findViewById(R.id.fname);

        lname1 = (EditText) findViewById(R.id.lname);
        mobile1 = (EditText) findViewById(R.id.mobile);
        altmob1 = (EditText) findViewById(R.id.altno);
        email1 = (EditText) findViewById(R.id.email);
        comment1 = (EditText) findViewById(R.id.coment);

        Button Send = (Button) findViewById(R.id.Send);

        Send.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                String fname = fname1.getText().toString().trim();
                String lname = lname1.getText().toString().trim();
                String mobile = mobile1.getText().toString().trim();
                String altmob = altmob1.getText().toString().trim();
                String email = email1.getText().toString().trim();
                String comment = comment1.getText().toString().trim();

                if (fname.length() != 0) {
                    if (lname.length() != 0) {
                        if (mobile.length() != 0 && isValidMobile(mobile)) {
                            if (altmob.length() != 0 && isValidMobile(altmob)) {
                                if (email.length() != 0 && isValidMail(email)) {
                                    if (comment.length() != 0) {

                                        try {

                                            String queryString = "fname="
                                                    + fname + "&lname=" + lname
                                                    + "&mobile=" + mobile
                                                    + "&altmob=" + altmob
                                                    + "&email=" + email
                                                    + "&comment=" + comment;
                                            data = DatabaseUtility
                                                    .executeQueryPhp(
                                                            "Contactform",
                                                            queryString);
                                            fname1.setText("");
                                            lname1.setText("");
                                            mobile1.setText("");
                                            altmob1.setText("");
                                            email1.setText("");
                                            comment1.setText("");
                                            Toast.makeText(
                                                    ContactUs.this,
                                                    "Message:Records Saved Sucessfully",

                                                    Toast.LENGTH_SHORT).show();
                                        } catch (Exception e) {
                                            e.printStackTrace();
                                        }
                                    } else {
                                        comment1.setError("Please Enter Your Comments here");
                                    }
                                } else {
                                    email1.setError("Please Enter Valid EmailId");
                                }
                            } else {
                                altmob1.setError("Please Enter Altenative Mobile No.");
                            }
                        } else {
                            mobile1.setError("Please Enter valid Mobile No.");
                        }
                    } else {
                        lname1.setError("Please Enter Last Name");
                    }

                } else {
                    fname1.setError("Please Enter First Name");
                }

            }
        });
    }

    private boolean isValidMail(String email) {
        boolean check;
        Pattern p;
        Matcher m;

        String EMAIL_STRING = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
                + "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";

        p = Pattern.compile(EMAIL_STRING);

        m = p.matcher(email);
        check = m.matches();

        if (!check) {
            email1.setError("Not Valid Email");
        }
        return check;
    }

    private boolean isValidMobile(String mobile) {
        boolean check;
        if (mobile.length() < 6 || mobile.length() > 13) {
            check = false;
            mobile1.setError("Not Valid Number");
        } else {
            check = true;
        }
        return check;
    }
}

答案 2 :(得分:0)

您正在运行有效的电子邮件检查,但忽略了结果。只要您输入一些文本,保存的调用就会起作用。

如果合并了有效检查方法的返回值,则可以在这些调用返回false时停止保存。

e.g。

 if(mobile.equals(""))
 {           
     mobile1.setError( "Please Enter Mobile No." );
 }
 else if(!isValidMobile(mobile))
 {           
     mobile1.setError("Not Valid Number");                   
 }