Skip to content Skip to sidebar Skip to footer

Search Elements Object With Specific Key Value In Firebase Database

I am trying to search with specific value with of userkey in firebase database but i am getting below issues. I want to fetch like if i pass user key 11112 then two records will co

Solution 1:

There is two problems with your code.

  1. As @theblindprophet already mentioned, you should be using orderByChild instead of orderBy.
  2. You are using the old firebase SDK. It won't work with applications created in the new firebase console.

    Please make sure to use the new 3.1 firebase sdk with

    <scripttype='text/javascript'src='https://www.gstatic.com/firebasejs/3.1.0/firebase.js'></script>

    Then you should initialize your app using

      var config = {
        apiKey: "",
        authDomain: "",
        databaseURL: "",
        storageBucket: "",
      };
      firebase.initializeApp(config);
    

    You will be able to get your config details by going to the console, clicking in your application name and pressing Add Firebase to your Web app.

    Then to get your ref object you will need the code bellow.

    var ref = firebase.database().ref();

Take a look in this jsFiddle to see a full working example.

Solution 2:

Your error:

Uncaught TypeError: ref.orderBy is not a function

is telling it can't find the function orderBy and that is because it doesn't exist.

You are looking for orderByChild.

var ref = newFirebase('fire-base-url');
ref.orderByChild("userkey").equalTo("11112").once("value", function(snapshot) {
    console.log(snapshot.key);
});

Reference: orderByChild and equalTo

Solution 3:

Grab a snapshot of the uid values. Then compare userkey with the search parameter you pass in.

var rootRef = newFirebase('fire-base-url');
var userRef = rootRef.child(user.uid);
userRef.on('value', function(snapshot){
  var myDbKey = snapshot.child("userkey");
  if (mySearchKey === myDbKey) {
    ...
  }
});

Post a Comment for "Search Elements Object With Specific Key Value In Firebase Database"