0

コーディングのこの部分にエラーはありますか? 特定の問題がどこにあるのかわかりません。私の結果として= null。PHPに渡してPHPサーバーの応答を取得した後。必要なデータを取得できませんでした。デバッグでエラーは発生せず、アプリケーションは機能していますが、プログラムしたとおりに実行されません...この部分からループホールを見ることができる人はいますか?

    BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-    1"),8);

                sb = new StringBuilder();

                sb.append(reader.readLine() + "\n");

                String line="0";

                while ((line = reader.readLine()) != null) {

                sb.append(line + "\n");
                }
                is.close();
                result=sb.toString();

PHPコーディング側

 $db_host = "localhost";
 $db_username = "root";
 $db_pass = "trickster911";
 $db_name = "track_database";

 @mysql_connect("$db_host","$db_username","$db_pass") or die ("Could not connect to database");
 @mysql_select_db("$db_name");


 $imei = $_POST['code3'];


 $sql=("SELECT latitude, longitude FROM track WHERE imei = ('$imei')") or die (mysql_error());
 $result=mysql_query($sql);


 if($result){
 echo "Y";
 }

 else {
 echo "N";
 }
 $output = array();
  while($row=mysql_fetch_assoc($result))    
  $output[]=$row;
   print(json_encode($output));
   mysql_close();

 ?>

デバッグ後、

 JSONTokener.nextCleanInternal() line: 112  
 JSONTokener.nextValue() line: 90   
 JSONObject.<init>(JSONTokener) line: 154   
 JSONObject.<init>(String) line: 171    
 Tracking$1.onClick(View) line: 119 
 Button(View).performClick() line: 2408 
 View$PerformClick.run() line: 8816 
 ViewRoot(Handler).handleCallback(Message) line: 587    
 ViewRoot(Handler).dispatchMessage(Message) line: 92    
 Looper.loop() line: 123    
 ActivityThread.main(String[]) line: 4627   
 Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not      available [native method]    
 Method.invoke(Object, Object...) line: 521 
 ZygoteInit$MethodAndArgsCaller.run() line: 868 
 ZygoteInit.main(String[]) line: 626    
 NativeStart.main(String[]) line: not available [native method] 
4

1 に答える 1

0

それ以外の:

$sql=("SELECT latitude, longitude FROM track WHERE imei = ('$imei')") or die (mysql_error());

これを試して:

$sql=("SELECT latitude, longitude FROM track WHERE imei = '".$imei."'") or die (mysql_error());

よくわかりませんが、おそらくあなたの問題はこれが原因です。問題が解決するかどうか、フィードバックをお寄せください。

于 2012-05-27T19:42:08.957 に答える