Как получить внутреннее содержимое базы данных/таблицы в TYPO3 и отобразить его с помощью JavaScript, JQuery или AJAX

Я новичок в TYPO3 и должен сказать, что это очень сложно, но я изо всех сил стараюсь.

Мне просто нужен простой способ получить содержимое из внутренней таблицы базы данных TYPO3, которую я создал, и перенаправить его в JavaScript/JQuery/AJAX.

Моя BootstrapTable работает, но просто отображает статический контент из var data.

Я знаю, что есть способы из pageType, eID и $GLOBALS['TYPO3_DB']->exec_SELECTgetRows( /* ... */ ); получить содержимое таблицы базы данных, но как передать его в JavaScript и отобразить?

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

Ищу этот ответ с 2 дней, но не могу найти простого и правдоподобного ответа. Или мне нужно пройти долгий путь через eID или pageType?

Изменить из-за комментария:

Вот мой JavaScript с bootstrapTable:

$(function () {
    $('#table').bootstrapTable({
        idField: 'name',
        pagination: true,
        search: true,
        data: data,
        columns: [{
            field: 'name',
            title: 'Name'
        }, {
            field: 'stargazers_count',
            title: 'Stars'
        }, {
            field: 'forks_count',
            title: 'Forks'
        }, {
            field: 'description',
            title: 'Description'
        }],
        onPostBody: function () {
            $('#table').editableTableWidget({editor: $('<textarea>')});
        }
    });
});

var data = [{
        "name": "bootstrap-table",
        "stargazers_count": "526",
        "forks_count": "122",
        "description": "An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3) "
    }, {
        "name": "multiple-select",
        "stargazers_count": "288",
        "forks_count": "150",
        "description": "A jQuery plugin to select multiple elements with checkboxes :)"
    }, {
        "name": "bootstrap-show-password",
        "stargazers_count": "32",
        "forks_count": "11",
        "description": "Show/hide password plugin for twitter bootstrap."
    }, {
        "name": "blog",
        "stargazers_count": "13",
        "forks_count": "4",
        "description": "my blog"
    }, {
        "name": "scutech-redmine",
        "stargazers_count": "6",
        "forks_count": "3",
        "description": "Redmine notification tools for chrome extension."
    }
];

И вызов его в моем html с помощью: <table id="table"></table> Моя собственная созданная таблица в базе данных mysql: tx_table

Я хочу, чтобы содержимое этой таблицы отображалось в моей загрузочной таблице.


person verklixt    schedule 02.12.2017    source источник
comment
Нужно больше информации. Есть 2 способа попасть в интерфейс. Вывод в тег скрипта в html. Получите его через ajax, используя собственный маршрут. Вы можете использовать vhs:EncodeViewHelper, чтобы сделать json из php объект.   -  person Andrew Luca    schedule 03.12.2017
comment
Привет, Андрей, я отредактировал свой вопрос, надеюсь, теперь он более понятен.   -  person verklixt    schedule 04.12.2017


Ответы (1)


Первое решение. Вы можете вывести свои результаты прямо в html, используя тег <script> и v:format.json.encode ViewHelper.

код действия:

$yourDataArrayFromPHP = array(
    'var1' => 'val1',
    'var2' => 'val2'
);

$this->view->assign('yourDataArrayFromPHP', $yourDataArrayFromPHP);

HTML:

<script>
    var data = {v:format.json.encode(value: '{yourDataArrayFromPHP}')}
</script>

Теперь вы можете получить доступ к этим данным в javascript data.var1
Также имейте в виду, что ваши данные должны быть до инициализации bootstrapTable.

person Andrew Luca    schedule 04.12.2017