java에서 PHP 페이지로 POST 데이터를 보내려고합니다. 그러나 그것은 작동하지 않습니다. 내가 PHP 페이지에서 에코가 잘 작동하지만 데이터를 보낼 때 'undefined index'가 나온다 무엇이 문제 일 수 있는가? 이것은 내 Java 파일입니다.Java로 PHP 페이지로 데이터 보내기
import java.net.*;
import java.io.*;
class Main {
public static void main(String args[]) throws IOException {
URL url = new URL("http://localhost/CD/user/test");
String result = "";
String data = "fName=" + URLEncoder.encode("Atli", "UTF-8");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
try {
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setUseCaches(false);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
// Send the POST data
DataOutputStream dataOut = new DataOutputStream(
connection.getOutputStream());
dataOut.writeBytes(data);
dataOut.flush();
dataOut.close();
BufferedReader in = new BufferedReader(new InputStreamReader(
url.openStream()));
String g;
while ((g = in.readLine()) != null) {
result += g;
}
in.close();
} finally {
connection.disconnect();
System.out.println(result);
}
}
}
그리고 여기 내 PHP는 컨트롤러 : 난 그냥 URL 요청을 보낼 때 '이것은이다'로
public function test(){
$test=$_POST['fName'];
$all="This is a ";
$all=$all." ".$test;
echo $all;
}
, 나는 OUPUT를 얻을. 그래서 그것은 URL과 모든 것에 연결하고 있지만 데이터를 보내는 동안 작동하지 않습니다. 도와주세요! 고맙습니다.
오! 고마워요! 지금은 잘 작동합니다. Btw 내가 할 때 : in.readLine() 메소드는 DataOutputStream에서 더 이상 사용되지 않으므로 이전에 사용한 BufferedReader 행으로 대체해야한다고 설명합니다. 그렇다면이 문제를 어떻게 해결할 수 있을까요? 또한 DataOutputStream 대신 bufferedReader를 사용하여 POST 데이터를 보내는 방법. 귀하의 도움을 많이 주시면 감사하겠습니다! :) – aradhya
당신 말이 맞아요. 나는 더 이상 사용되지 않는 방법을 사용하지 않고 솔루션을 추가했습니다. BufferedReader를 사용하여 게시물에 관해서 : 나는 그게 가능하다고 생각하지 않습니다 (내가 틀릴 수도 있지만, 결국 리더가 아닌 작가) – tim