php 根据数据库列中的 link 在 Joomla 中显示 <img src />
php display <img src /> in Joomla based on link in Database column
我正在尝试显示链接到基于 Joomla 站点登录的用户的图像。
我使用的PHP代码如下:
<?php
$user = JFactory::getUser();
$username = $user->username;
echo '<img src="$user->picture" />'
;
?>
在我的测试和故障排除过程中,我在没有图像源标签的情况下进行了测试,我收到了来自我的数据库 table 的回调,标签为 Images/LOGO.jpg,它在我的前端显示为一个字符串。
当我再次使用图像源并将 $user->picture 替换为数据库列中的相同字符串时,图像 returns 100%.
按照上面的代码保留页面加载成功但没有返回图像。
谢谢,
单引号不打印var值,改成
"<img src=\"$user->picture\" />"
Bug 很明显....echo '<img src="$user->picture" />'
你有没有注意到上面的代码片段有什么异常?
这里有一个提示:试试这个:<?php $var="test"; echo '$var'; ?>
你得到了什么?
当然,您按原样恢复了一切: VERBATIM - $var
而不是预期的 test.
所以这里是要点:
Any variable within Single Quotes in PHP would NOT expand/evaluate to a Value...
You'd just get the Variable back: Verbatim
宁愿这样做:
<?php
$user = JFactory::getUser();
$username = $user->username;
// NOTICE THE DOUBLE QUOTES SURROUNDING THE "<img... />" TAG
// THOUGH NOT SO IMPORTANT, BUT NOTICE ALSO THE BRACES AROUND
// {$user->picture}
echo "<img src='{$user->picture}' />";
顺便说一句;在 Joomla 中,您可以获得像这样的用户头像:
<?php
// USE jimport TO PULL IN THE PROFILE PICTURE CLASS
jimport('profilepicture.profilepicture');
// GET THE USER OBJECT LIKE YOU ALREADY DID
$user = JFactory::getUser();
// CREATE A NEW INSTANCE OF THE ProfilePicture CLASS PASSING IT THE USER ID
$userPix = new ProfilePicture($user->get('id'));
// ECHO OUT THE ENTIRE HTML FOR THE USER PROFILE PICTURE
echo $userPix->toHTML();
干杯,祝你好运,伙计! ☝️✌️
我正在尝试显示链接到基于 Joomla 站点登录的用户的图像。
我使用的PHP代码如下:
<?php
$user = JFactory::getUser();
$username = $user->username;
echo '<img src="$user->picture" />'
;
?>
在我的测试和故障排除过程中,我在没有图像源标签的情况下进行了测试,我收到了来自我的数据库 table 的回调,标签为 Images/LOGO.jpg,它在我的前端显示为一个字符串。
当我再次使用图像源并将 $user->picture 替换为数据库列中的相同字符串时,图像 returns 100%.
按照上面的代码保留页面加载成功但没有返回图像。
谢谢,
单引号不打印var值,改成
"<img src=\"$user->picture\" />"
Bug 很明显....echo '<img src="$user->picture" />'
你有没有注意到上面的代码片段有什么异常?
这里有一个提示:试试这个:<?php $var="test"; echo '$var'; ?>
你得到了什么?
当然,您按原样恢复了一切: VERBATIM - $var
而不是预期的 test.
所以这里是要点:
Any variable within Single Quotes in PHP would NOT expand/evaluate to a Value...
You'd just get the Variable back: Verbatim
宁愿这样做:
<?php
$user = JFactory::getUser();
$username = $user->username;
// NOTICE THE DOUBLE QUOTES SURROUNDING THE "<img... />" TAG
// THOUGH NOT SO IMPORTANT, BUT NOTICE ALSO THE BRACES AROUND
// {$user->picture}
echo "<img src='{$user->picture}' />";
顺便说一句;在 Joomla 中,您可以获得像这样的用户头像:
<?php
// USE jimport TO PULL IN THE PROFILE PICTURE CLASS
jimport('profilepicture.profilepicture');
// GET THE USER OBJECT LIKE YOU ALREADY DID
$user = JFactory::getUser();
// CREATE A NEW INSTANCE OF THE ProfilePicture CLASS PASSING IT THE USER ID
$userPix = new ProfilePicture($user->get('id'));
// ECHO OUT THE ENTIRE HTML FOR THE USER PROFILE PICTURE
echo $userPix->toHTML();
干杯,祝你好运,伙计! ☝️✌️