Autore Topic: problema json php  (Letto 493 volte)

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
problema json php
« il: 24 Settembre 2011, 13:18:08 CEST »
0
buongiorno ragazzi,ho eseguito questo codice
Codice (Java): [Seleziona]
public class connessione_db {
public boolean login(String m,String sp) throws JSONException, NoSuchAlgorithmException{
    String result="";
    List<NameValuePair>namevalue=new ArrayList<NameValuePair>(2);
    InputStream is = null;
    try{
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://www.maresport.eu/android/login.php");
        namevalue.add(new BasicNameValuePair("mail", m));
        namevalue.add(new BasicNameValuePair("psw", sp));
        httppost.setEntity(new UrlEncodedFormEntity(namevalue));
        HttpResponse response = httpclient.execute(httppost);
        HttpEntity entity = response.getEntity();
         is= entity.getContent();
}catch(Exception e){
      Log.e("log_tag", "Error in http connection "+e.toString());
}
//convert response to string
try{
        BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
        StringBuilder sb = new StringBuilder();
        String line = null;
        while ((line = reader.readLine()) != null) {
            line=line+"\n";
            sb.append(line);
        }
        is.close();
        result = sb.toString();
}catch(Exception e){
        Log.e("log_tag", "Error converting result "+e.toString());
}

//parse json data
try{
        JSONArray jArray = new JSONArray(result);
        Log.i("log_tag", jArray.getString(2));
        /*for(int i=0;i<jArray.length();i++){
                JSONObject json_data = jArray.getJSONObject(i);
                  Log.i("log_tag","mail: "+json_data.getInt("mail")+
                        ", name: "+json_data.getString("nome")+
                        ", co: "+json_data.getInt("cognome")+
                        ", birthyear: "+json_data.getInt("password")
                );
                /* MessageDigest md5 = MessageDigest.getInstance("MD5");
                byte[] passByte=sp.getBytes();
                md5.update(passByte);
                byte [] passCifrataByte = md5.digest();
                String ps=new String(passCifrataByte);
                if(json_data.getString("mail").matches(m) && json_data.getString("password").matches(ps))
                    return true;*/

        //}
}
catch(JSONException e){
        Log.e("log_tag", "Error parsing data "+e.getMessage());
}
    return false;
}
}
ed ho fatto il codice php nel mio db remoto ed il collegamento va a buon fine ed anche il resto:
Codice: [Seleziona]
<?php
require_once("util/cn_db.php");
$mail=$_REQUEST["mail"];
$psw=$_REQUEST["psw"];
$p=md5($psw);
$db=connetti_android();
$query="SELECT mail,password,nome,cognome FROM Utente where mail='$mail' and password='$p'";
while($e=mysql_fetch_assoc($query))
        $output[]=$e;
print(json_encode($output));
mysql_close($db);
?>
però quando arrivo al json mi fa in eccezzione ed il logcat mi dice
Codice: [Seleziona]
E/log_tag (  784): Error parsing data org.json.JSONException: A JSONArray text must start with '[' at character 1 of null
E/log_tag (  784): A JSONArray text must start with '[' at character 1 of null
I/NotificationService(   51): enqueueToast pkg=org.me.demo.maresport callback=android.app.ITransientNotification$Stub$Proxy@44cec930 duration=0

qualcuno mi può aiutare
grazie
« Ultima modifica: 24 Settembre 2011, 14:40:38 CEST da bart »

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:problema json php
« Risposta #1 il: 24 Settembre 2011, 15:24:13 CEST »
0
risolto mi ero dimenticato nel php
Codice: [Seleziona]
$res=mysql_query($query);
while($e=mysql_fetch_assoc($res))
        $output[]=$e;
grazie mille 8-)

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:problema json php
« Risposta #2 il: 25 Settembre 2011, 14:47:16 CEST »
0
buongiorno ragazzi io ho un codice php che consente all utente di registrarsi,però vorrei fare in modo che se l'utente è gia presente mi imposta un flag nel json a 1 altrimenti a 0 ed ho fatto cosi nel mio codice php
Codice: [Seleziona]
$qu="select mail from Utente where mail='$mail'";
$res=mysql_query($qu);
$res=  mysql_query($qu);
$num=mysql_num_rows($res);
if($num==1){
    $A=array("presente" => 1);
        print json_encode($A);
}
else{
$qu="INSERT INTO Utente (nome,cognome,password,mail,citta,indirizzo) VALUES (\"$noe\",  \"$cognome\", \"$p\", \"$mail\", \"$citta\", \"$ind\")";
$res=mysql_query($qu);
$A=array("presente" => 0);
        print json_encode($A);
però quando vado a leggere mi va in eccezzione dandomi
Codice: [Seleziona]
E/log_tag (  279): Error parsing data org.json.JSONException: A JSONArray text must start with '[' at character 1 of {"presente":"1"}
E/log_tag (  279): A JSONArray text must start with '[' at character 1 of {"presente":"1"}
come posso risolvere?
grazie

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:problema json php
« Risposta #3 il: 25 Settembre 2011, 15:13:20 CEST »
0
Ti ricordo che questo è un forum di programmazione Android e ti invito di conseguenza a evitare di continuare ad aprire thread in cui chiedi supporto relativo ad altri linguaggi. Ulteriori thread di questo genere verranno chiusi/eliminati senza preavviso.

Offline bart

  • Utente junior
  • **
  • Post: 133
  • Respect: 0
    • highlanderteam
    • BBartsv
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy tab
  • Play Store ID:
    barth
  • Sistema operativo:
    ubuntu 11.04,mac os leopard,windows7
Re:problema json php
« Risposta #4 il: 25 Settembre 2011, 15:21:34 CEST »
0
si scusa è che non ho trovato niente onile per risolverlo