Android 在web服务器中连接MySql数据库时出错
我正在从Eclipse中的android应用程序连接到外部数据库。它是使用PHP和JSON的MySQL服务器。 问题是,当我从localhost进行测试时,一切都正常,但是为了给出web服务器的URL,应用程序关闭了Android 在web服务器中连接MySql数据库时出错,android,mysql,eclipse,Android,Mysql,Eclipse,我正在从Eclipse中的android应用程序连接到外部数据库。它是使用PHP和JSON的MySQL服务器。 问题是,当我从localhost进行测试时,一切都正常,但是为了给出web服务器的URL,应用程序关闭了 private ProgressDialog pDialog; public static String mensaje_bienvenida = "com.example.AndroidConnectingToPhpMySQL.MESSAGE"; Button btnLogin;
private ProgressDialog pDialog;
public static String mensaje_bienvenida = "com.example.AndroidConnectingToPhpMySQL.MESSAGE";
Button btnLogin;
EditText txtNick;
EditText txtClave;
JSONParser jsonParser = new JSONParser();
//private static String url_usu = "http://10.0.2.2/SistemaMedico/verificarusuario.php";
//ip orange ventas: 207.58.133.155
private static String url_usu = "http://www.orangeventas.com/SistemaMedico/verificarusuario.php";
private static final String TAG_SUCCESS = "success";
private static final String TAG_USUARIO = "usuario";
private static final String TAG_NICK = "nick";
private static final String TAG_CLAVE = "clave";
private static final String TAG_IDUSU = "idusu";
private static final String TAG_IDPER = "idper";
private static final String TAG_NOMBRE = "nombre";
private static final String TAG_SEXO = "sexo";
String nick;
String clave;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_screen);
/*StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);*/
//Le damos a las variables las propiedades de sus respectivos controles
btnLogin = (Button)findViewById(R.id.login);
txtNick = (EditText)findViewById(R.id.nick);
txtClave = (EditText)findViewById(R.id.clave);
//Evento clic del botón
btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(txtNick.getText().toString().trim().length() > 0)
{
if(txtClave.getText().toString().trim().length() >= 6)
{
nick = txtNick.getText().toString().trim();
clave = txtClave.getText().toString().trim();
new ValidarUsuario().execute();
}
else
{
AlertDialog.Builder builder = new AlertDialog.Builder(MainScreenActivity.this);
builder.setTitle("Mensaje");
builder.setMessage("Ingrese Clave");
builder.setPositiveButton("Aceptar", null);
builder.create();
builder.show();
txtClave.requestFocus();
}
}
else
{
AlertDialog.Builder builder = new AlertDialog.Builder(MainScreenActivity.this);
builder.setTitle("Mensaje");
builder.setMessage("Ingrese Nick de Usuario");
builder.setPositiveButton("Aceptar", null);
builder.create();
builder.show();
txtNick.requestFocus();
}
}
});
}
class ValidarUsuario extends AsyncTask<String, String, String>
{
/*
@Override
protected void onPreExecute()
{
super.onPreExecute();
pDialog = new ProgressDialog(MainScreenActivity.this);
pDialog.setMessage("Loading products. Please wait...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(false);
pDialog.show();
}*/
protected String doInBackground(String...params)
{
runOnUiThread(new Runnable() {
@Override
public void run() {
int success;
try
{
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair(TAG_NICK, nick));
params.add(new BasicNameValuePair(TAG_CLAVE, clave));
JSONObject json = jsonParser.makeHttpRequest(url_usu, "POST", params);
Log.d("Validando Usuario", json.toString());
success = json.getInt(TAG_SUCCESS);
if(success == 1)
{
JSONArray usuarioObj = json.getJSONArray(TAG_USUARIO);
JSONObject usuario = usuarioObj.getJSONObject(0);
/*
Intent intent = new Intent(getApplicationContext(), MenuActivity.class);
intent.putExtra(mensaje_bienvenida, usuario.getString(TAG_NOMBRE));*/
String genero = "BIENVENIDO";
final String nusu = usuario.getString(TAG_NOMBRE);
//mensaje_bienvenida = nusu;
if(usuario.getString(TAG_SEXO)=="F")
{
genero = "BIENVENIDA";
}
AlertDialog.Builder builder = new AlertDialog.Builder(MainScreenActivity.this);
builder.setTitle("Mensaje");
builder.setMessage(genero + " " + usuario.getString(TAG_NOMBRE));
/*
builder.setPositiveButton("Aceptar", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
Log.i("Dialogo", "Aceptado");
Intent intent = new Intent(getApplicationContext(), MenuActivity.class);
intent.putExtra(mensaje_bienvenida, nusu);
startActivity(intent);
}
});*/
builder.create();
builder.show();
Intent intent = new Intent(getApplicationContext(), MenuActivity.class);
intent.putExtra(mensaje_bienvenida, nusu);
startActivity(intent);
}
else
{
AlertDialog.Builder builder = new AlertDialog.Builder(MainScreenActivity.this);
builder.setTitle("Mensaje");
builder.setMessage("Intente nuevamente");
builder.setPositiveButton("Aceptar", null);
builder.create();
builder.show();
txtClave.setText("");
txtClave.requestFocus();
}
}
catch(JSONException ex)
{
ex.printStackTrace();
}
}
});
return null;
}
}
private ProgressDialog pDialog;
公共静态字符串mensaje_bienvenida=“com.example.androidconnectingtoppmysql.MESSAGE”;
按钮btnLogin;
编辑文本txtNick;
编辑文本txtClave;
JSONParser JSONParser=新的JSONParser();
//专用静态字符串url_usu=”http://10.0.2.2/SistemaMedico/verificarusuario.php";
//ip橙色文塔:207.58.133.155
专用静态字符串url_usu=”http://www.orangeventas.com/SistemaMedico/verificarusuario.php";
私有静态最终字符串标记_SUCCESS=“SUCCESS”;
私有静态最终字符串标记_USUARIO=“USUARIO”;
私有静态最终字符串标记_NICK=“NICK”;
私有静态最终字符串标记\u CLAVE=“CLAVE”;
私有静态最终字符串标记_IDUSU=“IDUSU”;
私有静态最终字符串标记_IDPER=“IDPER”;
私有静态最终字符串标记_NOMBRE=“NOMBRE”;
私有静态最终字符串标记_SEXO=“SEXO”;
线痕;
弦乐;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(右布局主屏幕);
/*StrictMode.ThreadPolicy policy=新建StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(策略)*/
//在各自的控制下,所有的变量都是可变的
btnLogin=(按钮)findViewById(R.id.login);
txtNick=(EditText)findViewById(R.id.nick);
txtClave=(EditText)findViewById(R.id.clave);
//波顿事件
btnLogin.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
if(txtNick.getText().toString().trim().length()>0)
{
if(txtClave.getText().toString().trim().length()>=6)
{
nick=txtNick.getText().toString().trim();
clave=txtClave.getText().toString().trim();
新的validarusario().execute();
}
其他的
{
AlertDialog.Builder=新建AlertDialog.Builder(MainScreenActivity.this);
建造商名称(“Mensaje”);
builder.setMessage(“Ingree Clave”);
builder.setPositiveButton(“Aceptar”,null);
builder.create();
builder.show();
txtClave.requestFocus();
}
}
其他的
{
AlertDialog.Builder=新建AlertDialog.Builder(MainScreenActivity.this);
建造商名称(“Mensaje”);
建造商信息(“Ingree Nick de Usuario”);
builder.setPositiveButton(“Aceptar”,null);
builder.create();
builder.show();
txtNick.requestFocus();
}
}
});
}
类validarusario扩展异步任务
{
/*
@凌驾
受保护的void onPreExecute()
{
super.onPreExecute();
pDialog=新建进度对话框(MainScreenActivity.this);
pDialog.setMessage(“正在加载产品。请稍候…”);
pDialog.setUndeterminate(假);
pDialog.setCancelable(假);
pDialog.show();
}*/
受保护的字符串doInBackground(字符串…参数)
{
runOnUiThread(新的Runnable(){
@凌驾
公开募捐{
成功;
尝试
{
List params=new ArrayList();
参数添加(新的BasicNameValuePair(TAG_NICK,NICK));
参数添加(新的BasicNameValuePair(TAG_CLAVE,CLAVE));
JSONObject json=jsonParser.makeHttpRequest(url_usu,“POST”,params);
Log.d(“Validando Usuario”,json.toString());
success=json.getInt(TAG_success);
如果(成功==1)
{
JSONArray usuariobj=json.getJSONArray(TAG_USUARIO);
JSONObject usuario=usuariobj.getJSONObject(0);
/*
Intent Intent=新的Intent(getApplicationContext(),MenuActivity.class);
intent.putExtra(mensaje_bienvenida,usuario.getString(TAG_NOMBRE))*/
字符串慷慨=“BIENVENIDO”;
最后一个字符串nusu=usuario.getString(TAG_NOMBRE);
//mensaje_bienvenida=nusu;
if(通常为getString(TAG_SEXO)=“F”)
{
慷慨解囊=“BIENVENIDA”;
}
AlertDialog.Builder=新建AlertDialog.Builder(MainScreenActivity.this);
建造商名称(“Mensaje”);
builder.setMessage(慷慨+“”+usuario.getString(TAG_NOMBRE));
/*
setPositiveButton(“Aceptar”,新的DialogInterface.OnClickListener(){
@凌驾
public void onClick(DialogInterface对话框,int-id){
Log.i(“Dialogo”、“Aceptado”);
Intent Intent=新的Intent(getApplicationContext(),MenuActivity.class);
意图.putExtra(努苏的mensaje_bienvenida);
startActiv