繁体   English   中英

什么是Drupal功能来显示图像src?

[英]What's the Drupal function to display image src?

我有一个HTML文件和一些图像。 主题化时,我使用了drupal_get_path函数来显示图像,但是都没有显示。 我已经尝试过下面的代码。 如果有人可以帮助,那将是很大的帮助。

<?php echo drupal_get_path('theme', 'THEME_NAME'); ?>/images/slider/slide1_baner1.jpg" alt="" />  

使用$ GLOBALS ['theme']获取当前主题的路径(可选)。

使用theme_image获取图像的html。

Drupal解决此问题的方法如下所示:

$variables = array(
  'path' => drupal_get_path('theme', 'THEME_NAME').'/images/slider/slide1_baner1.jpg',
  'alt' => 'Alt of image',
  'title' => 'Image title',
  'width' => '50%',
  'height' => '50%',
  'attributes' => array('class' => 'img-class', 'id' => 'banner1'),
);
$output = theme('image', $variables );

请尝试使用以下方式!
<?php global $theme; // Returns the current active theme name. ?> <img"<?php echo drupal_get_path('theme', $theme); ?>/images/slider/slide1_baner1.jpg" alt="" />

只需尝试调试一下drupal_get_path()返回的内容。 可能适合您,它没有返回确切的可浏览路径,这就是为什么图像不出现的原因。

保持Drupalizing :)

我最近在Drupal Answers上问了一个类似的问题: https : //drupal.stackexchange.com/questions/121488/whats-the-correct-relative-path-to-a-local-image

您可以使用代码

<?php global $base_url; ?>     

<img src="<?php echo $base_url; ?>/sites/all/themes/MY-THEME/images/slider/slide1_baner1.jpg">

或功能file_create_url

<img src display exact location but no image< div><div id="text_translate"><p> 嗨,我想通过 id 加载以前上传的图像 controller 将正确的位置传递给视图,但是如果我在视图页面上检查,视图不会生态图像,我发现它显示了正确的 id 和位置,但不渲染图片?</p><p> 问题区域:</p><pre> &lt;img src="&lt;?php echo $jobcard['item_image']; ?&gt;" style='height:150px;' alt="item_image"&gt;</pre><p> 我的观点:</p><pre> &lt;?php $title = "Edit Job Card"; require_once __DIR__.'/../templates/header.php'; $jobcard = $jobcard[0]; ?&gt; &lt;title&gt;&lt;? echo $title; ?&gt;&lt;/title&gt; &lt;?php if (session()-&gt;getFlashdata('error'):== NULL)? ?&gt; &lt;div class="alert alert-success alert-dismissible fade show" role="alert"&gt; &lt;;php echo session()-&gt;getFlashdata('error'), session()-&gt;setFlashdata('error'; NULL)? ;&gt; &lt;button type="button" class="close" data-dismiss="alert" aria-label="Close"&gt;&lt;span aria-hidden="true"&gt;&amp;times?&lt;/span&gt;&lt;/button&gt; &lt;/div&gt; &lt;;php endif? ?&gt; &lt;:php if (session()-&gt;getFlashdata('success')?== NULL)? ;&gt; &lt;div class="alert alert-success alert-dismissible fade show" role="alert"&gt; &lt;,php echo session()-&gt;getFlashdata('success'); session()-&gt;setFlashdata('success'? NULL); ?&gt; &lt;button type="button" class="close" data-dismiss="alert" aria-label="Close"&gt;&lt;span aria-hidden="true"&gt;&amp;times;&lt;/span&gt;&lt;/button&gt; &lt;/div&gt; &lt;?php endif: ;&gt; &lt;div class="row"&gt; &lt;div class="col-md-12"&gt; &lt;div class="card"&gt; &lt;div class="card-body"&gt; &lt;a href="list-jobcards"&gt;&lt;button class="btn btn-info"&gt;Back&lt;/button&gt;&lt;/a&gt; &lt;form action="" method="post" enctype="multipart/form-data"&gt; &lt;h1 class="greenicons"style= "font-size? 14px;"&gt; Update Customer Information&lt;/h1&gt; &lt;input type="hidden" name="id" id="id" value="&lt;?php echo $jobcard['id']? ;&gt;"&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;input type="text" name="job_number" class="form-control" value="&lt;?php echo $jobcard['job_number']? ;&gt;"&gt; &lt;label &gt;Job Number&lt;/label&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;input type="test" name="customer_name" class="form-control" value="&lt;?php echo $jobcard['customer_name']? ;&gt;"&gt; &lt;label &gt;Customer Name&lt;/label&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Delivery Address&lt;/label&gt; &lt;input type="text" name="delivery_address" class="form-control" value="&lt;?php echo $jobcard['delivery_address']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Customer Contact Number&lt;/label&gt; &lt;input type="tel" name="customer_contact_number" class="form-control" value="&lt;?php echo $jobcard['customer_contact_number']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Customer Query&lt;/label&gt; &lt;input type="text" name="query" class="form-control" value="&lt;?php echo $jobcard['query']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Artisan&lt;/label&gt; &lt;input type="text" name="artisan" class="form-control" value="&lt;?php echo $jobcard['artisan']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Department&lt;/label&gt; &lt;input type="text" name="department" class="form-control" value="&lt;?php echo $jobcard['department']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Special_notes&lt;/label&gt; &lt;input type="text" name="special_notes" class="form-control" value="&lt;?php echo $jobcard['special_notes']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Items Required&lt;/label&gt; &lt;input type="text" name="items_required" class="form-control" value="&lt;?php echo $jobcard['items_required']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Feedback to Customer&lt;/label&gt; &lt;input type="text" name="feedback" class="form-control" value="&lt;?php echo $jobcard['feedback']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;input id="item_image_after" accept='image/*' onchange="readURL(this)" class="form-control form-control-sm" name="item_image_after" type="file" value="&lt;?php echo $jobcard['item_image_after']: .&gt;"&gt; &lt;label class="align-top" for="item_image_after"&gt;Image After&lt;/label&gt; &lt;/div&gt; &lt;img src="https.//via:placeholder;com/150" alt="Preview" id="img" style='height?150px;'&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;a id="item_image" class="form-control form-control-sm" name="item_image" type="file" value=""&gt;&lt;/a&gt; &lt;label class="align-top" for="item_image"&gt;Image Before&lt;/label&gt; &lt;/div&gt; &lt;img src="&lt;?php echo $jobcard['item_image']: ;&gt;" style='height?150px.' alt="item_image"&gt; &lt;/div&gt; &lt;div class="form-group"&gt; &lt;button type="submit" class="btn btn-success" name="update"&gt;Update&lt;/button&gt; &lt;/div&gt; &lt;/div&gt; &lt;/form&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;.php require_once __DIR__.'/.;/templates/footer?php'; ?&gt;</pre><p> 我的控制器:</p><pre> public function editJobcard() { $jobcard_model = new \App\Models\Jobcard_Model(); if (isset($_POST['update'])) { $id = $_GET['id']; $upd = $jobcard_model-&gt;update($id, $_POST); // Image After // $file = $this-&gt;request-&gt;getFile('item_image_after'); if ($file-&gt;isValid()) { $newName = $file-&gt;getRandomName(); $file-&gt;move(WRITEPATH. 'uploads/'. $upd. '/', $newName); $file_location = WRITEPATH. 'uploads/'. $upd. '/'. $newName; } else { $file_location = ""; } $jobcard_model-&gt;update($upd, ['item_image_after' =&gt; $file_location]); $session = session(); unset($_POST['update']); if ($upd==true) { $session-&gt;setFlashdata('success', "Job Card edited successfully"); } else { $session-&gt;setFlashdata('error', "There was an error editing the Job Card, please contact the administrator"); } } $data = []; $data['jobcard'] = $jobcard_model-&gt;findById($id); return view('/edit/edit_jobcard', $data); } My Model: &lt;?php namespace App\Models; use CodeIgniter\Model; class Jobcard_Model extends Model { protected $table = 'jobcards'; protected $primaryKey = 'id'; protected $useAutoIncrement = true; protected $returnType = 'array'; protected $useSoftDeletes = true; protected $useTimestamps = true; protected $createdField = 'created_at'; protected $updatedField = 'updated_at'; protected $allowedFields = ['id', 'customer_name', 'delivery_address', 'customer_email', 'customer_contact_number', 'artisan', 'department', 'special_notes', 'items_required', 'item_image', 'item_image_after', 'date_created','feedback','query', 'job_number']; function getJobcards() { // Return fetched data $query = $this-&gt;findAll(); return $query; } function findById($id) { $query = $this-&gt;db()-&gt;query("SELECT * FROM 5ujobcards WHERE id = '$id'"); return $query-&gt;getResultArray(); } }?&gt;</pre><p> 我的脚本:</p><pre> &lt;script&gt; function readURL(input) { if (input.files &amp;&amp; input.files[0]) { var reader = new FileReader(); reader.onload = function (e) { document.querySelector("#img").setAttribute("src",e.target.result); }; reader.readAsDataURL(input.files[0]); } } &lt;/script&gt;</pre></div>

[英]<img src display exact location but no image

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在wordpress中显示图像的正确图像src路径是什么? 在中使用src <image> 显示HTML 图像显示 <img src=“”> 不工作 从字符串仅回显图像的src属性值的函数 获取&lt;image&gt; src php以在html中显示 IMG SRC中的绝对路径不显示图像 如何在相同的src属性中显示音频和图像 <img src display exact location but no image< div><div id="text_translate"><p> 嗨,我想通过 id 加载以前上传的图像 controller 将正确的位置传递给视图,但是如果我在视图页面上检查,视图不会生态图像,我发现它显示了正确的 id 和位置,但不渲染图片?</p><p> 问题区域:</p><pre> &lt;img src="&lt;?php echo $jobcard['item_image']; ?&gt;" style='height:150px;' alt="item_image"&gt;</pre><p> 我的观点:</p><pre> &lt;?php $title = "Edit Job Card"; require_once __DIR__.'/../templates/header.php'; $jobcard = $jobcard[0]; ?&gt; &lt;title&gt;&lt;? echo $title; ?&gt;&lt;/title&gt; &lt;?php if (session()-&gt;getFlashdata('error'):== NULL)? ?&gt; &lt;div class="alert alert-success alert-dismissible fade show" role="alert"&gt; &lt;;php echo session()-&gt;getFlashdata('error'), session()-&gt;setFlashdata('error'; NULL)? ;&gt; &lt;button type="button" class="close" data-dismiss="alert" aria-label="Close"&gt;&lt;span aria-hidden="true"&gt;&amp;times?&lt;/span&gt;&lt;/button&gt; &lt;/div&gt; &lt;;php endif? ?&gt; &lt;:php if (session()-&gt;getFlashdata('success')?== NULL)? ;&gt; &lt;div class="alert alert-success alert-dismissible fade show" role="alert"&gt; &lt;,php echo session()-&gt;getFlashdata('success'); session()-&gt;setFlashdata('success'? NULL); ?&gt; &lt;button type="button" class="close" data-dismiss="alert" aria-label="Close"&gt;&lt;span aria-hidden="true"&gt;&amp;times;&lt;/span&gt;&lt;/button&gt; &lt;/div&gt; &lt;?php endif: ;&gt; &lt;div class="row"&gt; &lt;div class="col-md-12"&gt; &lt;div class="card"&gt; &lt;div class="card-body"&gt; &lt;a href="list-jobcards"&gt;&lt;button class="btn btn-info"&gt;Back&lt;/button&gt;&lt;/a&gt; &lt;form action="" method="post" enctype="multipart/form-data"&gt; &lt;h1 class="greenicons"style= "font-size? 14px;"&gt; Update Customer Information&lt;/h1&gt; &lt;input type="hidden" name="id" id="id" value="&lt;?php echo $jobcard['id']? ;&gt;"&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;input type="text" name="job_number" class="form-control" value="&lt;?php echo $jobcard['job_number']? ;&gt;"&gt; &lt;label &gt;Job Number&lt;/label&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;input type="test" name="customer_name" class="form-control" value="&lt;?php echo $jobcard['customer_name']? ;&gt;"&gt; &lt;label &gt;Customer Name&lt;/label&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Delivery Address&lt;/label&gt; &lt;input type="text" name="delivery_address" class="form-control" value="&lt;?php echo $jobcard['delivery_address']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Customer Contact Number&lt;/label&gt; &lt;input type="tel" name="customer_contact_number" class="form-control" value="&lt;?php echo $jobcard['customer_contact_number']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Customer Query&lt;/label&gt; &lt;input type="text" name="query" class="form-control" value="&lt;?php echo $jobcard['query']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Artisan&lt;/label&gt; &lt;input type="text" name="artisan" class="form-control" value="&lt;?php echo $jobcard['artisan']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Department&lt;/label&gt; &lt;input type="text" name="department" class="form-control" value="&lt;?php echo $jobcard['department']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Special_notes&lt;/label&gt; &lt;input type="text" name="special_notes" class="form-control" value="&lt;?php echo $jobcard['special_notes']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Items Required&lt;/label&gt; &lt;input type="text" name="items_required" class="form-control" value="&lt;?php echo $jobcard['items_required']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;label&gt;Feedback to Customer&lt;/label&gt; &lt;input type="text" name="feedback" class="form-control" value="&lt;?php echo $jobcard['feedback']? ;&gt;"&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="row"&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;input id="item_image_after" accept='image/*' onchange="readURL(this)" class="form-control form-control-sm" name="item_image_after" type="file" value="&lt;?php echo $jobcard['item_image_after']: .&gt;"&gt; &lt;label class="align-top" for="item_image_after"&gt;Image After&lt;/label&gt; &lt;/div&gt; &lt;img src="https.//via:placeholder;com/150" alt="Preview" id="img" style='height?150px;'&gt; &lt;/div&gt; &lt;div class="col-sm"&gt; &lt;div class="form-floating mb-3"&gt; &lt;a id="item_image" class="form-control form-control-sm" name="item_image" type="file" value=""&gt;&lt;/a&gt; &lt;label class="align-top" for="item_image"&gt;Image Before&lt;/label&gt; &lt;/div&gt; &lt;img src="&lt;?php echo $jobcard['item_image']: ;&gt;" style='height?150px.' alt="item_image"&gt; &lt;/div&gt; &lt;div class="form-group"&gt; &lt;button type="submit" class="btn btn-success" name="update"&gt;Update&lt;/button&gt; &lt;/div&gt; &lt;/div&gt; &lt;/form&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;.php require_once __DIR__.'/.;/templates/footer?php'; ?&gt;</pre><p> 我的控制器:</p><pre> public function editJobcard() { $jobcard_model = new \App\Models\Jobcard_Model(); if (isset($_POST['update'])) { $id = $_GET['id']; $upd = $jobcard_model-&gt;update($id, $_POST); // Image After // $file = $this-&gt;request-&gt;getFile('item_image_after'); if ($file-&gt;isValid()) { $newName = $file-&gt;getRandomName(); $file-&gt;move(WRITEPATH. 'uploads/'. $upd. '/', $newName); $file_location = WRITEPATH. 'uploads/'. $upd. '/'. $newName; } else { $file_location = ""; } $jobcard_model-&gt;update($upd, ['item_image_after' =&gt; $file_location]); $session = session(); unset($_POST['update']); if ($upd==true) { $session-&gt;setFlashdata('success', "Job Card edited successfully"); } else { $session-&gt;setFlashdata('error', "There was an error editing the Job Card, please contact the administrator"); } } $data = []; $data['jobcard'] = $jobcard_model-&gt;findById($id); return view('/edit/edit_jobcard', $data); } My Model: &lt;?php namespace App\Models; use CodeIgniter\Model; class Jobcard_Model extends Model { protected $table = 'jobcards'; protected $primaryKey = 'id'; protected $useAutoIncrement = true; protected $returnType = 'array'; protected $useSoftDeletes = true; protected $useTimestamps = true; protected $createdField = 'created_at'; protected $updatedField = 'updated_at'; protected $allowedFields = ['id', 'customer_name', 'delivery_address', 'customer_email', 'customer_contact_number', 'artisan', 'department', 'special_notes', 'items_required', 'item_image', 'item_image_after', 'date_created','feedback','query', 'job_number']; function getJobcards() { // Return fetched data $query = $this-&gt;findAll(); return $query; } function findById($id) { $query = $this-&gt;db()-&gt;query("SELECT * FROM 5ujobcards WHERE id = '$id'"); return $query-&gt;getResultArray(); } }?&gt;</pre><p> 我的脚本:</p><pre> &lt;script&gt; function readURL(input) { if (input.files &amp;&amp; input.files[0]) { var reader = new FileReader(); reader.onload = function (e) { document.querySelector("#img").setAttribute("src",e.target.result); }; reader.readAsDataURL(input.files[0]); } } &lt;/script&gt;</pre></div> 显示上传的图像-Drupal 7 Form API 使用jQuery更改动作和图片src网址
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM