簡體   English   中英

Android HTTP發布到PHP腳本

[英]Android http post to php script

我正在使用以下代碼將數據發布到服務器

HttpClient httpclient = new DefaultHttpClient();

                    HttpPost httppost = new HttpPost("http://www.kizikstudios.com/wltbo/new_score.php");


                    try {
                        // Add your data
                        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(3);
                        nameValuePairs.add(new BasicNameValuePair("name", "harry"));
                        nameValuePairs.add(new BasicNameValuePair("score", "12345"));
                        nameValuePairs.add(new BasicNameValuePair("pass", "***"));
                        HttpEntity entity = new UrlEncodedFormEntity(nameValuePairs);

                        httppost.addHeader(entity.getContentType());
                        httppost.setEntity(entity);

                        // Execute HTTP Post Request
                        HttpResponse response = httpclient.execute(httppost);
                        String feedback = EntityUtils.toString(response.getEntity());
                        feedback.length();

                    } catch (ClientProtocolException e) {
                        // TODO Auto-generated catch block
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                    }

服務器正在接收發布請求,但它表示大小為零字節,並且我的數據庫從未更改。 如果需要,這里是服務器端腳本。

<?
//****Made by: Jeroen den Haan***Alias's: jeroen84 / Jer'ul****
include_once ("_data.php");
$conn = mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($db_name,$conn);

if ($pass==$add_pass) {

if ($u_user==1) {

    $sql3 = "SELECT name FROM $db_table ORDER BY name";
    $result3 = mysql_query($sql3);
    while($r = mysql_fetch_object($result3)) 
{
    $tmp = "{$r->name}";
    if ($name==$tmp) {
        $n_exist=1;

    }
}
if ($n_exist==1) {
    $sql1 = "UPDATE $db_table SET score='$score' WHERE name=\"$name\"";
    $result1 = mysql_query($sql1);
} else {
    $sql1 = "INSERT INTO $db_table (name,score) VALUES (\"$name\",\"$score\")";
    $result1 = mysql_query($sql1);
}

} else {
$sql1 = "INSERT INTO $db_table (name,score) VALUES (\"$name\",\"$score\")";
$result1 = mysql_query($sql1);
}

$sql2 = "SELECT id FROM $db_table ORDER BY score DESC";
$result2 = mysql_query($sql2);

$num = 1;
while($r = mysql_fetch_object($result2))
{
$result = mysql_db_query($db_name,"SELECT * from $db_table WHERE id='{$r->id}'");
$resultArray = mysql_fetch_array($result);
$did = $resultArray["id"];
$name = $resultArray["name"];
$score = $resultArray["score"];
if ($num>$sec_size) {
$sql3 = "DELETE FROM $db_table WHERE id='$did'";
$result3 = mysql_query($sql3);
}
$num++;
}
}

mysql_close ($conn);
?>

有誰知道為什么這行不通? 先感謝您!

您的php文件中的變量在哪里捕獲其他腳本的發布值? 您可以使用var_dump()這些變量來查看是否在php腳本中獲取了任何發布值嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM