Android Question Problem with Json

Alisson

Active Member
Licensed User
Hello.

I have one problem com Json.
The response of the brownser it's ok.
But my aplication stopped.

This my code php:


PHP:
<?php
$host = "localhost";
$db = "android";
$user = "user";
$pw = "pw";

$con = mysql_connect($host, $user, $pw) or die(mysql_error());
mysql_select_db($db) or die(mysql_error());
$pass_word = $_GET['pass_word'];
// not use it GET
$query = "SELECT pass_word FROM tbl_member WHERE user_id='b4a'";
$sth = mysql_query($query);
if (mysql_error()) {
    header("HTTP/1.1 500 Internal Server Error");
    echo $query.'\n';
    echo mysql_error();
}
else
{
    $rows = array();
    while($r = mysql_fetch_assoc($sth)) {
        $rows[] = $r;
    }
    print json_encode($rows);
}

?>

The code of teh app:

B4X:
#Region  Project Attributes
    #ApplicationLabel: B4A Example
    #VersionCode: 1
    #VersionName:
    'SupportedOrientations possible values: unspecified, landscape or portrait.
    #SupportedOrientations: unspecified
    #CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes
    #FullScreen: False
    #IncludeTitle: True
#End Region

Sub Process_Globals
    'These global variables will be declared once when the application starts.
    'These variables can be accessed from all modules.

End Sub

Sub Globals
    'These global variables will be redeclared each time the activity is created.
    'These variables can only be accessed from this module.
    Dim Json As JSONParser
    Dim j As HttpJob
    Dim Lista As ListView
    Dim ret As String
    Dim act As String
    Dim parser As JSONParser
    Dim m As Map
End Sub

Sub Activity_Create(FirstTime As Boolean)
    'Do not forget to load the layout file created with the visual designer. For example:
    'Activity.LoadLayout("Layout1")
    j.Initialize("donwload",Me)
    j.Download2("http://192.168.0.244/json.php", Array As String ("pass_word","pass_word"))
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub JobDone (Job As HttpJob)
  If Job.Success = True Then
       ret = Job.GetString
     parser.Initialize(ret)  
     m=parser.NextObject
     Msgbox(m.Get("pass_word"),"")
  Else
      ToastMessageShow("Error: " & Job.ErrorMessage, True)
  End If
  Job.Release
End Sub

I use the link to test my app and it's ok:

http://md5.jsontest.com/?text=b4a

I look the video:
If use my url, my app stopped.
And this my url json:

http://intra.modalbox.com.br:7244/json.php?pass_word=password

I wait one help!!!

Thanks guys!!!
 
Last edited:

DonManfred

Expert
Licensed User
Longtime User
Set the encoding of the php-file to UTF-8 without BOM
Additional i DO NOT WATCH 30 minutes video to see a problem. You should post the error from the log if you get an error.
Or only show 5 seconds with the info....
 
Upvote 0

Alisson

Active Member
Licensed User
DonManfred.
I changed for it:


PHP:
$con = mysql_connect($host, $user, $pw) or die(mysql_error());
mysql_select_db($db) or die(mysql_error());
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET NAMES 'utf8'");

$query = "SELECT pass_word FROM tbl_member where user_id = 'b4a'";
$sth = mysql_query($query);
if (mysql_error()) {
    header("HTTP/1.1 500 Internal Server Error");
    echo $query.'\n';
    echo mysql_error();
}
else
{
    $rows = array();
    while($r = mysql_fetch_assoc($sth)) {
        $rows[] = $r;
    }
    print json_encode($rows);
}

Continue stopped!
 
Upvote 0
Top