0

Android アプリケーションから、アプリケーションは php スクリプトを照会し、MySQL データベースで新しいメッセージを探します。
データの無意味な使用を防ぐために、「if」ステートメントを実装して、データベース内のメッセージが空かどうかを確認しました。メッセージが空の場合、Android アプリケーションに応答するべきではありません。

私の問題とphpコード:
ifステートメントが検出されず、データを返し続けます:

 <?php
 if($_REQUEST['pass'] == null){
     die("You Are Not Logged In");
 }

 $q=mysql_query("SELECT * FROM $tbl_name WHERE pass='".$_REQUEST['pass']."'");
 while($e=mysql_fetch_assoc($q)){
    $result1=$e['message'];

    ////Here the Message = 'No Message' but the Scrpit Continue ...

    if($result1 == 'No Message'){
       exit(0);
       die("No Message");
    }
    $output[]=$e;

    print(json_encode($output));

 }   

 if($_REQUEST['status'] != null){
     $sq2="UPDATE $tbl_name SET status='".$_REQUEST['status']."' WHERE  pass='".$_REQUEST['pass']."'";
 $result=mysql_query($sq2);
 }
 mysql_close();


 ?>
4

2 に答える 2

0

クエリは何も返さず、mysql_fetch_assocすぐに false を返し、ブロック全体をスキップします。

于 2013-02-25T12:53:02.610 に答える
-1

どうもありがとう、問題は使用して解決しました

 if($result1 == ' '){
  exit(0);
  die("No Message");}

Logcat の発言: message = null & Json Data の解析エラー、SQL インジェクションについて、注意してください ...

于 2013-02-25T12:58:32.310 に答える