2

这是我的代码:

HttpClient httpclient = new DefaultHttpClient();

        HttpPost httppost = new HttpPost("http://www.webcitation.org/comb.php");

        try {
            // Add your data
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
            nameValuePairs.add(new BasicNameValuePair(??, ??));
            nameValuePairs.add(new BasicNameValuePair("fromform", "2"));
            nameValuePairs.add(new BasicNameValuePair("email", "example@example.com"));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

            // Execute HTTP Post Request
            HttpResponse response = httpclient.execute(httppost);

            BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

            String line = "";
            while((line = rd.readLine()) != null) {
                System.out.println(line);
            }

        } catch (Exception e) {
            System.out.println(e);
        }

这是我试图模仿的表单的 HTML 代码:http ://www.webcitation.org/69Qsz3Tdn

我正在尝试通过 Java 将 URL http://video.google.com/?hl=en&tab=wvhttp://maps.google.com/maps?hl=en&tab=wl等提交到 PHP 文件并读取响应。由于s没有names href,我很难过。复选框也没有values,所以我无法检查它们是否被选中。

感谢您的帮助!!

4

1 回答 1

0

您不会得到预期的响应。

comb.php 的响应取决于 html 表单。

在你的 html 表单中没有指定值。所以我看不到 comb.php 如何测试复选框。

 <td><input type="checkbox" name="cachingurl0"/></td>
 <td><a href="http://video.google.com/?hl=en&tab=wv">http://video.google.com/?hl=en&tab=wv</a></td>

具有价值:

 <td><input type="checkbox" name="cachingurl0" value="checked" /></td>

1.) 您还需要一个带有 GUI 形式的 Java 应用程序(例如 Swing 形式的应用程序)。您可以在此处选中或取消选中所需的复选框。

2.) 您必须将适当的变量传递给 comb.php。例如:

if (myCheckB0.checked) { nameValuePairs.add(new BasicNameValuePair("cachingurl0", "checked"));}
if (myCheckB5.checked) { nameValuePairs.add(new BasicNameValuePair("cachingurl5", "checked"));
于 2012-07-26T01:46:06.103 回答