2011-12-06 212 views
0

我有点咸菜的现在:我有我的网站,其中有一个SRC从一个MySQL服务器显示的图像,它看起来像这样:更改图片src

echo '<img src = "'.$sourceVariableFromDatabase.'" class = "profileImage" id = "profilePicture" />'; 

也在我的网站上,是一个功能,更改数据库,因此值$sourceVariableFromDatabase。但是,图像不会更新,直到页面刷新,但我希望它从数据库显示新图像src而不刷新。

我知道这可以通过jQuery完成,但我不确定如何从数据库中获取值,因为Javascript不是服务器端,如javascript,并且据我所知无法访问数据库MySQL的。

我该如何在Javascript/jquery中实现这一点。

谢谢,我试图尽可能的清楚,并为任何华夫饼道歉。

+0

您需要使用AJAX。 – SLaks

回答

2

JQuery可用于调用返回数据的URL(例如,HTML,JSON,文本等)。但是,如何URL返回数据可以是你想要的(PHP + MySQL等)。一旦JQuery收到响应,它就可以更新img标签。

下面是一个简单的例子:

例HTML

<img id="profilePicture" src="(your source from db1)" /> 

例JQuery的HTML页面上

function update_image(db) 
{ 
    // get new image src 
    $.get('some/url/to/get/new/src', {db: db}, function(response){ 
    // update the img src 
    $('#profilePicture').attr('src', response); 
    }); 
} 

示例页面(/一些/ URL /到/得/新/ src目录):

<?php 

// get request data 
$db = $_GET['db']; 

// get img src 
$src = some_function_to_get_src($db); 

// output src 
echo $src; 
+0

什么是jQuery中的new_src位,我不明白,谢谢。 –

+0

这应该是'响应'(固定)。 – minboost

1
$.get('/pathToCode', function(imagePath){ 
    $('#profilePicture').attr('src', imagePath); 
}); 

/pathToCode的文件需要查询数据库并回显图像的路径。只需将此代码添加到更改数据库的函数末尾即可。