Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何匹配文本框值,然后将特定数据更新到firebase web_Firebase_Firebase Realtime Database - Fatal编程技术网

如何匹配文本框值,然后将特定数据更新到firebase web

如何匹配文本框值,然后将特定数据更新到firebase web,firebase,firebase-realtime-database,Firebase,Firebase Realtime Database,我的数据库: var carplate=document.getElementById(“carplate”).value; var firebaseRef=firebase.database().ref('ClampedCar'); firebaseRef.orderByChild('carplate').equalTo(carplate).update({stat:“unclipped”}); 车牌号 只能对数据库引用调用update()。要获取与查询匹配的节点的引用,必须首先执行查询

我的数据库:

var carplate=document.getElementById(“carplate”).value;
var firebaseRef=firebase.database().ref('ClampedCar');
firebaseRef.orderByChild('carplate').equalTo(carplate).update({stat:“unclipped”});
车牌号

只能对数据库引用调用
update()
。要获取与查询匹配的节点的引用,必须首先执行查询

var query = firebaseRef.orderByChild('carplate').equalTo(carplate);
query.once('value', function(snapshot) {
  snapshot.forEach(function(child) {
    child.ref.update({stat:"Unclamped"});
  })
});
由于查询可能匹配多个子项,因此需要使用
snapshot.forEach()
循环<强>如果不是这样,即您的<代码> CARPATAOS/CODE >已经是唯一的,您可以考虑将您的数据模型更改为:

ClampedCar
  carPlate1: "Clamped"
  carPlate2: "Clamped"
使用此模型,您无需查询即可更改状态,只需执行以下操作:

firebaseRef.child(carplate).set("Unclamped")

我想对匹配进行验证。这样做有可能吗

var exist=query.once('value',函数(快照){
snapshot.forEach(函数(子函数){
child.ref.update({stat:“unclipped”});
})
});
如果(存在){
窗口警报(“状态更新”)
}否则{
车窗报警(“车牌不匹配”);

}
我可能会检查
snapshot.exists()
snapshot.haschilds()
,但除此之外。。。是的,应该有可能。我测试了这个声明。它仅在输入数据库中不存在的不同车牌时运行if条件