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币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
PHP+MySQL实现用户登录注册API接口
最近在学习PHP后台相关知识,利用PHP连接MySQL数据库实现了一个简单的用户登录注册及修改密码的API接口,接口为标准的json输出,本地验证通过。功能比较简单,不过也自己摸索了挺长时间,期间各种百度解决了各种不懂。数据库只有name、psd和tel三个字段,接口均设计为POST方式提交。代码基本都有注释比较好理解,下面附上代码。 <?php $mysql_server_name="
安卓服务端开发(1) 安卓结合PHP实现连接数据库验证登录功能(附全部代码)
啥都不说了,直接上代码。如果看不懂在下面和我留言。 先看服务端:使用PHP语言,部署在新浪sae服务器(自带数据库) 将一下所有php文件放在同一个目录下: 1.db.php  封装好的用于连接数据库的类 <?php class Db{ static private $_instance; static private $_connect
加入数据库mysql实现android注册登陆功能的客户端服务器源码与解析socket
我11月21日发表了“实现android注册登陆功能的客户端服务器源码与解析”的博客,刚刚加入了数据库,把我自己加入数据库的过程和又完善了服务器的代码分享一下 一、阅读要求 同11月21日发表博文,如果没有阅读的话建议先阅读后再阅读本博文 对数据库有基本的了解和掌握 二、实现情况 1、解决了在注册时忽然退出再次注册这种情况下,服务器端的bug 2、解决了在注册时忽然退出
Android通过PHP连接MySQL数据库(插入)
文章转自http://blog.sina.com.cn/s/blog_6923201d01012qce.html。并有我自己的理解。 首先是头文件。注意必须的头文件一定要写。 import java.io.InputStream; import java.util.ArrayList; import org.apache.http.HttpResponse; impo
Android与PHP服务器交互用户登录与注册
Android与PHP服务器交互用户登录与注册实例源码
android 通过WampServer集成环境通过php+mysql实现注册登录功能
android 通过WampServer集成环境通过php+mysql实现注册登录功能,中文不乱码,参考别人的代码自己写的,大家一起交流。
Android通过Http连接MySQL 实现登陆/注册(数据库+服务器+客户端)
转载自http://www.cnblogs.com/yzxk/p/4749440.html 一、开发环境的部署 程序结构: android+servlet+service+mysql 仅供参考:能实现相关功能即可 操作系统:ubuntu 14.10 数据库:mysql-5.5    数据库工具:emma 服务器:tomcat      服务器工具:Myeclips
采用php与Mysql数据库完成用户注册登录等操作
1、采用PHP与Mysql数据库,完成用户注册程序,注册表单项可自由指定,尽量包含所有表单类型,注册成功后在新页面显示注册信息,注册中需要上传的照片的操作功能使用自定义函数调用,并在注册成功后显示照片。 2、采用PHP与Mysql数据库,完成用户登录功能。 步骤如下: (1)数据库设计: users.sql: set default_storage_engin
Android+PHP+Mysql实现用户登录
很多Android应用都有用户登录,一般来讲,整个过程会涉及到android登录客户端、后端的服务器和后台的数据库。常见的实现方式就是android、php和mysql的组合,本文通过一个实例来介绍如何实现这个看起来简单而又非常实用的用户登录功能。
【Android】移动端与服务器端简单的交互(账号密码登录) Android+PHP+MySQL
整体的流程是这样的:移动端获取到了数据,然后发送http请求和json格式数据吗,调用php文件,php解析json数据之后,根据数据对数据库进行不同的操作,操作完成之后返回相应,移动端获取响应内容即可知道是否成功。 这里我们就用一个账号密码注册熟悉一下流程,其他的请求与交互都可以在此基础上进行修改。首先交代一下环境,这里使用的是wampserver ,数据库是androiddatabase,ta