0

I am creating application where the user enters data to search and then application sends it to server and then server sends search result back to the client.

I am getting error with i am not able to understand what it means. I am getting exact result from the server.

here is my networking code from there application and here is link to full code

     public class GetDatafromDB_Searchresult {
            String response1 ;


            public String getDataFromDB() {
 httpclient = new DefaultHttpClient();
                    httppost = new HttpPost("http://192.168.0.106/test/search.php"); // make sure the url is correct.
                    //add your data
                    nameValuePairs = new ArrayList<NameValuePair>();
                    // Always use the same variable name for posting i.e the android side variable name and php side variable name should be similar,
                    nameValuePairs.add(new BasicNameValuePair("carat1", strcarat1.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("carat2", strcarat2.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("carat1", strcolor1.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("carat2", strcolor2.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("clarity1", strclarity1.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("clarity2", strclarity2.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("cut1", strcut1.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("cut2", strcut2.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("shape1", strshape1.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("shape2", strshape2.toString().trim()));
                    nameValuePairs.add(new BasicNameValuePair("stones", strstone.toString().trim()));


                    // $Edittext_value = $_POST['Edittext_value'];

                        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                        //Execute HTTP Post Request


                try {
                        response = httpclient.execute(httppost);
                    HttpEntity entity= response.getEntity();
                    {
                        if(entity!=null)
                        {
                            entity.consumeContent();
                        }
                    }

                    ResponseHandler<String> responseHandler = new BasicResponseHandler();
                     response1 = httpclient.execute(httppost, responseHandler);
                    System.out.println("Response : " + response1);

                } catch (Exception e) {
                    e.printStackTrace();
                    System.out.println("Exception : " + e.getMessage());

                }


                return response1.trim();

            }
        }

here is my server side code

<?php
$hostname_localhost ="localhost";
$database_localhost ="testdb";
$username_localhost ="root";
$password_localhost ="";
$localhost = mysql_connect($hostname_localhost,$username_localhost,$password_localhost)
or
trigger_error(mysql_error(),E_USER_ERROR);

 mysql_select_db($database_localhost, $localhost);

$carat1 = $_POST['carat1'];
$carat2 = $_POST['carat2'];
$clarity1 = $_POST['clarity1'];
$clarity2 = $_POST['clarity2'];
$color1 = $_POST['color1'];
$color2 = $_POST['color2'];
$cut1 = $_POST['cut1'];
$cut2 = $_POST['cut2'];
$shape1 = $_POST['shape1'];
$shape2 = $_POST['shape2'];
$stones = $_POST['stones'];

$query_search ="Select * from search1 where carats Between '$carat1' and '$carat2' and 
color = '$color1' or color =  '$color2' and cut = '$cut1' or cut = '$cut2' and shape = '$shape1' or shape =  '$shape2' and stone ='$stones' ";

$query_exec = mysql_query($query_search) or die(mysql_error());


    while($row=mysql_fetch_assoc($query_exec))
            $json_output[]=$row;
      echo json_encode($json_output);

    mysql_close();

?>

Also i did change echo json_encode($json_output); to print(json_encode($json_output)); and still there is no chamnge in output

here is my output from logcat.

06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: color1 in C:\wamp\www\test\search.php on line <i>16</i></th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0010</td><td bgcolor='#eeeeec' align='right'>147496</td><td bgcolor='#eeeeec'>{main}(  )</td><td title='C:\wamp\www\test\search.php' bgcolor='#eeeeec'>..\search.php<b>:</b>0</td></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ </table></font>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <br />
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: color2 in C:\wamp\www\test\search.php on line <i>17</i></th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0010</td><td bgcolor='#eeeeec' align='right'>147496</td><td bgcolor='#eeeeec'>{main}(  )</td><td title='C:\wamp\www\test\search.php' bgcolor='#eeeeec'>..\search.php<b>:</b>0</td></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ </table></font>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ [{"id":"4","product_code":"4","shape":"Asscher","pair":"jgj","carats":"1.8","color":"G","clarity":"VS2","service":"iuhi","polish":"hiihi","symetric":"hih","tables":"ihi","measurments":"hi","flourscne":"hi","description":"ih","certificated":"hjgj","ccode":"hjgj","cut":"Signature Ideal","total":"iuhiu","file":"hiuhih","stone":"Single"}]
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <br />
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: color1 in C:\wamp\www\test\search.php on line <i>16</i></th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0010</td><td bgcolor='#eeeeec' align='right'>147496</td><td bgcolor='#eeeeec'>{main}(  )</td><td title='C:\wamp\www\test\search.php' bgcolor='#eeeeec'>..\search.php<b>:</b>0</td></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ </table></font>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <br />
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: color2 in C:\wamp\www\test\search.php on line <i>17</i></th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ <tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0010</td><td bgcolor='#eeeeec' align='right'>147496</td><td bgcolor='#eeeeec'>{main}(  )</td><td title='C:\wamp\www\test\search.php' bgcolor='#eeeeec'>..\search.php<b>:</b>0</td></tr>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ </table></font>
06-06 12:10:19.825    1237-1566/com.diamond.traders I/System.out﹕ [{"id":"4","product_code":"4","shape":"Asscher","pair":"jgj","carats":"1.8","color":"G","clarity":"VS2","service":"iuhi","polish":"hiihi","symetric":"hih","tables":"ihi","measurments":"hi","flourscne":"hi","description":"ih","certificated":"hjgj","ccode":"hjgj","cut":"Signature Ideal","total":"iuhiu","file":"hiuhih","stone":"Single"}]
06-06 12:10:19.825    1237-1237/com.diamond.traders E/log_tag﹕ Error parsing data org.json.JSONException: Value <br of type java.lang.String cannot be converted to JSONArray
4
  • Your server is not returning JSON. You are trying to parse HTML as JSON. This is definitely going to give exception. Commented Jun 6, 2014 at 6:50
  • can you tell me what changes i need to do?? i am using similar code for my other classes and it is working perfectly. Commented Jun 6, 2014 at 6:52
  • I am sorry, I only know about Android. I can show you the path, but can't tell you how to do it. You'll have to search, how to return JSON data from server. Commented Jun 6, 2014 at 6:55
  • it's fine. Just tell me the steps and i will do the changes. Commented Jun 6, 2014 at 6:57

1 Answer 1

1

You are return HTML code from your database you should change the result of the statement from the database.

problem: You forgot to you put color parameter in your NameValuePairs from this php parameter

    $color1 = $_POST['color1'];
$color2 = $_POST['color2'];
Sign up to request clarification or add additional context in comments.

5 Comments

can you tell me how to do it? i am using similar server side for other classes and it is working perfectly.
@SamvidKulkarni so when you try it on a PC's website it will return in json format?
i don't have website. My client is my android application and output is shown on android application only. Also the format has to be in JSON.
@SamvidKulkarni in your databse try your statement and check the result in there
i did check my statement by running the query in phpmyadmin and i am getting perfect result.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.