Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   передача большого количества переменных из PHP в JS (https://javascript.ru/forum/dom-window/68146-peredacha-bolshogo-kolichestva-peremennykh-iz-php-v-js.html)

dasser 28.03.2017 20:42

ножно данные json_encode($data) вывести в соответствующих таким же id Полях формы

laimas 28.03.2017 20:55

Куда их вывести и зачем?

В чем сама суть вопроса:

есть записи в базе, которые нужно редактировать, которые выводятся в форму и нужно связать поля этой формы с идентификаторами записей в базе?

или

есть форма, которой нужно добавлять N записей в соответствующие поля таблицы базы?

dasser 28.03.2017 21:09

в данном случае есть форма в которой есть ряд полей, одно из них
<input name="num_contr" type="text" size="150" id="num_contr" required>
которого даеться запрос в базу и результат должен выдаваться в поля
<tr><td>....</td><td><input / type="Text" name= "pdrpvt" id="pdrpvt"></td></tr>
                    <tr><td class="corr">....</td><td><input / type="Text" name= "rzrpvt" id="rzrpvt"></td></tr>
                    <tr><td>....</td><td><input / type="Text" name= "drpvt" id="drpvt"></td></tr>
                    <tr><td class="corr">....</td><td><input / type="Text" name= "ppvt" id="ppvt"></td></tr>
                    <tr><td class="corr">....</td><td><input / type="Text" name= "dkt" id="dkt"></td></tr>

зачем, - для дальнейшей генерации документа (но это уже другая, реализованная, история)

laimas 28.03.2017 21:24

У вас код представленный, это отправка данных, по которой можно сказать следующее, что вот так отправить значение одного поля можно

{ "num_contr" : $('input[type=text]').val()}

а множества полей не стоит, есть в JQ методы для этого: .serialize() и .serializeArray().

Далее написан код обработчика полученных данных ajax_all.php. Каким тут боком и для чего echo json_encode($data); я ума не приложу.

Далее шла речь "ну так это чего-то одно... а как если много...". Много чего? Вы описываете так свою задачу, что чем дальше тем темнее.

В сторону пока JS. Есть поля в базе: a, b и c, и записи под id 10 и 12. Требуется получить эти записи, отредактировать и обновить их в базе. Для этого получаем записи из базы и в цикле строим форму. Связываем имена полей формы по ключам базы (записей):

<form method="post">
<input name="as[10][a]" value="value a-1" />
<input name="as[10][b]" value="value b-1" />
<input name="as[10][c]" value="value c-1" />
<input name="as[12][a]" value="value a-2" />
<input name="as[12][b]" value="value b-2" />
<input name="as[12][c]" value="value c-2" />
<button>GO</button>
</form>

Отправьте эту форму и выведите полученное:

<pre>
print_r($_POST);
<pre>


Понятно по этому массиву, что и как обновить? Нужны ли для этого ID у полей формы?

laimas 28.03.2017 21:26

У вас же в коде какая-то кнопка "генерить", чего генерить...

Если речь идет о запросе в базу и построение формы по JSON данным ответа, то причем тут { "num_contr" : $('input[type=text]').val()} в запросе?

Вы конкретно можете описать задачу или...?

dasser 28.03.2017 21:40

мне не нужно в цикле строить форму, не нужно обновлять дане в базе. Зачем усложнять у уточнять (переделывать в корне) то что уже сделано? нужно только одно: данные массива json_encode($data);
$data = array(
    'pdrpvt' => $row['pdrpvt'],
    'rzrpvt' => $row['rzrpvt'],
    'drpvt' => $row['drpvt'],
    'ppvt' => $row['ppvt'],
    'dkt' => $row['dkt'],
    ...

т.е. каждую переменную вывести в уже готовые поля формы. разве это не понятно было изначально?

dasser 28.03.2017 21:44

я не буду выливать всю форму сюда, чего вы добиваетесь. есть конретная задача с узким направлением, вот я ее и пытаюсь решить

laimas 28.03.2017 21:46

Цитата:

Сообщение от dasser
разве это не понятно было изначально?

Вы на код свой посмотрите, разве из него что-то можно понять, тем более о JSON?

Я вас русским языком и об этом спрашивал - форма строится на клиенте по JSON данным получаемым из базы? Каков ваш ответ был?

Я же не ясновидящий, а код и главное комментарий к нему вообще не понять.

dasser 28.03.2017 21:52

Цитата:

Сообщение от laimas (Сообщение 448761)
Я вас русским языком и об этом спрашивал - форма строится на севере по JSON данным получаемым из базы?

Цитата:

Сообщение от dasser
Что вам мешает связать имена полей с идентификаторами из базы?
собственно у меня так и есть.

но, форма не строиться на сервере!

laimas 28.03.2017 21:55

Цитата:

Сообщение от dasser
но, форма не строиться на сервере!

Это я ошибся, и исправил. ;)

Словами задачу опишите что к чему и причем тут проблемы с pr1 - pr1p, вкупе с отправкой $('input[type=text]').val(), и как это увязать с JSON?


Часовой пояс GMT +3, время: 17:24.