Изображение не отображается в jtable?

Я использую jtable с сайта jtable.org. Проблема в том, что у меня есть изображение, хранящееся в моей базе данных (MySQL), и я хочу отобразить это изображение на веб-странице, используя jtable с другими столбцами. Все остальные столбцы отображаются правильно, но изображение не отображается. Это мой HTML-код:

    <html>
  <head>

    <link href="themes/redmond/jquery-ui-1.8.16.custom.css" rel="stylesheet" type="text/css" />
    <link href="Scripts/jtable/themes/lightcolor/blue/jtable.css" rel="stylesheet" type="text/css" />

    <script src="scripts/jquery-1.6.4.min.js" type="text/javascript"></script>
    <script src="scripts/jquery-ui-1.8.16.custom.min.js" type="text/javascript"></script>
    <script src="Scripts/jtable/jquery.jtable.js" type="text/javascript"></script>

  </head>
  <body>
    <div id="PeopleTableContainer" style="width: 960px;"></div>
    <script type="text/javascript">

        $(document).ready(function () {

            //Prepare jTable
            $('#PeopleTableContainer').jtable({
                title: 'Table of people',
                actions: {
                    listAction: 'PersonActions.php?action=list',
                    updateAction: 'PersonActions.php?action=update'

                },
                fields: {
                    PersonId: {
                        key: true,
                        create: false,
                        edit: false,
                        list: false
                    },
                    Name: {
                        title: 'Product',
                        width: '20%'
                    },
                    SellingPrice: {
                        title: 'Selling Price',
                        width: '15%',
                    },
                    CostPrice: {
                        title: 'Cost Price',
                        width: '15%',
                    },
                    Remarks: {
                        title: 'Remarks',
                        width: '15%',
                    },
                    Stock: {
                        title: 'Stock',
                        width: '15%',
                    },
                    Pic: {
                        title: 'Image',
                        width: '50%',
                        edit: false
                    }
                }
            });

            //Load person list from server
            $('#PeopleTableContainer').jtable('load');

        });

    </script>

  </body>
</html>

И это мой запрос SELECT с другими функциями:

//Получить записи из базы данных

$result = mysql_query("SELECT * FROM people;");

    //Add all records to an array
    $rows = array();
    while($row = mysql_fetch_array($result))
    {
        $rows[] = $row;
    }

    //Return result to jTable
    $jTableResult = array();
    $jTableResult['Result'] = "OK";
    $jTableResult['Records'] = $rows;
    print json_encode($jTableResult);

person Syed Haziq Hamdani    schedule 17.01.2014    source источник


Ответы (2)


Когда я столкнулся с той же проблемой, мне помогла следующая ссылка: Динамически добавлять изображения в ячейки JTable

Извините, я бы хотел, чтобы у меня все еще был мой старый код, и я знаю, что предоставление ссылок не одобряется. Может быть, кто-нибудь еще наткнется на эту страницу, может найти ее полезной.

Тот факт, что изображение взято из вашей базы данных, не должен иметь значения, если вы не извлекаете его должным образом. Попробуйте это с локальным изображением, и если вы сможете заставить это работать, вы изолируете проблему до неправильного получения изображения из базы данных. В прошлом я пытался иметь только ссылку на изображение в базе данных, которая указывала мне на мой ftp-сервер. Это означает, что мне не нужно передавать изображение в resultSet, а просто получить его через FTP.

person TheOneWhoPrograms    schedule 21.01.2014

Я нашел альтернативный способ, если мы сохраним адрес изображения в базе данных, а затем просто заполним наши столбцы адресом (ссылкой) изображения.

person Syed Haziq Hamdani    schedule 15.02.2014