2013-02-22 31 views
0

我試圖從jQuery的傳遞變量到PHP,然後我用在我的網頁變量。我的jQuery腳本不失敗爲我的警示都來了,但我似乎已經抓住了變量與我的PHP頁面,因爲我「上線6錯誤未定義索引名」,這是被我用我的$ _ POST調用得到一個問題。回聲測試也在工作,所以php不會完全掛起。下面是代碼,並感謝您的任何意見:傳遞瓦爾從jQuery來PHP

編輯:展望dev的看法我也注意到,在可變正從jQuery的到PHP頁面過去了,我還對一個MAMP環境中測試這種沒有把握如果這有所作爲。

<?php 



$SiteName = $_POST['name']; 
$_SESSION['selectedSite'] = $SiteName; 
echo $_SESSION['selectedSite']; 
print_r($_POST); 

?> 

而且Jquery的

$(document).ready(function(){ 

$('.siteButton').click(function(event) 
{ 


    var siteName = event.target.id; 

    alert(siteName); 
$.ajax({ 
    type: "post", 
    url: "includes/functions.php", 
    data: {'name':siteName},  
    success: function(){ 
    alert("success WOOT"); 
    } 
    }) 
}); 
}); 
+0

有一個jQuery功能後,你可能會發現更容易使用。更多信息[jQuery post()頁面](http://api.jquery.com/jQuery.post/)。 – adomnom 2013-02-22 23:12:51

+0

您必須檢查是否設置變量,這樣 '$名稱= isset($ _ POST [ '名'])? $ _POST ['name']:null;' – Winston 2013-02-22 23:15:13

+0

嘗試'type:「POST」,'。文檔中的所有示例均使用大寫字母。我從來沒有嘗試過小寫。 – 2013-02-22 23:21:47

回答

0

嘗試

$.post({ 
    url: 'includes/functions.php', 
    data: 'name=' + siteName 
}) 
.success(function() { 
    alert("success WOOT"); 
}); 
+0

黑煙感謝您的快速響應。我嘗試了這個簡化版本的ajax後,但它仍然給我相同的未定義索引錯誤。這可能與我使用MAMP的事實有關,並且不在實時服務器上。第一次測試出來MAMP.But Ajax請求就像我說之前,我已經看到,該變量獲取傳遞給我的PHP頁面時,我看着開發商鑑於這就是爲什麼我什麼我做錯了真的很困惑。 – Alfijr 2013-02-22 23:18:32

+0

'siteName'包含任何東西嗎?此代碼應該可以工作。請求是一個POST,所以你應該可以通過$ _POST獲取值。嘗試'print_r($ _ POST);'查看內容。 – 2013-02-22 23:31:42

+0

所以我打開了php代碼,並在我原來的帖子中更新了它。在頂部的實際網頁這是它顯示:注意:未定義指數:名/用戶/ DelacruzAdmin/Dropbox的/數字媒體姿/ DMAImageView /包括在開發第6行 陣列(/ functions.php中)然後它顯示正確的信息從印刷和回聲這是:第一測試網站
數組 ( [名稱] =>第一測試網站 ) – Alfijr 2013-02-22 23:37:59

0

你可能要考慮對所有傳入的信息做的var_dump。

var_dump($_POST); 
var_dump($_GET); 
var_dump($_REQUEST); 

如果沒有看到任何的轉儲你的名字的變量,那麼你需要偷看回到了AJAX請求,並確保其實際推出的信息。在標題中使用螢火蟲或類似的東西。

+0

你我忘了這麼做,謝謝。 – Alfijr 2013-02-22 23:52:57