Как создать URL с той же таблицей, как показано на картинках - PullRequest
0 голосов
/ 06 января 2019

Все работает нормально, но я хочу сделать URL с той же таблицей контактов с URL. Я пытаюсь сделать, когда у пользователя была форма запроса, он показывает все в таблице.

this is the picture of table

var config = {
     apiKey: "=================",
    authDomain: "=================",
    databaseURL: "================",
    projectId: "===========",
    storageBucket: "====================",
    messagingSenderId: "====================="
};

//initialize firebase
   firebase.initializeApp(config);
   var database = firebase.database();
   var storage = firebase.storage();
   var firebaseContactsCollection = database.ref().child('ContactUs');

function submitOrder() {

    var data = {

        Name: $('#NameField').val(),
        Email: $('#EmailsField').val(),
        Subject: $('#SubjectField').val(),
        Message: $('#MessageField').val(),
     //   file: $('#fileButton').val(),
    };

    firebaseContactsCollection.push(data);


};


var fileButton = document.getElementById('fileButton');

function URL(snap) {
    var url = snap.downloadURL;

       firebase.database().ref().child('ContactUs').push(url);

}


function img() {

    var folder = this.files[0];

    var getf = storage.ref("ContactUsImagesfiles/" + new Date());
    getf.put(folder).then(URL);
}

fileButton.onchange = img;

1 Ответ

0 голосов
/ 06 января 2019

Ваша проблема в том, что вы звоните push() каждый раз, когда сохраняете данные. Метод push() отличается от set() тем, что он создает уникальный идентификатор и сохраняет ваши данные в качестве дочернего элемента ниже этого. Пока set() будет просто хранить данные по вашей ссылке.

Вы можете позвонить push(), не сохраняя никаких данных , чтобы получить уникальный идентификатор для работы. Сначала сделайте это как глобальную переменную или что-то, что вы можете передать в свои функции.

// Get a key for a your form
var firebaseContactsCollection = database.ref().child('ContactUs');
var newFormSubmissionKey = firebaseContactsCollection.push().key;

function submitOrder() {
  // ...
  firebaseContactsCollection.child(newFormSubmissionKey).set(data);
}

function URL(snap) {
  var url = snap.downloadURL; 
  firebaseContactsCollection.child(newFormSubmissionKey).child("url").set(url);
}

Когда вы сохраняете URL во второй функции, не забудьте также сделать ссылку на узел, на котором вы хотите сохранить его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...