2012-08-28 50 views
0

我試圖使用jEditable select來更新字段。我從我的數據庫中提取jEditable select的數據。查詢陣列看起來像這樣:jEditable選擇數據源

陣列([0] =>陣列([conference_id] => 1 [conference_name] =>阿勒格尼山)等...

我想在下降,顯示會議名稱但使用會議id作爲插入到數據庫中的值,目前我所得到的只是一個空白的選擇值列表,有沒有人有任何想法可以讓我按照自己的意願去做?

這裏是我的代碼,我有以下:

<?php 
try { 
    // Connect to the database 
    $db = new PDO('mysql:host=localhost;dbname=football;', 'fbdbuser', 'fbdbpass'); 
} catch(PDOException $e) { 
    echo $e->getMessage(); 
} 
try { 
    // Retrieve all team information 
    $query = $db->prepare("SELECT * FROM team ORDER BY team_name"); 
    $query->execute(); 
    $result = $query->fetchAll(PDO::FETCH_ASSOC); 
    // Retrieve all conferences 
    $query_conference = $db->prepare("SELECT conference_id, conference_name FROM conference ORDER BY conference_name"); 
    $query_conference->execute(); 
    $result_conference = $query_conference->fetchAll(PDO::FETCH_ASSOC); 
} catch(PDOException $e) { 
    echo $e->getMessage(); 
} 
?> 
<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    <script src="js/jquery.js"></script> 
    <script src="js/jeditable.js"></script> 
    <script> 
    $(document).ready(function() { 
     $(".editable_conference").editable('update_conference.php', { 
      data  : '<?php echo json_encode($result_conference); ?>', 
      type  : 'select', 
      indicator : 'Saving...', 
      submit  : "OK", 
      tooltip  : "Click to Update" 
     }); 
    }); 
    </script> 
    <title></title> 
</head> 
<body> 
<h1 align="center">Update Teams Below</h1> 
<?php //echo '<pre>' . print_r($result_conference) . '</pre>'; ?> 
<table align="center" width="90%" border="1" cellpadding="5" cellspacing="0"> 
<tr bgcolor="#CCCCCC"> 
    <td>TEAM</td> 
    <td>MASCOT</td> 
    <td>STATE</td> 
    <td>CONFERENCE</td> 
    <td>DISTRICT</td> 
    <td>CLASS</td> 
</tr> 
<?php foreach ($result as $value) { ?> 
    <tr> 
     <td><?php echo $value['team_name']; ?></td> 
     <td class="editable_mascot" id="<?php echo $value['team_id']; ?>"><?php echo $value['team_conference']; ?></td> 
     <td class="editable_state" id="<?php echo $value['team_id']; ?>"><?php echo $value['team_mascot']; ?></td> 
     <td class="editable_conference" id="<?php echo $value['team_id']; ?>"><?php echo $value['team_state']; ?></td> 
     <td class="editable_district" id="<?php echo $value['team_id']; ?>"><?php echo $value['team_district']; ?></td> 
     <td class="editable_classification" id="<?php echo $value['team_id']; ?>"><?php echo $value['team_classification']; ?></td> 
    </tr> 
<?php } ?> 
</table> 
</body> 
</html> 
+0

你用Google搜索的答案,並看了一些樣品的網站? – ShaunOReilly

回答

1

你sh應該瞭解jeditable的現象。您正在使用<?php echo json_encode($result_conference); ?>,此變量是多維數組。你可以使它成爲一個維度,並傳遞可以正常工作的數據。

$result_conference = $query_conference->fetchAll(PDO::FETCH_ASSOC); 
$conf = array(); 
foreach($result_conference as $val){ 
    $conf[$val['conference_id']] = $val['conference_name']; 
} 

使用$conf變量來代替$result_conference

+0

非常感謝您的幫助!我很感激。 – WebDev84