【问题标题】:how to add the value from java into php?如何将java中的值添加到php中?
【发布时间】:2026-02-16 06:30:02
【问题描述】:

我的java函数

private void adddataintophp(String title, String date, String time, String channel){
    ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
    //http post
    try{
        nameValuePairs.add(new BasicNameValuePair("Title", title));
        nameValuePairs.add(new BasicNameValuePair("Date", date));
        nameValuePairs.add(new BasicNameValuePair("Time", time));
        nameValuePairs.add(new BasicNameValuePair("Channel", channel));
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://10.0.2.2/insertprogram.php");
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
        HttpResponse response = httpclient.execute(httppost);
        HttpEntity entity = response.getEntity();
        is = entity.getContent();
    }catch(Exception e){
        Log.e("log_tag", "Error in http connection"+e.toString());
    }
}

我的 php 代码

<?php
$title = $_POST['Title'];
$date = $_POST['Date'];
$time = $_POST['Time'];
$channel = $_POST['Channel'];
mysql_connect("localhost","root","");
mysql_select_db("imammuda");
$sql=mysql_query("insert into Program (ID, Title, Date, Time, Channel) values ('NULL', '$title', '$date', '$time', '$channel')");
mysql_close();
?>

当我执行它时,我会去数据库那里看看。

已添加但值为空。

所以,我的问题是如何将java中edittext获得的值传递给php

【问题讨论】:

    标签: java php android


    【解决方案1】:

    您在 Java 中执行 POST 请求,但在 PHP 代码中读取 GET 请求。发布数据时,它不会显示在 URL 中,数据应该根据 GET 动词在哪里。

    【讨论】:

      【解决方案2】:

      请记住转义 SQL 查询中的所有字符串以增强安全性:

      $sql=mysql_query("insert into Program (ID, Title, Date, Time, Channel) values ('NULL', '" . mysql_real_escape_string($title) . "', '" . mysql_real_escape_string($date) . "', '" . mysql_real_escape_string($time) . "', '" . mysql_real_escape_string($channel) . "')");
      

      【讨论】:

      • 最好只对这些东西使用准备好的语句 - 通常更快且更难忽略。