【发布时间】:2015-05-13 23:43:29
【问题描述】:
我在从我的数据库中提取的表中有一个产品列表。 每个产品都有一个带有 ALIQUOTA(= VAT,Tax)的字段。 我希望能够修改分配给单个产品的等分值。
我在实际 aliquote 旁边做了一个下拉菜单,其中包含我数据库的 aliquote 表中的所有允许值。 (该值为 0.00、4.00、10.00、20.00)。 选择后,该值将插入到 ID 为“aliquota_XXX”(其中 XXX 是与产品对应的 ID)的只读输入文本字段中。 然后我想保存该值,按下按钮 CONFIRM VAT 激活功能 save_modify(此功能已存在于项目中)。 这是代码:
<select class="piccolo elemento_modulo_obbligatorio" id="aliquota_dropdown_<?php echo $row['rid']; ?>" name="aliquota_dropdown">
<?php
$aliquote = "SELECT aliquota,id AS aid FROM aliquote ORDER BY aliquota ASC";
$result_aliquote = mysql_query($aliquote) or die("Invalid query: " . mysql_error());
while ($row_aliquote = mysql_fetch_array($result_aliquote)) {
echo '<option onclick=\'';
?>
$("#aliquota<?php echo $row['rid']; ?>").val("<?php echo $row_aliquote['aliquota']; ?>");
<?php
echo ';\' value="' . $row_aliquote['aid'] . '">' . $row_aliquote['aliquota'] . '</option>';
}
?>
</select>
<input autocomplete="off" type="text" class="class12" id="aliquota<?php echo $row['rid']; ?>" name="aliquota" readonly="readonly" value="" />
<input type="button" onclick="save_modify("aliquota",document.getElementById('aliquota_<?php echo $row['rid']; ?>').value,<?php echo number_format($row['aliquota'],2,".",","); ?>);" value="CONFIRM VAT" />
save_modify的功能是:
function save_modify(cosa, valore_nuovo, valore_vecchio) {
$.ajax({
type: "GET",
url: "ajax_salva_modifica_valore.php",
data: "id_documento=" + <? php echo $_GET['id_documento']; ?> +"&cosa=" + cosa + "&id=" + id + "&valore_nuovo=" + valore_nuovo + "&valore_vecchio=" + valore_vecchio,
cache: false,
success: function(data) {
$("#sezione_messaggi").html("Succesfully modified!");
},
beforeSend: function() {
$("#sezione_loading").html("<img src='../images/ajax-loader.gif' />");
},
complete: function() {
$("#sezione_loading").html("");
post_modifica(id);
carica_righe();
}
});
}
而 ajax_salva_modifica_valore.php 中感兴趣的部分是:
<?php
session_start();
$cosa = $_GET['cosa'];
$array_id = split("_",$id);
$id_riga = $array_id[1];
$valore_nuovo = $_GET['valore_nuovo'];
$valore_vecchio = $_GET['valore_vecchio'];
if($cosa == "aliquota") {
$modifica = "UPDATE righe_documenti
SET aliquota = '" . $valore_nuovo . "'
WHERE id = " . $id_riga;
$result = mysql_query($modifica) or die("Invalid query: " . mysql_error());
}
?>
我不知道问题出在哪里,因为传递给函数的参数是正确的,但是修改它没有应用......
有人可以帮我解决它或尝试其他解决方案吗?
save_modify 和 ajax_salva_modifica_valore.php 不是我制作的,所以我认为它们是正确的(它们适用于编辑其他产品信息... )
谢谢!
【问题讨论】: