REVELAR

Fórum Validando o valor de uma String #516003

07/04/2015

0

Boa tarde pessoal, segue:


txtRecebeDados = (TextView) findViewById(R.id.txtRecebeDados);
		
		Intent i = getIntent();
		String user = i.getStringExtra("usuario").toString();
		String pass = i.getStringExtra("senha").toString();
		
		List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
		nameValuePairs.add(new BasicNameValuePair("usuario", user));
		nameValuePairs.add(new BasicNameValuePair("senha", pass));

		try {           

		    HttpClient httpclient = new DefaultHttpClient();
		    HttpPost httppost = new HttpPost("URL");
		    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
		    ResponseHandler<String> responseHandler = new BasicResponseHandler();

		    SetServerString = httpclient.execute(httppost, responseHandler);
		    
		    //txtRecebeDados.setText(SetServerString);

		}  catch(Exception ex) {
		    // failed
			ex.printStackTrace();
			txtRecebeDados.setText(ex.toString());
		}
		
		if(SetServerString.equals("1")) {
	    	txtRecebeDados.setText("Logado");
	    } else {
	    	txtRecebeDados.setText("Erro");
	    }



O problema é o seguinte: se eu fizer txtRecebedados.setText(SetServerString), ele printa na tela do emulador o valor 1. Porém, quanto tento validar dentro do if/else, ele sempre cai no else.

Vejam como estou fazendo a validação:


if(SetServerString.equals("1")) {
	    	txtRecebeDados.setText("Logado");
	    } else {
	    	txtRecebeDados.setText("Erro");
	    }



Ele deveria printar na tela do emulador "Logado", visto que o valor quando verdadeiro é 1. Alguém por gentileza pode ajudar?

Abraço a Todos!
Jefferson Ferreira

Jefferson Ferreira

Responder

Posts

07/04/2015

Andre Santos..

opa

coloque assim

SetServerString.trim()

la depois


try {

......

SetServerString = httpclient.execute(httppost, responseHandler);
Responder

Gostei + 0

08/04/2015

Jefferson Ferreira

Olá DevAndroid, obrigado por responder, porém, não funcionou. Eu já havia usado replaceAll, porém, também não funcionou. Tem alguma outra sugestão?

Abraço!
Responder

Gostei + 0

08/04/2015

Andre Santos..

ja fez isso aqui

if(SetServerString.trim().equals("1"))
Responder

Gostei + 0

08/04/2015

Jefferson Ferreira

Olá DevAndroid, também não funcionou. Nunca havia passado por isso antes. Continuo a tentar resolver. Qualquer outra sugestão, agradeço.

Abraço!
Responder

Gostei + 0

08/04/2015

Andre Santos..

vc esta fazendo isso junto com o php ou é outra linguagem?
Responder

Gostei + 0

08/04/2015

Jefferson Ferreira

DevAndroid, estou usando php. Eu fiz uma tela de login em Android. Ao digitar usuário e senha, é chamado uma página php, onde recebe os dados via método post. O retorno desta página em php, é um mysql_num_row, e quando verdadeiro retorna 1, caso contrário, retorna 0.

Se eu mandar imprimir o retorno no meu emulador, ele retorna corretamente o resultado vindo do php.

Realmente, não consigo é validar dentro do if/else. Sempre cai no else(falso), mesmo retornando verdadeiro do php.
Responder

Gostei + 0

08/04/2015

Andre Santos..

Procura no youtube aulas do neri android

q ele vai ter um exemplo la de fazer login e senha usando android e php...
Responder

Gostei + 0

08/04/2015

Jefferson Ferreira

Obrigado pela indicação DevAndroid.

Abraço!
Responder

Gostei + 0

08/04/2015

Andre Santos..

ou entao troque la o resultado q esta no php de 1 para Y

ai depois vc faz assim

if(SetServerString.trim().equals("Y"))

q eu acho tbm q naum vai dar certo...

mas naum custa nada tentar
Responder

Gostei + 0

08/04/2015

Jefferson Ferreira

DevAndroid nada também. Hoje a noite, irei assistir a vídeo aula que você indicou.

Obrigado. Abraço!
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar