2014-06-25 98 views
0

我想将数据从android推送到mysql。它说无效的IP地址。 为什么会发生?问题出在PHP代码或Java的MainActivity上?无效的IP地址

Java代码:

`public class MainActivity extends Activity { 

String name; 
String id; 
InputStream is=null; 
String result=null; 
String line=null; 
int code; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    final EditText e_id=(EditText) findViewById(R.id.Text1); 
    final EditText e_name=(EditText) findViewById(R.id.Text2); 
    Button insert=(Button) findViewById(R.id.but1); 

    insert.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 

     id = e_id.getText().toString(); 
     name = e_name.getText().toString(); 

     insert(); 
    } 
}); 
} 

public void insert() 
{ 
    ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 

nameValuePairs.add(new BasicNameValuePair("id",id)); 
nameValuePairs.add(new BasicNameValuePair("name",name)); 

    try 
    { 
    HttpClient httpclient = new DefaultHttpClient(); 
     HttpPost httppost = new HttpPost("http://www.shoaib.byethost9.com/insert.php"); 
     httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
     HttpResponse response = httpclient.execute(httppost); 
     HttpEntity entity = response.getEntity(); 
     is = entity.getContent(); 
     Log.e("pass 1", "connection success "); 
} 
    catch(Exception e) 
{ 
     Log.e("Fail 1", e.toString()); 
     Toast.makeText(getApplicationContext(), "Invalid IP Address", 
     Toast.LENGTH_LONG).show(); 
}  

    try 
    { 
     BufferedReader reader = new BufferedReader 
     (new InputStreamReader(is,"iso-8859-1"),8); 
     StringBuilder sb = new StringBuilder(); 
     while ((line = reader.readLine()) != null) 
    { 
      sb.append(line + "\n"); 
     } 
     is.close(); 
     result = sb.toString(); 
    Log.e("pass 2", "connection success "); 
} 
    catch(Exception e) 
{ 
     Log.e("Fail 2", e.toString()); 
}  

try 
{ 
     JSONObject json_data = new JSONObject(result); 
     code=(json_data.getInt("code")); 

     if(code==1) 
     { 
    Toast.makeText(getBaseContext(), "Inserted Successfully", 
     Toast.LENGTH_SHORT).show(); 
     } 
     else 
     { 
    Toast.makeText(getBaseContext(), "Sorry, Try Again", 
     Toast.LENGTH_LONG).show(); 
     } 
} 
catch(Exception e) 
{ 
     Log.e("Fail 3", e.toString()); 
} 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.main,menu); 
    return true; 
}  

}

PHP代码:

enter code here<?php 
$host='sql100.byethost9.com'; 
$uname='b9_14989725'; 
$pwd=''; 
$db='b9_14989725_android'; 


$con = mysql_connect($host,$uname,$pwd) or die("connection failed"); 
mysql_select_db($db,$con) or die("db selection failed"); 

$id=$_REQUEST['id']; 
$name=$_REQUEST['name']; 

$flag['code']=0; 

if($r=mysql_query("insert into android (id,name) values('$id','$name') ",$con)) 
{ 
    $flag['code']=1; 
    echo"hi"; 
} 

print(json_encode($flag)); 
mysql_close($con); 

>

问题是什么?为什么IP地址无效?

+0

什么说无效IP? Android还是PHP? –

+0

当我运行应用程序并尝试发送数据到MySQL – M0GLI

回答

-1
@SuppressLint("NewApi") 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); 
    StrictMode.setThreadPolicy(policy); 
    setContentView(R.layout.xyz);