Как сохранить значение поля ввода в PHP в базу данных, а затем назначить его переменной в JavaScript - PullRequest
0 голосов
/ 13 ноября 2018

Итак, я работаю над проектом Wordpress. Есть две отдельные страницы. Один с формой для пользователя, чтобы представить, где он может поставить свое имя. Затем я сохраняю это входное значение в пользовательской таблице в базе данных и перенаправляю пользователя на другую страницу, где он может начать принимать участие в опросе. Здесь нет проблем.

Но я хочу, чтобы пользователь после отправки формы на предыдущей странице и после перенаправления смог пройти тест с его последними набранными учетными данными, полученными из БД.

И тест основан на javascript, поэтому я хочу сохранить введенные учетные данные в переменную javascript непосредственно перед тем, как пользователь сможет начать тест. Я уже использую AJAX для доступа ко всем пользователям в базе данных. Вот как выглядит мой код:

script.js

jQuery.ajax({
    type:"POST",
    url: my_ajax_object.ajax_url,
    data: { 'action': 'call_my_ajax_handler' }
}).done(function(data) {
  console.log(data);
});

это утешает все имена в базе данных, например:

[{"name":"laimis"},{"name":"jonas"},{"name":"jans"},{"name":"frank"},...

тогда у меня есть код викторины в javascript, который вводит новый объект для вновь созданного пользователя, например:

function User (theName, theEmail) {
  this.name = theName;
  this.email = theEmail;
  this.quizScores = [];
  this.currentScore = 0;
}

var user1 = new User (theName.value, theEmail.value);

Так как я могу пройтись по массиву объектов json для доступа к значению laimis, например, чтобы присвоить его переменной в js?

1 Ответ

0 голосов
/ 13 ноября 2018

Используйте JSON.parse для преобразования строки JSON в реальную переменную:

.done(function(data) {
  console.log(data);
  var parsedData = JSON.parse(data);
  var lastItem = parsedData.pop();//it will be an array, so just figure out which index you need
  user1 = new User(lastItem.name, lastItem.email);
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...