从存储在数据库中的路径显示图像


Display image from its path stored in database

我想显示来自JSON对象的图像和存储在MySQL数据库中的图像路径。

我有用户表,其中包含:

  • userid
  • 用户名
  • user_img_path
  • user_address

现在,我将使用PHP触发一个查询,如:

SELECT `user_id`, `username`,`user_img_path` FROM `users`

我将输出存储在数组$rows中并将该数组编码为JSON

json_encode($rows);

和我调用这个PHP文件在我的jQuery的ajax调用和JSON输出。我可以正确显示其他信息,但问题是我无法使用jQuery ajax在HTML中显示图像。

function  callAjax1()
{
    $.ajax({
        url: 'userApi.php',
        data: "",
        dataType: 'json',
        success:function(rows)
        {
            $.each(rows,function(i,item)
            {
                var user_id=rows[i].user_id;
                var user_name=rows[i].user_name;
                var user_img_path=rows[i].user_img_path;
                console.log(user_id,user_name,user_img_path);
                $("#poll_left_body").append('<a href="#">  <img     src='https://url/"'+user_img_path+'<label id="user_name" rel="tooltip" title=" Edward  11,356" style="color:black;">'+user_name+'</label></a><a href="/twitter/bootstrap/network" class="social-count">11,356</a>');
            });
        }
    });
}

尝试将user_img_path放入变量并使用javascript

var img = document.createElement("img");
img.src = user_img_path;  
var body = document.body;  // use element where you want to display image
body.appendChild(img);

似乎您无法设置图像的路径。你可以这样做:

1)确保你从数据库中获得的路径是正确的,并尝试硬编码它并检查图像显示与否。

2)如果你的路径是正确的,你需要检查你得到的json输出是什么?它是否与存储在数据库中的相同?要检查,可以使用firebug(控制台选项卡)

3)如果以上步骤是正确的,最后和重要的是检查HTML呈现你的代码。如果代码也是正确的。然后你必须能够看到图像(如果没有其他问题)

希望能有所帮助。