Hi all,
I have an android application which communicates with a php page to insert data into mysql table. it was functioning well on an windows server. Recently we were forced to move the application to a linux sever for some other reason. After that some error is returned. When I cross checked every thing, no data is received from the android application to the php page.
Android send data using post method. Content type is "application/x-www-form-urlencoded". Data is encoded using UTF-8 format.
I can see the variables values correctly in android app. But when we fetch it in Php page "null" is returned. When we assign a value in php page it works
The same code was working finely on windows server. So I have concluded that problem was with the server settings.
Default charset of server was not UTF-8 and I asked server team to set it so and they did the same adding the following code .htaccess file
// .htaccess code
suPHP_ConfigPath /home/mydom/php.ini
## EXPIRES CACHING ##
<ifmodule mod_expires.c="">
ExpiresActive On
ExpiresByType image/jpg "access 1 week"
ExpiresByType image/jpeg "access 1 week"
ExpiresByType image/gif "access 1 week"
ExpiresByType image/png "access 1 week"
ExpiresByType text/css "access 1 week"
ExpiresByType application/pdf "access 1 week"
ExpiresByType application/x-javascript "access 1 week"
ExpiresByType application/x-shockwave-flash "access 1 week"
ExpiresByType image/x-icon "access 1 week"
ExpiresDefault "access 2 days"
## EXPIRES CACHING ##
<ifmodule mod_gzip.c="">
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
<ifmodule mod_php5.c="">
php_value default_charset "UTF-8"
<ifmodule mod_php5.c="">
php_value safe_mode off
<ifmodule mod_php4.c="">
php_value safe_mode off
Is there any other setting to be changed or added in .htacess to get it working
Android code
String pdts=jsonobj.toString();
String citms=citm.toString();
url = new URL("http://www.mydom.in/myphppage.php");
String pdtsenc=URLEncoder.encode(pdts, "UTF-8");
String citmsenc=URLEncoder.encode(citms, "UTF-8");
String param = "cdt=" + pdtsenc +
"&idt=" + citmsenc;
conn=(HttpURLConnection)url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setFixedLengthStreamingMode(param.getBytes().length);
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
PrintWriter out = new PrintWriter(conn.getOutputStream());
out.print(param);
out.close();
Php code
$cdt = urldecode($_POST['cdt']);
$cdt = json_decode($cdt , true);
$idt = urldecode($_POST['idt']);
$idt = json_decode($idt , true);
Please suggest a solution for this
Thanks in Advance!!!
What I have tried:
I have tried changing default charset of server to UTF-8. but did not work