- Forum-Beiträge: 77
01.08.2014, 01:53:30 via Website
01.08.2014 01:53:30 via Website
Hallo weiß einer ob es möglich ist bei einem file upload noch post parameter hinzuzufügen?
MfG
01.08.2014, 01:53:30 via Website
01.08.2014 01:53:30 via Website
Hallo weiß einer ob es möglich ist bei einem file upload noch post parameter hinzuzufügen?
MfG
01.08.2014, 07:23:52 via Website
01.08.2014 07:23:52 via Website
Hallo,
ob ich deine Frage richtig verstehe (???)
Soll an der Server- Seite ein php Script den request empfangen, dann ist es dem auch egal, ob es POST oder GET ist, weil:
$_REQUEST beinhaltet alle Request- Parameter, - also egal ob über POST oder übers GET; -> bzw. beide.
Also JA!
LG
Georg
Sorry für Gramatik & Stilistik Fehler.
01.08.2014, 21:59:11 via Website
01.08.2014 21:59:11 via Website
naja auf php seite ist auch nicht das problem sondern eher auf der seite von java
ich habe nämlich keinen plan wie ich in den anhängenden code das file einbaue als post parameter:
public static String uploadFile(String targetURL, String urlParameters, File file)
{
URL url;
HttpURLConnection connection = null;
try {
//Create connection
url = new URL(targetURL);
connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
connection.setRequestProperty("Content-Length", "" +
Integer.toString(urlParameters.getBytes().length));
connection.setRequestProperty("Content-Language", "en-US");
connection.setUseCaches (false);
connection.setDoInput(true);
connection.setDoOutput(true);
//Send request
DataOutputStream wr = new DataOutputStream (
connection.getOutputStream ());
wr.writeBytes (urlParameters);
wr.flush ();
wr.close ();
//Get Response
InputStream is = connection.getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
String line;
StringBuffer response = new StringBuffer();
while((line = rd.readLine()) != null) {
response.append(line);
response.append('\r');
}
rd.close();
return response.toString();
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
if(connection != null) {
connection.disconnect();
}
}
}
02.08.2014, 08:22:09 via Website
02.08.2014 08:22:09 via Website
Hallo,
... wie ich in den anhängenden code das file einbaue als post
parameter ...
Hmmmmm ;
also strikte so, wie du es gemacht hast. (??!!??)
File (ist sogar praktisch) als Parameter der uploadFile(String targetURL, String urlParameters, File file)
Methode,
und
bei request "Typ" die POST gewählt:
connection.setRequestMethod("POST"
soll irgend wann der Parser hier richtig funktionieren,
dann wird es so aussehen:
connection.setRequestMethod("POST" )
....
OK!
Schaue dir an -> / (analysiere!) ein Tutorials (es gibt sehr viele ... upload File to PHP .. to HTML ...)
Wenn du Java lernen möchtest, wird dir hier bestimmt! weiter geholfen, kurze Teilproblem- Lösungen auch für "Copy/Paste - Leute",
aber ..... keiner bringt dir hier die Grundlagen bei.
LG
Georg
— geändert am 02.08.2014, 08:30:39
Sorry für Gramatik & Stilistik Fehler.
02.08.2014, 09:31:53 via Website
02.08.2014 09:31:53 via Website
Was soll das denn jetzt heißen? Grundlagen hin oder her ich habe einfach keine Ahnung in welchen Format ich das file an die urlParameters anhängen soll. Mir würde ja ein Ansatz reichen! Ich würde hier wohl kaum fragen hätte ich nicht schon sämtliche Beispiel codes im Internet abgeklappert...
— geändert am 02.08.2014, 09:32:35
02.08.2014, 10:51:16 via Website
02.08.2014 10:51:16 via Website
Hallo,
meine "Kristallkugel" sag mir, dass du zu denen gehörst, welcher die Meinung verträten, -> dass Forum MUSS mir / euch -> Helfen.
NO!
Ein kostenlosen Support ist ein Privileg, -> von dem du / ihr auch profitiert.
Also sei bitte (wenigstens offiziell ) etwas freundlicher.
Auf deinen "Barschen Ton" reagiere ich so;
... ich habe nämlich keinen plan wie ich in den anhängenden code das
file einbaue
Dann lasse es, oder zwingt dich jemand dazu?
... Grundlagen hin oder her ich habe einfach keine Ahnung
Das ist nicht zu übersehen.
Mir würde ja ein Ansatz reichen!
Habe beschrieben / erläutern.
Ich würde hier wohl kaum fragen hätte ich nicht schon sämtliche
Beispiel codes im Internet abgeklappert...
Wen die sämtlichen Beispiel- Codes aus dem Internet dir nicht geholfen haben, dann kann ich dir auch nicht weiter helfen
- SORRY!
LG
Georg
Sorry für Gramatik & Stilistik Fehler.
02.08.2014, 10:53:57 via App
02.08.2014 10:53:57 via App
Hi,
also ich würde eine lib für das http Zeug nutzten. Meine Favorit ist okhttp und die haben auf github eine Tonne an Beispielen:
https://github.com/square/okhttp/wiki/Recipes
02.08.2014, 12:01:39 via Website
02.08.2014 12:01:39 via Website
Oder schau mal hier Link
Gruß Ludy (App Entwickler)
✴
Mein Beitrag hat dir geholfen? Lass doch ein "Danke" da.☺
✴
☕ Buy Me A Coffee ☕
✴
Lebensmittelwarnung-App
✴
✨Meine Wunschliste✨
✴
📲Telegram NextPit News📲
02.08.2014, 14:44:43 via Website
02.08.2014 14:44:43 via Website
Georg C.
meine "Kristallkugel" sag mir, dass du zu denen gehörst, welcher die Meinung verträten, -> dass Forum MUSS mir / euch -> Helfen.
NO!
Nein der Meinung bin ich nicht es stört mich nur ziemlich wenn leute antworten die keine Ahnung haben! Wenn du meinst du müsstest deine Zitate aus dem Zusammenhang reißen um mich so blöd darzustellen dann mach das ruhig wenn es dich glücklich macht.
@Markus B.Danke! ich wollte aber vorerst auf libs verzichten weil es die app größe nur unnötig in die höhe treibt
@Ludy Naja mein problem ist ja nicht das uploaden an sich sondern wie man postparameter und den upload in einem an ein php file sendet.
Bei den obrigen code auszug sieht urlParameters ja ca so aus "authkey=test&username=test".
Nun ist halt das problem wie ich das file da dran hänge einfach "&file=".bytes() und halt von file selbst die bytes?
— geändert am 02.08.2014, 14:45:52
02.08.2014, 14:55:04 via Website
02.08.2014 14:55:04 via Website
Ich hatte mir mal ne Klasse geschrieben zwecks Authentizierung
public SendData(String userNameAuthentication,
String passwordAuthentication, String urlServerUpload,
String pathAndFile) {
this.username = userNameAuthentication;
this.password = passwordAuthentication;
this.urlServer = urlServerUpload;
this.pathAndFile = pathAndFile;
Authenticator.setDefault(new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password
.toCharArray());
}
});
sender();
}
private void sender() {
HttpURLConnection connection = null;
DataOutputStream outputStream = null;
String lineEnd = "\r\n";
String twoHyphens = "--";
String boundary = "*****";
int bytesRead, bytesAvailable, bufferSize;
byte[] buffer;
int maxBufferSize = 1 * 1024 * 1024;
try {
FileInputStream fileInputStream = new FileInputStream(new File(
pathAndFile));
URL url = new URL(urlServer);
connection = (HttpURLConnection) url.openConnection();
// Allow Inputs & Outputs
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setUseCaches(false);
// Enable POST method
connection.setRequestMethod("POST");
connection.setRequestProperty("Connection", "Keep-Alive");
connection.setRequestProperty("Content-Type",
"multipart/form-data;boundary=" + boundary);
outputStream = new DataOutputStream(connection.getOutputStream());
outputStream.writeBytes(twoHyphens + boundary + lineEnd);
outputStream
.writeBytes("Content-Disposition: form-data; name=\"uploadedfile\"; filename=\""
+ pathAndFile + "\"" + lineEnd);
outputStream.writeBytes(lineEnd);
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
buffer = new byte[bufferSize];
// Read file
bytesRead = fileInputStream.read(buffer, 0, bufferSize);
while (bytesRead > 0) {
outputStream.write(buffer, 0, bufferSize);
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
bytesRead = fileInputStream.read(buffer, 0, bufferSize);
}
outputStream.writeBytes(lineEnd);
outputStream.writeBytes(twoHyphens + boundary + twoHyphens
+ lineEnd);
// Responses from the server (code and message)
serverResponseCode = connection.getResponseCode();
serverResponseMessage = connection.getResponseMessage();
Log.e("Code " + serverResponseCode, serverResponseMessage);
fileInputStream.close();
outputStream.flush();
outputStream.close();
} catch (ProtocolException e) {
Log.e("Proto", e.toString());
} catch (IOException e) {
Log.e("io", e.toString());
}
}
Gruß Ludy (App Entwickler)
✴
Mein Beitrag hat dir geholfen? Lass doch ein "Danke" da.☺
✴
☕ Buy Me A Coffee ☕
✴
Lebensmittelwarnung-App
✴
✨Meine Wunschliste✨
✴
📲Telegram NextPit News📲