2013-04-04 98 views
0

我正在嘗試使用以下函數將單個選項選項值發佈到pChart頁面。當我嘗試檢查開發人員工具中的表單數據時,建議將name:datastring對發佈到PHP文件。 JavaScript文件如下:Php沒有收到POST字符串

$(document).ready(function() { 
    $('#players').on('change', function() { 
     var dataString = $('#players option:selected').val(); 
     $.post("../pChart2.1.3/AllPillarsCoach.php", 
       {name:dataString}, 
       "\nStatus: " + status); 
    }); 
}); 

但它顯示了一個空數組:

<?php 
    echo "<pre>"; 
    var_dump($_POST)."br /"; 
    echo "</pre><br>"; 
    ... 
?> 

我與GET檢查,以及沒有成功。我不希望返回到瀏覽器,因爲PHP頁面呈現圖像,並且對於應用到div並不太高興。

感謝迄今爲止我的原始回覆,函數如下,我截斷嘗試並確保pChart將被解析。

$(document).ready(function() { 
    $('#players').on('change', function() { 
     var dataString = $('#players option:selected').val(); 
       $.post("../pChart2.1.3/All.php",{name:dataString},"\nStatus: " + status, 
        function(status){ 
       alert("Data: " + dataString + "\Status: " + status); 
      }); 

      }); 

     }); 

的開發工具,這兩個版本的建議,表單數據被公佈名字= thw17po14和解析名稱:thw17po14。該警報顯示dataString和成功消息。我只想將發佈數據作爲查詢的條件,並且生成的圖表將被單獨訪問,因此不需要返回瀏覽器。現在的警報現在在更改「選擇選項」後顯示以下內容,再次感謝您提前提供任何幫助。

  Data: thw17po14Status: <pre>array(1){ 
       ["name"]=> 
        string(9)"thw17po14" 
        } 
        </pre><br> 
+1

你在'alert(dataString)'中得到了什麼? – 2013-04-04 02:05:22

+1

「jQuery.post()」的第三個參數應該是成功回調,但是您提供了一個字符串。 – 2013-04-04 02:09:09

+1

我想'dataString'是空的。試試這個,而不是'var dataString = $(this).val();' – datasage 2013-04-04 02:21:06

回答

0

我不能評論 - 但現在一切都看起來很好,不是嗎?

dataString不是空的,並顯示 - 也被狀態顯示陣列:

Status: <pre>array(1){ 
      ["name"]=> 
       string(9)"thw17po14" 
       } 
       </pre><br> 

它還表明你的HTML。我想說你已經完成:)

+0

好的,謝謝我認爲我快到了,這是通過警報顯示已發佈的dataString,如果我不想從PHP文件輸出,我必須做什麼,我正在使用創建的變量並隨後用作pChart中的一個參數。雖然這將是一個更好的解決方案,從PHP頁面放置圖像/ PNG圖表輸出,但對我來說可能是一個很大的步驟,我可以將鏈接指向將更新的頁面。我想這是一箇中途解決方案。 – user2242897 2013-04-04 18:06:24

+0

除了我以前的文章,我意識到這是一個不同的問題,原始的抱歉,但是當我試圖插入從$ user = $ _POST [名稱]創建的變量到pChart查詢中時,它顯示一個空的圖像,沒有圖表。當我對此進行註釋並提供與$ user ='thw17po14'相同的字符串時,會顯示圖表。我究竟做錯了什麼? – user2242897 2013-04-04 18:24:44

+0

PHP應該這樣做 - 但可能會嘗試'$ user = $ _POST ['name']' - 否則'name'是未知的常量,並且至少會發出警告。 你也可以通過在你的小PHP腳本中使用返回的警報呼叫$ user來測試它。 [與var_dump相同] – Patrick 2013-04-04 19:42:43

0

您是否將正確的參數傳遞給$ .post?

應該

$.post("../pChart2.1.3/AllPillarsCoach.php", 
       {name:dataString}, 
       function(data){ 
       alert(data); 
       } 
); 

檢查http://api.jquery.com/jQuery.post/以備將來參考。