Ich weiß nicht, ob das Problem in meinem PHP-Code oder auf der Ziel-C-Seite ist. Ich verstehe das nicht sehr gut und würde mich über jede Hilfe freuen, wenn ich Dateien von der iPad App, die ich erstelle, in eine MySQL-Datenbank hochlade. Im Moment wird nur die Beschreibung der Datei in die Datenbank geschrieben, aber der Blob/die Datei nicht. Jede Hilfe würde sehr geschätzt werden!Warum wird meine Datei nicht vom iPad auf die MySQL-Datenbank hochgeladen?
Hier ist meine PHP-Code:
<?php
$username = "person";
$password = "xxxxxxx";
$database = "database";
mysql_connect(localhost,$username,$password);
mysql_select_db($database) or die("Unable to select database");
$file = $_FILES['file'];
$name = $file['tmp_name'];
$testpage = file_get_contents($name);
$testpage = mysql_real_escape_string($testpage);
mysql_query("INSERT INTO tbldocs(Title,Document) VALUES('some title','$testpage')");
mysql_close();
?>
Hier mein Objective-C-Code ist, es in ein Paket HTTP Verpackung
NSMutableDictionary* post_dict = [[NSMutableDictionary alloc] initWithCapacity:2];
[post_dict setObject:@"test_value" forKey:@"test_key"];
[post_dict setObject:[NSURL fileURLWithPath:[pdfUrl absoluteString]] forKey:@"file"];
NSData* regData = [self generateFormData:post_dict];
[post_dict release];
NSMutableURLRequest* post = [NSMutableURLRequest requestWithURL: [NSURL URLWithString:@"http://myserver/upload.php"]];
[post addValue: @"multipart/form-data; boundary=_insert_some_boundary_here_" forHTTPHeaderField: @"Content-Type"];
[post setHTTPMethod: @"POST"];
[post setHTTPBody:regData];
NSURLResponse* response;
NSError* error;
NSData* result = [NSURLConnection sendSynchronousRequest:post returningResponse:&response error:&error];
NSLog(@"%@", [[[NSString alloc] initWithData:result encoding:NSASCIIStringEncoding] autorelease]);
Danke, Rossi
danke, ich gab das einen Schuss - siehe meine Änderungen, aber immer noch keine Würfel ... alles, was ich bekomme, ist der Name der Datei in der db. – Rossi
Ich habe seine generateFromData-Methode verwendet und meinen Code wie vorgeschlagen geändert. Die oben gezeigten Änderungen. Es funktioniert immer noch nicht, aber ich schätze deine Hilfe sehr! Hast du zufällig etwas anderes gesehen, was falsch sein könnte? – Rossi
SIE SIND ERNSTLICH MEIN HELD. ERNST. Danke für die Hilfe! Ich schätze das wirklich sehr! Es funktioniert und ist wirklich großartig. – Rossi