0
我正在驗證數據庫中的用戶(電子郵件地址和密碼)並回顯結果。從PHP到Android的HTTP響應字符串
if($num_rows == 1)
{
$usertypeid = mysql_fetch_array($query_result);
echo $usertypeid[0];
}
else
{
echo "invalid_user";
}
當我在一個正常的瀏覽器上測試它,它打印正是我想要的。當我從android執行http請求時,它會返回正確的字符串。但它有一些垃圾值的第一個字節,我猜這是不可見的。
HttpResponse httpResponse = httpClient.execute(httpGet);
HttpEntity httpEntity = httpResponse.getEntity();
strResult = EntityUtils.toString(httpEntity);
然後我比較strResult和最後一個字符串,並檢查它是不是失敗。
if (!strResult.equals(Konstant.HTTP_RESULT_SIGNIN_FAILURE))
所以,當strResult實際上是「invalid_user」的條件不應該通過。但它通過。
如果我使用 「的endsWith()」 而不是 「equals()方法」,它工作正常。或者如果我使用substring()消除第一個字節,然後使用equals,它工作正常。
任何人都可以請幫助我這裏發生了什麼?
您是否嘗試過使用UTF-8編碼PHP腳本文件而不使用BOM? –
@ tato.rodrigo我該怎麼做? –
你在用什麼編輯器?我使用記事本+ +和它有一個選項來轉換「格式」菜單下的文件編碼。值得一試。 –