2011-06-14 101 views
0

编辑:检查在本月底为解决腓返回值

我是新来的PHP,Ajax和所有其他的事情:)

我的问题是:有没有一种方式一个PHP文件来返回一个值?

我:

  1. 文件“loadImages.php”包含脚本来获取路径从数据库中的图像。
  2. 一个图像库,我想通过ajax加载图像。
  3. 一个包含图像路径的数据库(/images/image1.jpg,/images/image2.jpg)。
  4. 4种类别的图像。

我想要做的是:

当链路(例如,第一类)上点击,我想通过jQuery的阿贾克斯()调用,loadImages.php与该类别通过POST传递(cat0,cat1,cat2,...)

我想从这个php文件返回值,例如:<img src="image/image1.jpg" />,所以通过javascript,我可以检索到这个字符串。在我的php文件中仅使用return返回XMLHttpRequest当我将ajax()函数放入变量而不是字符串<img>时。

有没有办法做到这一点?或者,也许更好的方法,因为我不完全理解ajax。

谢谢!对不起,我的语法错误。

下面是我想要做的更精确的地图。

的JavaScript:

var test = $.ajax({ 
type: "POST", 
    url: "loadImages12.php", 
    data: "category=0", 
    complete: function() { 
     alert("COMPLETE"); 
    }, 
    error: function(){ 
     alert("NOT LOADED"); 
    } 
}); 

PHP(loadImages.php)

function createThumb() { 
     if(isset($_POST['category'])) { 
      $imageQuery = mysql_query("SELECT * FROM t_pictures WHERE p_category = 0"); 
      $thumbHtml = ''; 

      while ($tempImageQueryFetch = mysql_fetch_assoc($imageQuery)){ 
       $thumbHtml .= '<a href="#" class="thumbnail"><img src="ressources/images/' . $tempImageQueryFetch["p_fileName"] . 'Small.jpg" /></a>'; 
      } 

     return $thumbHtml; 
     } 
     else { 
      $noCategory = "NO CATEGORY TEST"; 
      return $noCategory ; 
     } 
    } 

    createThumb(); 

解决

  • php文件

    功能createThumb()

    回波createThumb()

  • 的Javascript

    $(“#{
    // Mysql的请求
    $ someVar = //请求
    返回$ someVar
    的结果} someDiv“)。load(”loadImages.php“,{category:0});

+1

我是AJAX的新手。我使用$ .post发送XHR,并在我的PHP文件中,“回显”响应(我不使用函数)。尝试使用$ .post方法。 – afaolek 2011-06-14 03:39:33

+0

谢谢,这就是我所做的!加载函数最终更容易使用。 – Elggetto 2011-06-14 14:53:31

回答

5

对PHP的AJAX请求与对网站的正常请求完全相同。您请求example.com/foo/bar的数据,并作为回报您收到文本。 PHP的return声明与返回给客户端的内容无关。只有你echo或其他输出将被客户收到。普通页面和AJAX请求也是如此。

因此,要将“返回”<img src="image/image1.jpg" />添加到您的Javascript AJAX调用中,请使用PHP中的字符串echo

+0

谢谢你的回答。我使用:$(“someDiv”)。load(“loadImages”,{category:0})。我在我的php文件中回显(编辑)了这个函数。 – Elggetto 2011-06-14 14:55:31

0

只要让PHP脚本返回缩略图的路径。

,然后做这样的事在JS

somediv.html('<a href="#" class="thumbnail"><img src="">'); 

,只是使用由php文件的IMG SRC返回的路径..如果你想使用的PHP文件,你已经

2

有(loadImages.php)只是回应功能的结果:

echo createThumb(); 
+0

谢谢,它工作。 – Elggetto 2011-06-14 14:56:16