php - c# http post data with parameters and save it to mysql -
i use code in c# app post data:
void postdata() { webclient wc = new webclient(); var uri = new uri("http://my-real-address.com/test.php"); string myparameter = "?parameter=test"; wc.headers["content-type"] = "application/x-www-form-urlencoded"; wc.uploadstringcompleted += new uploadstringcompletedeventhandler(wc__uploadstringcompleted); wc.uploadstringasync(uri, myparameter); } void wc__uploadstringcompleted(object sender, uploadstringcompletedeventargs e) { try { messagebox.show(e.result); } catch (exception exc) { messagebox.show(exc.tostring()); } } and content of test.php:
<?php $save = $_get['parameter']; //db auth settings $dbhost = 'localhost'; $dbuser = 'user'; $dbpass = 'password'; if ($save != "") { $conn = mysql_connect($dbhost, $dbuser, $dbpass); if(! $conn ) { die('could not connect: ' . mysql_error()); } $sql = "insert users (parameter) values ('$save')"; mysql_select_db('database'); $retval = mysql_query( $sql, $conn ); if(! $retval ) { die( mysql_error() ); } mysql_close($conn); } ?> i don't know why c# app open messagebox without text , data not stored in mysql database. if , open same url parameters in web browser works great.
i not sure if: string myparameter = "?parameter=test" correct tried chaning to: string myparameter = "parameter=test" same results.
any idea?
you passing parameter, not uri-extension. rid of question-mark.
void postdata() { webclient wc = new webclient(); var uri = new uri("http://my-real-address.com/test.php"); //string myparameter = "?parameter=test"; string myparameter = "parameter=test"; // <---------- ! wc.headers["content-type"] = "application/x-www-form-urlencoded"; wc.uploadstringcompleted += new uploadstringcompletedeventhandler(wc__uploadstringcompleted); wc.uploadstringasync(uri, myparameter); } everything else looks me.
Comments
Post a Comment