【问题标题】:how to output image file from database drupal 7?如何从数据库 drupal 7 输出图像文件?
【发布时间】:2014-07-22 05:37:28
【问题描述】:

我已经创建了测试模块,它将上传图像并将其输出到我的页面。但是,我似乎无法从我的数据库中输出我的图像文件。请帮忙!这是我的代码

      <?php

function database_ex_menu(){
$items = array();
$items['database-ex'] = array(
    'title' => 'My Database Form',
    'type' => MENU_NORMAL_ITEM,
    'access arguments' => array('submit database_ex'),
    'page callback' => 'drupal_get_form',
    'page arguments' => array('database_ex_form'),

    );
     return $items;
  }

 function database_ex_form($form, $form_state){

$form['myimage'] = array(
    '#type' => 'file',
    );


$form['submit'] = array(
    '#type' => 'submit',
    '#value' => t('Add item'),

    );


return $form;

}

     function database_ex_form_submit($form, $form_state){
    $fe_id = db_insert('example')
    ->fields(array(
            'myimage' => $form_state['values']['myimage'],
        ))
    ->execute();

    drupal_set_message(t('Your entry has been added'));
 }

这个函数应该会在一个 div 中输出我的图像文件。

  function database_ex_submission(){

 //What to do From here!
}

【问题讨论】:

    标签: database drupal drupal-7 output drupal-modules


    【解决方案1】:

    为此,您需要从表中获取所有数据,因为图像 uri 将被保存

    使用 file_create_url($uri) 从您保存在数据库中的 uri 创建完整的 URL。

    $result = db_query("SELECT myimage FROM example");
    $records = $result->fetchAll();
    
    foreach ($records as  $value) {
        $uri = $value['url'];
        $url = file_create_url($uri);
    }
    

    在 $url 中,您将获得图像的完整路径。

    【讨论】:

    • $uri 变量中 url 的值是什么?
    • 会像“public://uploads/imagename.png”
    • 如何渲染我的 $uri 文件夹中的所有图像?
    • 所有图像在您的数据库中都会有一个 uri 值(表名将类似于 field_data_field_YOURFIELDNAME),您将从表中获取 uri。最好用节点表编写查询连接。
    猜你喜欢
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多