2011-06-14 105 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