Site icon IT Tutorial

Android Programlama -30 Firebase Select İşlemi

Merhaba arkadaşlar bu gün ki makalemde firebase database’e kaydettiğimiz verileri uygulama içinde nasıl kullanabileceğimizi göreceğiz.

Bir önceki makalemde firebase veri kaydetmeye değinmiştim. Buradan okuyabilirsiniz.

package com.example.teka.icim_rahat;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.PersistableBundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.FragmentActivity;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;

import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.FirebaseUser;
import com.google.firebase.auth.GoogleAuthProvider;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.Arrays;


public class MainActivity extends AppCompatActivity {
EditText kadi, sifre;
Button gris, Kaydol;
ImageView resim;

DatabaseReference myRef;
FirebaseDatabase database;
FirebaseAuth mAuth;

String sfre = null, kullaniciadi = null;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//tanımlamalar

kadi = (EditText) findViewById(R.id.kullanici);
sifre = (EditText) findViewById(R.id.sifre);
gris = (Button) findViewById(R.id.gris);
Kaydol = (Button) findViewById(R.id.kaydol);
resim = (ImageView) findViewById(R.id.images);

database = FirebaseDatabase.getInstance();
myRef = database.getReference("kullanicilar");


mAuth = FirebaseAuth.getInstance();

// griş buttonuna tıklanınca
gris.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
verigetir();

}
});

} 
public void verigetir(){
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {

for (DataSnapshot verigetir : dataSnapshot.getChildren()) {
kullanici value = verigetir.getValue(kullanici.class);

if(value.sifre!=null){
if (value.sifre.equals(sifre.getText().toString()) && value.kullaniciadi.equals(kadi.getText().toString())) {

Intent into = new Intent(MainActivity.this, Icim_Rahat.class);
into.putExtra("giden",value.kullaniciadi);
startActivity(into);
finish;
}
}}
else{
Toast.makeText(MainActivity.this, "Giriş Başarısız Olmuştur!!",Toast.LENGTH_SHORT).show();
}}

Bir önceki makalede kullanıcı kayıt sayfasının kodlamasını yapmıştık. Bu makalede ise login sayfasının kodlamasını yapacağız. Öncelikle kullanıcının girmiş olduğu kullanıcı adı ve şifre değerlerini alıp veri tabanında kayıtlı olan kullanıcılar ile karşılaştıracağız. Öncelikle datadase ve database referans değişkenlerimizi oluşturuyoruz. Referans değişkenini tablo ismi ile oluşturuyoruz. Verigetir fonksiyonu ile veri tabanında kayıtlı olan kullanıcılar satır satır getirilip tek tek karşılaştırma yapılır. Kayıtların tek tek getirilmesini for döngüsü sayesinde sağlıyoruz.  Kullanıcı kayıtlı ise diğer sayfaya geçiş yapılacaktır. Kayıtlı değil ise toast mesajı ile hatalı giriş yaptığı kullanıcıya gösterilecektir.

Bir makalenin daha sonuna geldik, esenle kalın..

 

 

 

 

Exit mobile version