0
我正在開發一個工作項目,並且遇到了一些問題。 我正在創建基於PDO查詢和ajax的動態元素,並且我已經搜索並搜索來解決我的特定問題。基本上,我有兩個從數據庫響應中動態添加的選擇框,不管選擇哪個選項,所有動態創建的按鈕都完全相同。使用ODBC PDO和Ajax問題
我也爲每個機架/托盤創建了計時器,同樣的問題也出現在計時器上。只有一個創紀錄的機架^ h盤8 Rack H Tray 8
我db_connect.php
$first = "odbc:TIMERODBC";
$user = "exampleuser";
$pass = "examplepass";
$pdo = new PDO($first,$user,$pass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
下面是我查詢數據庫
public function selectOven()
{
try{
$stmt = $this->conn->query("SELECT sub.equipName FROM STR_EquipSubCategory sub LEFT JOIN STR_EquipCategory category ON category.categoryID = sub.categoryID GROUP BY sub.equipName");
$data = $stmt->fetchAll();
foreach($data as $row)
{
echo "<option value=" . $row['equipName'] . "><strong>" . $row["equipName"] . "</strong></option>";
}
}
catch(PDOException $e) {
return $e->getMessage();
}
}
public function selectRack($oven) {
try{
$sth = $this->conn->prepare('SELECT storageBayName FROM STR_EquipSubCategory WHERE equipName =:oven');
$sth->bindParam(':oven',$oven,PDO::PARAM_STR);
$sth->execute();
$data = $sth->fetchAll();
echo "<select id='rack' class='custom-select mb-2'>Rack";
echo "<option value ='Select Rack'></option>";
foreach($data as $row)
{
echo "<option id=".$row['storageBayName']." value=". $row["storageBayName"] . ">". $row["storageBayName"] . "</option>";
}
echo "<select>";
}
catch(PDOException $e) {
return $e->getMessage();
}
}
public function selectRackTray($oven,$rack) {
try{
$sth = $this->conn->prepare("EXECUTE STR_GetTimerOpenTraysSp ?, ?");
$sth->bindParam(1,$oven,PDO::PARAM_STR);
$sth->bindParam(2,$rack,PDO::PARAM_STR);
$sth->execute();
$data = $sth->fetchAll();
foreach($data as $row)
{
if(($row['material'] != 0)) {
echo "<div class='row'>";
echo "<button type='button' id='tray".$row['storageBayName']." ". $row['sublevelID'] ."' class='btn btn-danger' data-toggle='popover'>Tray " .$row['sublevelID'] . "</button>";
echo "</div>";
}
else {
echo "<div class='row'>";
echo "<button type='button' id='emptyTray".$row['storageBayName']. " ".$row['sublevelID'] ."' class='btn btn-success'>Tray " .$row['sublevelID'] . "</button>";
echo "</div>";
}
}
}
catch(PDOException $e) {
return $e->getMessage();
}
}
現在我的我的class.db.php文件阿賈克斯jQuery的&阿賈克斯
$(document).ready(function(){
$("select#oven").change(function(){
var selectedOven = $("#oven option:selected").val();
$.ajax({
type: "POST",
url: "process-request.php",
data: { oven : selectedOven }
}).done(function(data){
$("#rackResponse").html(data);
});
});
});
$(document).on('change', "select#rack", function() {
var selectedRack = ($(this).val());
var selectedOven = ($("#oven option:selected").text());
$.ajax({
type: "POST",
url: "process-a-request.php",
data:
{
rack: selectedRack,
oven: selectedOven
},
}).done(function(data){
$("#tResponse").html(data);
});
});
如果有人能幫助我,我會格雷亞很欣賞它。請注意,我對PHP沒有超級經驗,但其他一切似乎都正常工作。
你的問題是什麼? –
*«...無論選擇哪個選項,所有動態創建的按鈕都完全相同。»*我想這是問題。 –
我需要停止按照Rack_H創建其他機架的按鈕。基本上,當爲機架H輸入信息時,機架G和機架F中的其他機架與機架H相同,當G和F都爲空時。如果您查看上面張貼的計時器圖片,應顯示計時器的唯一紙盒是Rack H紙盒8,但Rack G和F的紙盒8顯示計時器時應該顯示爲空。 –