所以我试图将来自java的IP发布到网络上的php文件中。 然后php文件将保存它。虽然php文件没有收到ip。
Java代码:
try {
// open a connection to the site
URL url = new URL("http://example.com/useranalytics/join.php");
URLConnection con = url.openConnection();
// activate the output
con.setDoOutput(true);
PrintStream ps = new PrintStream(con.getOutputStream());
// send your parameters to your site
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
ps.print("ip=1.0.1.0");
ps.print("time=" + dateFormat.format(date));
// we have to get the input stream in order to actually send the request
con.getInputStream();
// close the print stream
ps.close();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
PHP代码(join.php):
<?php
foreach ($_POST as $key => $value) {
switch ($key) {
case 'ip':
$ip = $value;
break;
case 'time':
$time = $value;
break;
default:
break;
}
$ipf = "ipss.txt";
$handleip = fopen($ipf, "r");
$ips = fread($handleip, filesize($ipf));
if (strpos($ips,':' . $ip . ':') !== false) {
} else {
file_put_contents('ipss.txt', $ips . PHP_EOL . ':' . $IP . ':');
}
}
?>
有没有人知道为什么会这样?我感谢所有和任何帮助。很抱歉,如果它是PHP代码,对PHP来说还是新手。
答案 0 :(得分:0)
HttpClient httpclient = HttpClients.createDefault();
HttpPost httppost = new HttpPost("http://www.a-domain.com/foo/");
// Request parameters and other properties.
List<NameValuePair> params = new ArrayList<NameValuePair>(2);
params.add(new BasicNameValuePair("param-1", "12345"));
params.add(new BasicNameValuePair("param-2", "Hello!"));
httppost.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
//Execute and get the response.
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
if (entity != null) {
InputStream instream = entity.getContent();
try {
// do something useful
} finally {
instream.close();
}
}