如何用PHP变量作为src属性的值回显<img src [重复]

This question already has an answer here:

I am getting error when I try to echo image in PHP. Here is my code:

$sql = "SELECT id, title, filename FROM images";
$result = $conn->query($sql);


if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
    $pathx = "directory/images/";

    echo '
    <img src = "'$pathx'.'$row["filename"]'">
    ';
    //filenames in database end with appropriate image extensions like .png

}

And I am getting this error: Parse error: syntax error, unexpected '$pathx' (T_VARIABLE), expecting ',' or ';' in C:\xampp\htdocs\display.php on line 29

I have checked solutions from similar questions from here on Stackoverflow and implemented some of the accepted answers still my problem is not solved.

meanwhile something like the code below works well. So why is the one above not working?

echo'<img src = "directory/images/girl-g2109_5_720.jpg">';
</div>

Do like this

$pathx = "directory/images/";
$file = $row["filename"];

echo '<img src="'.$pathx.$file.'">';

Output

<img src="directory/images/girl-g2109_5_720.jpg">
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
    $pathx = "directory/images/";
    echo '<img src = "'.$pathx.$row["filename"].'">';
}

OR use can also use following way to render img tag

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
    $pathx = "directory/images/"; ?> 
    <img src = "<?php echo $pathx.$row["filename"] ?>">
<?php } ?>

It looks like there is an issue with the array concatenation.

The string '<img src = "' and variable $pathx are not concatenated properly.

There should be a concatenation operator ('.') in between.

Change the code to the following format to fix the issue.

Code

echo '<img src = "' . $pathx . $row["filename"] . '">';

Output

<img src="directory/images/girl-g2109_5_720.jpg">

Try this

There are multiple ways to display the image. You can also use like this.

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
    $image=$row["filename"];
?>
<img src="directory/images/<?php echo $image;?>">
<?php
}
 ?>

Output

<img src="directory/images/image_name.png">