0
我想发送2个文本变量到php服务器并将它们存储在数据库中,并且这是代码
但我得到那个吐司(错误)地点在catch 问题在哪里?通过Android编程将数据插入到PHP数据库
的Android端
public class MainActivity extends Activity{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayList nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("name","android"));
nameValuePairs.add(new BasicNameValuePair("mob","203040"));
//http post
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://apptest.ir/test/recive.php");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
Toast.makeText(this,"Data Send !",Toast.LENGTH_SHORT).show();
}
catch(Exception e)
{
Toast.makeText(this,"Error !",Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
}
}
,这是PHP文件
<?php
$name = isset($_POST['name']) ? $_POST['name'] : '';
$mob = isset($_POST['mob']) ? $_POST['mob'] : '';
$ins = "INSERT INTO table1 (name,mob) VALUES ('$name','$mob')";
$link = mysql_connect('localhost', 'user1', 'pass1');
if (!$link) {die('Not Conected');}
echo 'Conected';
$db_selected = mysql_select_db('test', $link);
if (!$db_selected) {die ('Can\'t use table1 : ');}
echo 'Database is Selected'.'<br />';
$saved=mysql_query($ins);
if($saved){echo "Data STORED";}
?>
首先,没有这样的事情作为一个PHP数据库。你可以在它前面有一个php web服务的数据库。其次,如果您需要帮助,请发布异常的堆栈跟踪。虽然在这种情况下我可以告诉你它是什么 - 你不能在UI线程上发出HTTP请求,你需要在Thread或AsyncTask中完成。 –