2 nik666 nik666 于 2016.02.28 23:19 提问

android app通过php API连接数据库实现注册问题

<?php
$conn = mysql_connect("localhost", "root", "root");
?>

<?php
require 'conn.php';

if($_POST['username']!=""&&$_POST['password']!="")
{
$password=md5($_POST['password']);
$sql="select * from 'user' where username='$_POST[username]'";
$query=mysqli_query($conn,$sql);
$row=mysqli_num_row($query);
if($row==0){
$sql2="insert into 'user' (username,password) values('$_POST[username]','$password')";
$query=mysqli_query($conn,$sql2);
$result=array("status"=>"success");
echo json_encode($result);
}
else{
$result=array("status"=>"exists");
echo json_encode($result);
}
}

?>

public class register extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    CustomTitle ct= new CustomTitle();
    ct.getTitleBar(this, "ע��",R.drawable.oval,R.drawable.oval,"����","ȡ��");
    setContentView(R.layout.signup);

    Button button1=(Button)findViewById(R.id.button1);
    final EditText editText1=(EditText)findViewById(R.id.editText1);
    final EditText editText2=(EditText)findViewById(R.id.editText2);

    button1.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            String username=editText1.getText().toString();
            String password=editText2.getText().toString();

            if(username.equals("")||password.equals("")){
                 Toast.makeText(register.this, "用户名或密码不能为空", Toast.LENGTH_LONG);
            }
            else{
                AsyncHttpClient client=new AsyncHttpClient();
                RequestParams params=new RequestParams();
                params.add("username",username);
                params.add("password",password);
                client.post("http://192.168.1.203/NewsDemo/register.php",params,new AsyncHttpResponseHandler() {

                    @Override
                    public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
                        // TODO Auto-generated method stub
                        String response=new String();
                        Log.e("debug",response);
                        JSONObject object=null;
                        try {
                            object=new JSONObject(response);
                            String status=object.getString("status");
                            if(status.equals("exists")){
                                Toast.makeText(register.this, "用户名已存在,请更换", Toast.LENGTH_LONG);
                                }else if(status.equals("error")){
                                    Toast.makeText(register.this, "出现错误请稍后重试", Toast.LENGTH_LONG);
                                }
                                else{

                                    App.isLogin=true;
                                    Intent intent=new Intent(register.this,MainActivity.class);
                                    startActivity(intent);
                                    register.this.finish();
                                }
                        } catch (JSONException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }

                    }

                    @Override
                    public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) {
                        // TODO Auto-generated method stub
                        Toast.makeText(register.this, "网络错误", Toast.LENGTH_LONG);
                    }
                });

            }
        }
    });

}

}

请问这段代码有什么问题吗 我按注册键也就是button1 没有反应 数据库log有收到信息 没有反馈
92.168.1.203 - - [28/Feb/2016:22:47:44 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"
192.168.1.203 - - [28/Feb/2016:22:47:45 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"
192.168.1.203 - - [28/Feb/2016:22:47:45 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"
192.168.1.203 - - [28/Feb/2016:22:47:47 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"
192.168.1.203 - - [28/Feb/2016:22:47:47 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"
192.168.1.203 - - [28/Feb/2016:22:49:31 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"
192.168.1.203 - - [28/Feb/2016:22:49:32 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"
192.168.1.203 - - [28/Feb/2016:22:49:34 +0800] "POST /NewsDemo/register.php HTTP/1.1" 200 297 "-" "-"

1个回答

u013596119
u013596119   Rxr 2016.02.29 11:05
已采纳

String response=new String();

这里response是个空的String?应该取arg2的值吧

u013596119
u013596119 回复nik666: 判断是否为空的语句换下试试看。 username.length()==0||password.length()==0
接近 2 年之前 回复
nik666
nik666 恩恩补上了后 我在注册界面不输入密码或账号点击注册 没有反应 toast也没有显示出来
接近 2 年之前 回复
nik666
nik666 恩恩补上了后 我在注册界面不输入密码或账号点击注册 没有反应 toast也没有显示出来
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!