我正在使用PHP收集的選項來填充選擇標記,以導入SQL表中某個字段的所有行。在我的表中的一行格式如下:使用PHP/SQL通過Click事件處理程序獲取動態JavaScript變量
id | wcat | wtype | was | wcc | wbdmin | wbdmax
我這部分成功完成,但手頭上的下一個任務是我在與因爲我是一個新手,當涉及到PHP和JavaScript什麼麻煩。
在我的單擊事件處理程序我定義一個變量「WTYPE」這是我設置爲選擇選項的值:
wtype = $("select[name='wtype'] :selected").val() || 0;
我希望做後導入相應的字段的一行匹配'wtype'並將它們設置爲它們自己的變量,即。 'was','wcc','wbdmin',&'wbdmax'。之後,我使用這些值來做一些數學運算等。
在做了一些研究/閱讀之後,我在定義'wtype'變量之後正在嘗試在我的js文件中進行以下操作(即使我沒有線索我在做什麼):
var data = {w : wtype};
var url = "get.php";
$.post(url, data).done(function(data) {
var winfo = $.parseJSON(data);
was = winfo[3];
wcc = winfo[4];
wbdmin = winfo[5];
wbdmax = winfo[6];
$("#result").html(winfo);
});
而且在get.php
:
<?php
$host = "****";
$dbname = "****";
$user = "****";
$pass = "****";
try {
$conn = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
}
catch(PDOException $e) {
echo $e->getMessage();
}
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$name = $_POST["w"];
$sql = "SELECT wtype, was, wcc, wbdmin, wbdmax FROM items WHERE wtype='".$name."'";
$stmt = $conn->prepare($sql);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
if ($stmt) {
try {
$stmt->execute();
while ($row = $stmt->fetch()) {
$data[] = $row;
}
$data = json_encode($data);
}
catch (PDOException $e) {
var_dump($e);
}
}
?>
這顯然不爲我的數學生成NaN /不確定的,而與測試變量前值,它的工作工作。
更新:我相當確定問題在於編碼/解碼JSON並將數組傳遞給JavaScript變量。 – tenub 2013-03-22 18:56:55